Помимо этого, следует также уделить внимание конфигурации самого веб-сервера:
— Использовать встроенный WAF веб-сервера (например, в Apache — mod_security) в дополнение к внешнему WAF (например, Cloudflare, Fortinet, Imperva).
— Соблюдать принцип наименьших привилегий (PoLP) — запускать веб-сервер под
пользователем с минимальными правами (например, www-data).
— Запретить выполнение отдельных функций веб-сервером, если они не нужны (например,
в PHP: disable_functions = system, …)
— Ограничить область доступа веб-приложения его директорией, чтобы процесс мог
работать только в пределах приложения (например, в PHP: open_basedir =
'/var/www/html').
— Отклонять double-encoded запросы и не-ASCII символы в URL — это снижает шанс обхода фильтров и неправильной интерпретации путей.
— Избегать использования уязвимых или устаревших библиотек/модулей (например, PHP CGI) — обновляйте зависимости и удаляйте ненужные компоненты. Конечно же, стоит уделить пристальное внимание и валидации/очищению пользовательского ввода как на стороне приложения, так и на стороне пользователя. Методы и средства этого варьируются от языка к языку. Например, базовая очистка от всего, кроме цифр и точек: