Показать сообщение отдельно

  #21585  
Старый 07.11.2012, 22:18
Ravenous
Участник форума
Регистрация: 14.07.2012
Сообщений: 115
Провел на форуме:
44130

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

Цитата:
Сообщение от intertrey  
Отснифал havij, к примеру такие запросы посылает
http://site/ambassadors/event.php?id=939
http://site/ambassadors/event.php?id=999999.9
http://site/ambassadors/event.php?id=939 and 1=1
http://site/ambassadors/event.php?id=939 and 1>1
http://site/ambassadors/event.php?id=939 and 1=1
http://site/ambassadors/event.php?id=939'
http://site/ambassadors/event.php?id=/*!30000 939*/
http://site/ambassadors/event.php?id=/*!40100 939*/
http://site/ambassadors/event.php?id=/*!50000 939*/
Зачем он как думаете сначала так проверяет and 1=1, патом так and 1>1 и патом снова and 1=1 какая тут логика может быть работы?
И еще интересно как такие комменты работают /*!30000 939*/ растолкуйте простым языком, результат вывода как по первой ссылке с простым 939
1) Проверяет наличие инъекции, т.к. and 1 = 1 возвращает истину, а and 1 > 1 - ложь, отсюда меняется размер или содержание страницы и т.о. проверяется наличие инъекции.

2)

Комментарии /*!int */ в котором, всё заключенное в данный комментарий будет интерпретироваться как SQL запрос если номер данной версии MySQL равен указанному числу int после восклицательного знака или больше.

Код:
SELECT pass/*!32302 ,login*/FROM users
Выведет столбец login если версия MySQL равна либо выше 3.23.02
 
Ответить с цитированием