Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
include $pages[$_GET['page']] . '.php';, где $pages['some_page'] == 'some_page', а не include $_GET['page'].'.php'; для php) или другой вариант «белого списка» имён файлов. Если невозможно — фильтровать ввод на спецсимволы вроде точек и слэшей или проверять, что реальные пути запрашиваемых файлов не выходят за отведенные им каталоги или другой вариант белого списка каталогов, причём сравнивать обязательно реальный путь, вычисленный уже осью, а не то, что пришло извне.
Защита для NGINX — NAXSI