Использование SQL-инъекций → Проверка WEB-сервера на уязвимость с помощью SQL-запросов
Технология, называемая внедрением SQL (SQL injection), может реализовываться как в виде простого внедрения символов, вызывающих ошибки, так и в виде выполнения произвольных запросов из командной строки. Продукты практически всех поставщиков баз данных могут подвергаться взломам данного типа. Этот изъян проявляется в SQL-запросах и соответствующих программных интерфейсах, предназначенных для поддержки таких запросов: ASP, PHP, Perl, a также любой другой язык программирования для Web. И, независимо от технологии, при небольшой модификации SQL легко можно использовать для взлома любых других серверов баз данных.
При внедрении SQL-запросов чаще всего используется символ одинарной кавычки (’). Поэтому для поиска возможности взлома можно, прежде всего, попытаться использовать этот символ. В структуре SQL-запроса одинарная кавычка обычно используется для отделения переменных, передаваемых в запросе от самого запроса:
strSQL = “select userid from users where password = ’ ” + password + “ ’ ”.
Ниже в таблице приведен список других часто употребляемых символов, предназначенных для форматирования SQL-запросов. С помощью таких символов можно осуществлять проверку SQL-сервера на наличие изъянов. Проверка Web-узла с использованием этих символов позволяет найти изъяны SQL-сервера без выполнения хранимых процедур (для MS SQL Server) или сложных SQL-запросов.
|
Управляющие символы SQL |
Описание |
|
’ |
Завершает выражение |
|
— |
Однострочный комментарий. Оставшаяся часть строки игнорируется |
|
+ |
Пробел. Требуется для корректного формата выражений |
|
,@переменная |
Добавляет переменную. Помогает идентифицировать хранимые процедуры (для MS SQL Server) |
|
?Раram1=fоо&Parаm1=bar |
Присваивает переменной Param1 значения fоо и bar. Помогает идентифицировать хранимые процедуры (для MS SQL Server) |
|
@@переменная |
Обращение к внутренней переменной сервера |
|
|
Возвращает ошибку ODBC, но не может служить для вывода данных |
|
SET |
Объявление переменных. Используется для многострочных SQL-выражений |
|
% |
Символ шаблона, который заменяет любую строку, состоящую из нулевых или других символов |
Если Вам понравилась эта статья,
!
Comments
-
http://mes-blog.com.ua Eugene
-
Аноним
-
http://gadjetlist.ru Mertvec100500
-
http://seoprodvig.ru/ Aleksandr
-
http://www.icon.ru/ icon
  Наши сообщества
  Хак новости
  Меню
  Метки


