ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

06.07.2011, 12:13
|
|
Guest
Сообщений: n/a
Провел на форуме: 1852
Репутация:
0
|
|
Дано: веб-морда для логина https://www.eveonline.com/login.asp
список вида логин:пасс
Нужно: программа, умеющая работать с таким видом брутфорса через прокси.
Насколько я понял, WBF не имеет функции перебора по такому списку, а иных возможных вариантов не знаю.
P.S. Также есть альтернативная веб-морда https://gate.eveonline.com/LogOn но её стоит использовать только в качестве резервной т.к. она, по всей видимости, более медленная.
|
|
|
|

06.07.2011, 16:44
|
|
Участник форума
Регистрация: 07.03.2008
Сообщений: 141
Провел на форуме: 405538
Репутация:
23
|
|
PHPLIVE 3.2.2
Есть доступ к админке, но сделана она параноиком, фильтруется там все, что можно.
Есть два интересных момента.
Первый:
PHP код:
PHP: [COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]if ([/COLOR][COLOR="#0000BB"]$action[/COLOR][COLOR="#007700"]==[/COLOR][COLOR="#DD0000"]"upload_logo"[/COLOR][COLOR="#007700"])
{
[/COLOR][COLOR="#0000BB"]$pic_name[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'pic'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'name'[/COLOR][COLOR="#007700"]] ;
[/COLOR][COLOR="#0000BB"]$now[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]time[/COLOR][COLOR="#007700"]() ;
[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]eregi_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]" "[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]"_"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$pic_name[/COLOR][COLOR="#007700"]) ;
[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]eregi_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"%20"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]"_"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#007700"]) ;
[/COLOR][COLOR="#0000BB"]$filesize[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'pic'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'size'[/COLOR][COLOR="#007700"]] ;
[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'pic'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'type'[/COLOR][COLOR="#007700"]] ;
if ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"gif"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )
[/COLOR][COLOR="#0000BB"]$extension[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"GIF"[/COLOR][COLOR="#007700"];
elseif ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"jpeg"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )
[/COLOR][COLOR="#0000BB"]$extension[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"JPEG"[/COLOR][COLOR="#007700"];
[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_POST[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'logo_name'[/COLOR][COLOR="#007700"]].[/COLOR][COLOR="#DD0000"]"_[/COLOR][COLOR="#0000BB"]$now[/COLOR][COLOR="#DD0000"].[/COLOR][COLOR="#0000BB"]$extension[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"];
if ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"gif"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) ||[/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"jpeg"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )
{
if([/COLOR][COLOR="#0000BB"]move_uploaded_file[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'pic'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'tmp_name'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]"../web/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]/[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"]) )
{
[/COLOR][COLOR="#0000BB"]chmod[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"../web/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]/[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]0777[/COLOR][COLOR="#007700"]) ;
if ([/COLOR][COLOR="#0000BB"]$_POST[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'logo_name'[/COLOR][COLOR="#007700"]] ==[/COLOR][COLOR="#DD0000"]"LOGO"[/COLOR][COLOR="#007700"])
{
if ([/COLOR][COLOR="#0000BB"]file_exists[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"../web/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]/[/COLOR][COLOR="#0000BB"]$LOGO[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"]) &&[/COLOR][COLOR="#0000BB"]$LOGO[/COLOR][COLOR="#007700"])
[/COLOR][COLOR="#0000BB"]unlink[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"../web/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]/[/COLOR][COLOR="#0000BB"]$LOGO[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"]) ;
[/COLOR][COLOR="#0000BB"]$LOGO[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#007700"];
}
[/COLOR][/COLOR]
Не вижу вариантов обхода фильтра...
Второй ($COMPANY_NAME задается пользователем):
PHP код:
PHP: [COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]function[/COLOR][COLOR="#0000BB"]Util_Format_CleanVariable[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$string[/COLOR][COLOR="#007700"])
{
[/COLOR][COLOR="#FF8000"]// take out common malicious characters that are
// typically NOT used on standard inputs
[/COLOR][COLOR="#0000BB"]$string[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]preg_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"/[$#;?]|(eval\()|(eval +\()|(char\()|(char +\()|(exec\()|(exec +\()/i"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]""[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]trim[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]rtrim[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$string[/COLOR][COLOR="#007700"]) ) ) ;
return[/COLOR][COLOR="#0000BB"]$string[/COLOR][COLOR="#007700"];
}
[/COLOR][COLOR="#0000BB"]$COMPANY_NAME[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]addslashes[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]Util_Format_CleanVariable[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$COMPANY_NAME[/COLOR][COLOR="#007700"]) ) ;
[/COLOR][COLOR="#0000BB"]$conf_string[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"0LEFT_ARROW0?php
\$LOGO = '[/COLOR][COLOR="#0000BB"]$LOGO[/COLOR][COLOR="#DD0000"]' ;
\$COMPANY_NAME = '[/COLOR][COLOR="#0000BB"]$COMPANY_NAME[/COLOR][COLOR="#DD0000"]' ;
\$SUPPORT_LOGO_ONLINE = '[/COLOR][COLOR="#0000BB"]$SUPPORT_LOGO_ONLINE[/COLOR][COLOR="#DD0000"]' ;
\$SUPPORT_LOGO_OFFLINE = '[/COLOR][COLOR="#0000BB"]$SUPPORT_LOGO_OFFLINE[/COLOR][COLOR="#DD0000"]' ;
\$SUPPORT_LOGO_AWAY = '[/COLOR][COLOR="#0000BB"]$SUPPORT_LOGO_AWAY[/COLOR][COLOR="#DD0000"]' ;
\$VISITOR_FOOTPRINT = '[/COLOR][COLOR="#0000BB"]$VISITOR_FOOTPRINT[/COLOR][COLOR="#DD0000"]' ;
\$THEME = '[/COLOR][COLOR="#0000BB"]$THEME[/COLOR][COLOR="#DD0000"]' ;
\$POLL_TIME = '[/COLOR][COLOR="#0000BB"]$POLL_TIME[/COLOR][COLOR="#DD0000"]' ;
\$INITIATE = '[/COLOR][COLOR="#0000BB"]$INITIATE[/COLOR][COLOR="#DD0000"]' ;
\$INITIATE_IMAGE = '[/COLOR][COLOR="#0000BB"]$INITIATE_IMAGE[/COLOR][COLOR="#DD0000"]' ;
\$IPNOTRACK = '[/COLOR][COLOR="#0000BB"]$IPNOTRACK[/COLOR][COLOR="#DD0000"]' ;
\$LANG_PACK = '[/COLOR][COLOR="#0000BB"]$LANG_PACK[/COLOR][COLOR="#DD0000"]' ;?0RIGHT_ARROW0"[/COLOR][COLOR="#007700"];
[/COLOR][COLOR="#0000BB"]$conf_string[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]preg_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"/0LEFT_ARROW0/"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]""[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$conf_string[/COLOR][COLOR="#007700"]) ;
[/COLOR][COLOR="#0000BB"]$fp[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]fopen[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"../web/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]-conf-init.php"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]"wb+"[/COLOR][COLOR="#007700"]) ;
[/COLOR][COLOR="#0000BB"]fwrite[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$fp[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$conf_string[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]strlen[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$conf_string[/COLOR][COLOR="#007700"]) ) ;
[/COLOR][COLOR="#0000BB"]fclose[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$fp[/COLOR][COLOR="#007700"]) ;
[/COLOR][/COLOR]
eval просто заменяется на альтернативу, а вот что делать с экранированием кавычек, ";" и т.д.? Безнадежный случай?
|
|
|

06.07.2011, 16:56
|
|
Новичок
Регистрация: 02.10.2009
Сообщений: 2
Провел на форуме: 179263
Репутация:
0
|
|
Есть такая уязвимость в админке:
http://100kotlov.ru/admin/?alert(/ololo/)
После http://100kotlov.ru/admin/? любой html код или javascript.
Можно ли залить как-нибудь шелл?
Где можно найти такой скрипт?Хочу посмотреть на него изнутри.
|
|
|

06.07.2011, 17:02
|
|
Новичок
Регистрация: 15.05.2010
Сообщений: 0
Провел на форуме: 2268
Репутация:
0
|
|
Сообщение от xxddz
xxddz said:
Есть такая уязвимость в админке:
http://100kotlov.ru/admin/?alert(/ololo/)
После http://100kotlov.ru/admin/? любой html код или javascript.
Можно ли залить как-нибудь шелл?
Где можно найти такой скрипт?Хочу посмотреть на него изнутри.
Если уже есть доступ в админку, то никак. Если нету, то можно его получить(XXS). "Эта вставка HTML, через неё шелл не зальёш.
|
|
|

06.07.2011, 17:09
|
|
Новичок
Регистрация: 15.05.2010
Сообщений: 0
Провел на форуме: 2268
Репутация:
0
|
|
Сообщение от Nek1t
Nek1t said:
PHPLIVE 3.2.2
Есть доступ к админке, но сделана она параноиком, фильтруется там все, что можно.
Есть два интересных момента.
Первый:
PHP код:
PHP: [COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]if ([/COLOR][COLOR="#0000BB"]$action[/COLOR][COLOR="#007700"]==[/COLOR][COLOR="#DD0000"]"upload_logo"[/COLOR][COLOR="#007700"])
{
[/COLOR][COLOR="#0000BB"]$pic_name[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'pic'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'name'[/COLOR][COLOR="#007700"]] ;
[/COLOR][COLOR="#0000BB"]$now[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]time[/COLOR][COLOR="#007700"]() ;
[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]eregi_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]" "[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]"_"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$pic_name[/COLOR][COLOR="#007700"]) ;
[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]eregi_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"%20"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]"_"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#007700"]) ;
[/COLOR][COLOR="#0000BB"]$filesize[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'pic'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'size'[/COLOR][COLOR="#007700"]] ;
[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'pic'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'type'[/COLOR][COLOR="#007700"]] ;
if ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"gif"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )
[/COLOR][COLOR="#0000BB"]$extension[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"GIF"[/COLOR][COLOR="#007700"];
elseif ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"jpeg"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )
[/COLOR][COLOR="#0000BB"]$extension[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"JPEG"[/COLOR][COLOR="#007700"];
[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$_POST[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'logo_name'[/COLOR][COLOR="#007700"]].[/COLOR][COLOR="#DD0000"]"_[/COLOR][COLOR="#0000BB"]$now[/COLOR][COLOR="#DD0000"].[/COLOR][COLOR="#0000BB"]$extension[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"];
if ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"gif"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) ||[/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"jpeg"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )
{
if([/COLOR][COLOR="#0000BB"]move_uploaded_file[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'pic'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'tmp_name'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]"../web/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]/[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"]) )
{
[/COLOR][COLOR="#0000BB"]chmod[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"../web/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]/[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]0777[/COLOR][COLOR="#007700"]) ;
if ([/COLOR][COLOR="#0000BB"]$_POST[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'logo_name'[/COLOR][COLOR="#007700"]] ==[/COLOR][COLOR="#DD0000"]"LOGO"[/COLOR][COLOR="#007700"])
{
if ([/COLOR][COLOR="#0000BB"]file_exists[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"../web/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]/[/COLOR][COLOR="#0000BB"]$LOGO[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"]) &&[/COLOR][COLOR="#0000BB"]$LOGO[/COLOR][COLOR="#007700"])
[/COLOR][COLOR="#0000BB"]unlink[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"../web/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]/[/COLOR][COLOR="#0000BB"]$LOGO[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"]) ;
[/COLOR][COLOR="#0000BB"]$LOGO[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#007700"];
}
[/COLOR][/COLOR]
Не вижу вариантов обхода фильтра...
В переменную $_FILES['pic']['type'] подставляем слово JPEG (MIME-Тип(Tamper Data)).
В переменную $_POST['logo_name'] пишем название шелла(shell.php) Заполняя конец NUL-байтом.
Ну и если в папке разрешено выполнение PHP скироптов(php3, php4, php5, php, phtml...), в теории мы должны получить шелл.
Во втором случае, если бы параметр не обрамлялся одинарными кавычками, возможно было бы использовать обратные кавычки.
|
|
|

06.07.2011, 17:59
|
|
Участник форума
Регистрация: 07.03.2008
Сообщений: 141
Провел на форуме: 405538
Репутация:
23
|
|
NULL-байт, к сожалению, экранируется.
|
|
|

06.07.2011, 18:05
|
|
Постоянный
Регистрация: 13.12.2008
Сообщений: 354
Провел на форуме: 1747641
Репутация:
175
|
|
Сообщение от XAMEHA
XAMEHA said:
В переменную $_FILES['pic']['type'] подставляем слово JPEG (MIME-Тип(Tamper Data)).
В переменную $_POST['logo_name'] пишем название шелла(shell.php) Заполняя конец NUL-байтом.
Этот вариант с null байтом срабатывает довольно редко.
Но все это натолкнуло меня на одну мысль, если я не прав, тогда исправьте.
Вот здесь делаеться замечательная проверка:
PHP код:
PHP: [COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]if ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"gif"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )
[/COLOR][COLOR="#0000BB"]$extension[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"GIF"[/COLOR][COLOR="#007700"];
elseif ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"jpeg"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )
[/COLOR][COLOR="#0000BB"]$extension[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"JPEG"[/COLOR][COLOR="#007700"];[/COLOR][/COLOR]
Но что если ниодно из условий не выполниться? - $extension не перезапишется. Мы можем сделать так, что бы в переменной $_FILES['pic']['type'] не оказалось подстрок gif и jpeg и с помощью GET параметров указать значение $extension вот так:
Сообщение от None
http://site.ru/.../script.php?
extension=php
Мы снова должны получить шелл.
Зависимость: register_globals=on
|
|
|

06.07.2011, 20:35
|
|
Познающий
Регистрация: 06.03.2007
Сообщений: 59
Провел на форуме: 371875
Репутация:
137
|
|
есть запрос на заливку такого типа:
+%75nion+%73elect+1,2,0x3c3f20706870696e666f28293b 203f3e,4,5,6,7+%69nto+%6futfile+'/tmp/1.txt'+--+
там где /tmp/1.txt фильтруется, что сдесь можно придумать?
кавычки не фильтруются и не экранируются, load_file() так же работает нормально.
|
|
|

06.07.2011, 21:04
|
|
Познавший АНТИЧАТ
Регистрация: 15.01.2008
Сообщений: 1,166
Провел на форуме: 2459557
Репутация:
606
|
|
Сообщение от Chrome~
Chrome~ said:
Этот вариант с null байтом срабатывает довольно редко.
Но все это натолкнуло меня на одну мысль, если я не прав, тогда исправьте.
Вот здесь делаеться замечательная проверка:
PHP код:
PHP: [COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]if ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"gif"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )
[/COLOR][COLOR="#0000BB"]$extension[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"GIF"[/COLOR][COLOR="#007700"];
elseif ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"jpeg"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )
[/COLOR][COLOR="#0000BB"]$extension[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"JPEG"[/COLOR][COLOR="#007700"];[/COLOR][/COLOR]
Но что если ниодно из условий не выполниться? -
$extension
не перезапишется. Мы можем сделать так, что бы в переменной
$_FILES['pic']['type']
не оказалось подстрок
gif
и
jpeg
и с помощью GET параметров указать значение
$extension
вот так:
Мы снова должны получить шелл.
Зависимость:
register_globals=on
Проверка происходит здесь
PHP код:
PHP: [COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]if ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"gif"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) ||[/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"jpeg"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )
{
if([/COLOR][COLOR="#0000BB"]move_uploaded_file[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'pic'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'tmp_name'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]"../web/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]/[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"]) )
{[/COLOR][/COLOR]
|
|
|

06.07.2011, 21:45
|
|
Постоянный
Регистрация: 13.12.2008
Сообщений: 354
Провел на форуме: 1747641
Репутация:
175
|
|
Сообщение от попугай
попугай said:
Проверка происходит здесь
PHP код:
PHP: [COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]if ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"gif"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) ||[/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"jpeg"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )
{
if([/COLOR][COLOR="#0000BB"]move_uploaded_file[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'pic'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'tmp_name'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]"../web/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]/[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"]) )
{[/COLOR][/COLOR]
Да, правильно, не досмотрел. Я позже нашел исходный код этого скрипта. Даже если бы не было проверки, все равно вариант не сработал бы, так как в полной версии увидел, что происходит инициализация переменных.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|