Просьба оставить комментарий





Если вам понравился или не понравился топик. Я что то забыл или не дописал, то вы можете оставить свой комментарий и я постараюсь исправить это в ближайшее время.

пятница, 9 марта 2012 г.

Маленькая таблеточка от SQL injection

Немного порывшись в интернете наткнулся на небольшое решение для защиты от sql injection. От злобных кулхацкеров он врядли спасет, но по крайней мере часть школоты можно отвадить от вашего сайта. Решение следующее. В самом верху вашего файла index.php или другого основного файла движка, можно даже до подключения всех конфигов и файлов с функциями вставить следующий код.

$get_ar = array_values($_GET);
$c_a_g = count($get_ar);
for ($i = 0;$i < $c_a_g;$i++){
if(eregi('union(.*)select',$get_ar[$i])){ header("Location: http://xakep.ru"); exit; }
if(eregi('order(.*)by',$get_ar[$i])){ header("Location: http://xakep.ru"); exit; }
}
$post_ar = array_values($_POST);
$c_a_p = count($post_ar);
for ($i = 0;$i < $c_a_p;$i++){
if(eregi('union(.*)select',$post_ar[$i])){ header("Location: http://xakep.ru"); exit; }
if(eregi('order(.*)by',$post_ar[$i])){ header("Location: http://xakep.ru"); exit; }
}

Данный способо будет обрабатывать все post и get переменные которые передаются скрипту и при попытке выполнить команду например union select будет происходить редирект на сайт журнала Хакер, либо можно его поменять на свой сайт и это будет аналогично переходу на вашу главную страницу.

Комментариев нет:

Отправить комментарий