Как отфильтровать $_REQUEST от SQL-инъекций и XSS? [дубликат]Php

Кемеровские программисты php общаются здесь
Anonymous
Как отфильтровать $_REQUEST от SQL-инъекций и XSS? [дубликат]

Сообщение Anonymous »

Я пытаюсь защитить свой сервис от SQL-инъекций и XSS, и мне интересно, возможно ли это повсеместно. Я использую PDO с sqlsrv. Сервис довольно большой - поэтому я бы предпочел универсальное решение (у меня уже есть WAF).
Мой план - перебрать весь/большую часть $_REQUEST и просто удалить символы, необходимые для атаки. Я бы вставил этот код в init/config, который загружается на каждую веб-страницу (или на те, которые имеют форму)
ПОЖАЛУЙСТА, имейте в виду, что это псевдокод, который никак не тестировался.

Код: Выделить всё

foreach($_REQUEST as $key=> $row){

//sql injection
$_REQUEST[$key] = str_replace('*, =, select, from, where', '', $row);//remove *, =, and sql commands... others?
//xss
$_REQUEST[$key] = htmlspecialchars($row);

}
Я понимаю, что это создаст большую нагрузку на сервер (может быть, просто зациклится на сайтах входа?).
Какие символы мне следует удалить?
Еще одним недостатком является то, что мне придется заставлять некоторых пользователей обновлять свои пароли.
Как вы думаете, это хорошая идея? Как лучше всего это сделать? Могу ли я спросить работоспособный код?

Вернуться в «Php»