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

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

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

  #1  
Старый 13.12.2011, 12:31
Pirotexnik
Guest
Сообщений: n/a
Провел на форуме:
97332

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

Здравствуйте. Поставил DVWA, тренируюсь.

На 2-х уровнях безопасности провел инъекцию, на 3-м стоит сабж.

Как я понял обойти его можно, даже нужно. Только как?

PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]'[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]mysql_error[/COLOR][COLOR="#007700"]() .[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"]);

[/COLOR][COLOR="#0000BB"]$num[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]mysql_numrows[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$result[/COLOR][COLOR="#007700"]);

[/COLOR][COLOR="#0000BB"]$i[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]0[/COLOR][COLOR="#007700"];

while ([/COLOR][COLOR="#0000BB"]$i[/COLOR][COLOR="#007700"]'
[/COLOR][COLOR="#007700"];

echo
[/COLOR][COLOR="#DD0000"]'ID: '[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]$id[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]'
First name: '
[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]$first[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]'
Surname: '
[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]$last[/COLOR][COLOR="#007700"];

echo
[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"];

[/COLOR][COLOR="#0000BB"]$i[/COLOR][COLOR="#007700"]++;

}

}

}

[/COLOR][COLOR="#0000BB"]?>[/COLOR][/COLOR] 
 
Ответить с цитированием

  #2  
Старый 13.12.2011, 16:17
Чакэ
Guest
Сообщений: n/a
Провел на форуме:
90728

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

тебя обманули.
 
Ответить с цитированием

  #3  
Старый 13.12.2011, 17:50
Pirotexnik
Guest
Сообщений: n/a
Провел на форуме:
97332

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

Таки нет. По твоему это не проходимый квест?)
 
Ответить с цитированием

  #4  
Старый 13.12.2011, 18:49
Чакэ
Guest
Сообщений: n/a
Провел на форуме:
90728

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

по-моему тебя обманули.

stripslashes($id); это шикарно
 
Ответить с цитированием

  #5  
Старый 13.12.2011, 18:59
phpdreamer
Постоянный
Регистрация: 26.07.2009
Сообщений: 321
Провел на форуме:
444589

Репутация: 123
Отправить сообщение для phpdreamer с помощью ICQ
По умолчанию

http://php.net/manual/en/function.mysql-real-escape-string.php

Цитата:
Сообщение от None  
Note:
If magic_quotes_gpc is enabled, first apply stripslashes() to the data. Using this function on data which has already been escaped will escape the data twice.
Если magic_quotes_gpc ON и сначала stripslashes, то получается 2-ой эскейп

magic_quotes_gpc - это единственная проблема у mysql-real-escape-string и она уходит в прошлое, потому что никто не включает эту опцию
 
Ответить с цитированием

  #6  
Старый 13.12.2011, 22:35
KolosJey
Новичок
Регистрация: 21.12.2009
Сообщений: 0
Провел на форуме:
15756

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

phpdreamer

Если ты считаешь что этот код уязвим, покажи реализацию плз.

Та цитата, которую ты привёл, говорит о том, что при MQ=on НАДО убирать слеши, и тут они убираются.

Но это не секурити проблема. Да, данные заэскейпяться дважды, но скуль ты не проведёшь, т.к. бекслеши тоже заэскейпятся.

Это можно было-бы проделать при mysql_escape_string которая не учитывает кодировку, но тут...

Да и это вобщем-то не всё. Даже если мы прорываем mysql_real_escape_string дальше идёт is_numeric, так что...

Вобщем у кого есть реальзация баги, было-бы интересно взглянуть, но я склоняюсь к тому, что разрабы курнули
 
Ответить с цитированием

  #7  
Старый 13.12.2011, 23:08
Pirotexnik
Guest
Сообщений: n/a
Провел на форуме:
97332

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

http://www.dvwa.co.uk/

Тренировачная площадка для хакера. 3 уровня сложности. Легкий и средний прошел, но тяжелый не выходит...
 
Ответить с цитированием

  #8  
Старый 13.12.2011, 23:33
Чакэ
Guest
Сообщений: n/a
Провел на форуме:
90728

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

Цитата:
Сообщение от None  
Тренировачная площадка для хакера.
ohlol
 
Ответить с цитированием

  #9  
Старый 18.12.2011, 21:44
alias6969
Guest
Сообщений: n/a
Провел на форуме:
5497

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

ТС, верный ответ на твой вопрос - никак.
 
Ответить с цитированием

  #10  
Старый 18.12.2011, 21:57
Konqi
Постоянный
Регистрация: 24.06.2009
Сообщений: 542
Провел на форуме:
2101094

Репутация: 672


Отправить сообщение для Konqi с помощью ICQ
По умолчанию

stripslashes и mysql_real_escape_string тут вообще никакой роли не играют, проверка входных данных осуществляется функцией is_numeric, а его ты не пройдешь никак
 
Ответить с цитированием
Ответ





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


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




ANTICHAT.XYZ