ГлавнаяРегистрацияВходВ закладки

Главная » Статьи » CentOS » Безопасность
Защита БД от sql инъекций
Защита БД от sql-инъекций

Наткнулся на интересную заметку о защите от SQL инъекций с помощью Nginx. Следующая цитата первоначального текста.

Все мы знаем как не приятно, когда злоумышленник делает sql-инъкцию. Я нашел простое решение, можно избавиться от инъекции SQL, путем фильтрации в Nginx.

SQL-инъекция - вложение вредоносного кода в запрос в базу данных - наиболее опасный вид атаки. С помощью SQL-инъекции, злоумышленник не сможет получить только личную информацию из базы данных, но и, при определенных условиях, ,чтобы сделать изменения.

Все мы знаем, ,что для того ,что-бы взять хоть ,что-то из базы данных, то здесь необходимо подобрать таблицы, а для этого как оычно выполняют команду такого вида:

[-hide-]script.php?bug=-1+UNION+SELECT+1,2,3,4,5

в этом коде фигурируют команды union и select, select – одна из самых значимых команд в mysql, соответственно ,что-бы обезопасить себя нам здесь необходимо блокировать все запросы от клиента с этой командой. Делается это очень легко, в виртуальном хосте nginx`a прописываем:

if ($request_uri ~* «SELECT») {
return 401;
}

и всё, если клиент попытается подставить эту команду то в ответ он получит ошибку 401. Таким же способом можно заблокировать и остальные нежелательные команды. Удачи.[-hide-]
Просмотров: 3302
Дата: 2011-07-17 19:32:44
Комментариев: 0
Источник: