sql-инъекция, IIS/ASP плюс Oracle
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
sql-инъекция, IIS/ASP плюс Oracle - 2009-07-18 18:01:05.670000
|
|
|
D.H.
Сообщений: 8
Оценки: 0
Присоединился: 2008-08-16 08:52:28.166666
|
Итак, я – новичок и хочу сломать базу данных. На вебсервере IIS 6.0/ASP, который лезет к ORACLE через ODBC. Найден скрипт, уязвимый к ') UNION SELECT –. Но передавать сразу несколько SQL-команд через него не получается. Пароли юзеров оракла уже утянуты и большей частью расшифрованы. Некоторые наиболее интересные мне таблицы также успешно утянуты. Проблемы: 1. Пароли есть, но что с ними делать, непонятно. Хочется слить "чужие" таблицы. Запрос типа SELECT * FROM SOMEUSER.SOMETABLE не прокатывают. Авторизоваться бы… 2. Не удаётся тягать инфу из полей типа LONG и LONG RAW. Скрипт вылетает с ошибкой. to_char() не помогает. Может, есть встроенная функция, которая решает проблему? 3. Почему-то выпадают некоторые строки при запросе. Например, запросил 100 строк, вернулось 95. Хотя, на самом деле, строк там больше. Проявляется не для всех таблиц. Неужели ASP-скрипт как-то фильтрует? 4. Сейчас для скачки таблиц использую запросы типа SELECT 0, CONCAT(USERNAME, CONCAT(':', CONCAT(PASSWORD))) FROM DBA_USERS. Но, если в сумме набегает больше 2000 символов, скрипт падает. Как можно решить проблему? 5. Вместе со всеми лишними данными, таблицы получаются большие (ибо UTF-8), а сжатие deflate и gzip вебсервер похоже не поддерживает. Хорошо бы ускорить процесс. Есть идеи? 6. А, собственно, нельзя ли напрямую подключиться к ораклу и перетягать каким-нибудь спец. софтом, вместо возни с инъекциями? И как узнать IP и порт сервера, где база? Она же не обязательно на web-сервере? 7. Есть ли в оракле аналог LOAD_FILE и как им пользоваться? На запрос типа SELECT 0,LOAD_FILE('C:/BOOT.INI') ругается, что нету FROM, если дать ей FROM, то пишет invalid column name. 8. Какие известные уязвимости есть в ASP?
|
|
|
RE: sql-инъекция, IIS/ASP плюс Oracle - 2009-07-18 22:18:23.236666
|
|
|
FriLL
Сообщений: 2539
Оценки: 335
Присоединился: 2007-08-11 17:14:26.703333
|
quote:
Есть ли в оракле аналог LOAD_FILE и как им пользоваться? насколько я знаю в оракле нет функции load_file или его аналога quote:
5. Вместе со всеми лишними данными, таблицы получаются большие (ибо UTF-8), а сжатие deflate и gzip вебсервер похоже не поддерживает. Хорошо бы ускорить процесс. Есть идеи? например написать скрипт - парсер quote:
6. А, собственно, нельзя ли напрямую подключиться к ораклу и перетягать каким-нибудь спец. софтом, вместо возни с инъекциями? И как узнать IP и порт сервера, где база? Она же не обязательно на web-сервере? вопрос в том поддерживает ли база удаленные коннекты, если поддерживает то можно воспользовать каким-нибудь oracle менеджером
|
|
|
RE: sql-инъекция, IIS/ASP плюс Oracle - 2009-07-21 07:29:56.960000
|
|
|
D.H.
Сообщений: 8
Оценки: 0
Присоединился: 2008-08-16 08:52:28.166666
|
quote:
ORIGINAL: FriLL quote:
5. Вместе со всеми лишними данными, таблицы получаются большие (ибо UTF-8), а сжатие deflate и gzip вебсервер похоже не поддерживает. Хорошо бы ускорить процесс. Есть идеи? например написать скрипт - парсер. И как это сделать? Или же имеется в виду взлом IIS и внедрение своего ASP скрипта? quote:
ORIGINAL: FriLL quote:
6. А, собственно, нельзя ли напрямую подключиться к ораклу и перетягать каким-нибудь спец. софтом, вместо возни с инъекциями? И как узнать IP и порт сервера, где база? Она же не обязательно на web-сервере? вопрос в том поддерживает ли база удаленные коннекты, если поддерживает то можно воспользовать каким-нибудь oracle менеджером А в какой табличке можно посмотреть порт и адрес оракл-сервера? И еще вот всплыл один вопрос. Как я говорил, выпадают некоторые строки при запросе. Судя по всему, это не фильтрация в ASP-скрипте, это так оракл гадит – когда попадаются одинаковые строки в ответе на запрос, он дубликаты убивает. Впрочем, проблема не в этом. Более важная проблема в том, что некоторые таблицы, как оказалось, не имеют никаких индексных полей. А таблицы, как я говорил, большие и тягать их приходится частями, так как иначе конкатенация колонок даёт больше 2000 (ну или там 4000) символов и оракл ругается. Итак, нету ли случайно в оракле своего личного внутреннего индексного поля в таких таблицах, которое можно включить в запрос и потом по нему одну и ту же запись таблицы можно однозначно идентифицировать?
|
|
|
|
|