Недостаточная фильтрация входных данных в DLE
Краткая памятка о том, как проверить фильтрацию пользовательского ввода в DLE и снизить риск инъекций без изменения логики движка.
Модуль Вопрос-Ответ 2.7.1 (F.A.Q.) для DataLife Engine
Назначение модуля Вопрос-Ответ 2.7.1 для DataLife Engine, его типовые возможности, порядок проверки на локальной копии движка и ограничения известных сведений.

Где начинается проблема
Недостаточная фильтрация входных данных означает, что пользовательский ввод из форм, адресной строки или заголовков HTTP попадает в запросы к базе или в вывод без должной проверки. В DLE это чаще всего касается полей поиска, комментариев и пользовательских модулей, которые сами собирают данные. Если скрипт передаёт такие значения напрямую в SQL или в HTML без экранирования, открывается путь для инъекций и XSS.
Практические шаги проверки
Начните с перечня всех форм и обработчиков, которые принимают данные от посетителя. Для каждого поля определите, как оно используется дальше: попадает ли в запрос, в шаблон или в файл. Затем проверьте, применяется ли экранирование на этапе вывода и параметризация на этапе запроса. Если модуль сторонний, сравните его исходный код с текущей версией движка и обратите внимание на функции обработки строк.