LFI на нестандартно сконфигурированном сервере

Discussion in 'Песочница' started by Mints97, 28 Mar 2014.

  1. Mints97

    Mints97 New Member

    Joined:
    22 Feb 2014
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    <deleted>
     
    #1 Mints97, 28 Mar 2014
    Last edited: 4 Jan 2022
  2. nikp

    nikp Banned

    Joined:
    19 Sep 2008
    Messages:
    328
    Likes Received:
    591
    Reputations:
    764
    А чем прочитал php.ini? При помощи lfi прочитать его нельзя.
    И что за облом с сессией, файл сессии не существует или просто пустой?
     
  3. nikp

    nikp Banned

    Joined:
    19 Sep 2008
    Messages:
    328
    Likes Received:
    591
    Reputations:
    764
    В условиях LFI, include('../../../../etc/php.ini') не прочитает ни один конфиг ни от какой версии php, можешь убедиться сам. При RFI прочитать можно.

    Посмотри уязвимый скрипт, что там на самом деле. Это, скорее всего, - простое чтение файлов.

    ===
    UPD
    Точнее не читаются конфиги, в которых оставлен дефолтный комментарий, из-за наличия в нем тегов <?php ?>.
    Инклуд выдаст ошибку на них.

    Посмотри полученный php.ini, если встречается тег "<?" - инклуда нет, просто читалка файлов.

    ===
    UPD
    В /etc/php.ini прописаны значения "Master Value", а "Local Value" может иметь другое значени.
     
    #3 nikp, 28 Mar 2014
    Last edited: 28 Mar 2014
    2 people like this.
  4. Rextor

    Rextor New Member

    Joined:
    26 Feb 2014
    Messages:
    40
    Likes Received:
    2
    Reputations:
    4
    Насчет сессий - вероятно они хранятся в памяти. Какое значение "session.save_handler" в php.ini?
     
  5. Rextor

    Rextor New Member

    Joined:
    26 Feb 2014
    Messages:
    40
    Likes Received:
    2
    Reputations:
    4
    Хм, если нет строки, тогда, если верить докам, по умолчанию должно сохранять в файлы. Странно, php явно должен иметь доступ к файлам сессии. Файлы сессии именно не найдены или же есть вероятность, что они просто-напросто пусты?

    Насчет "/usr/lib/perl5" и ко - я думаю, стоит пробить инфу о сервере, есть вероятность, что в используемой версии оси файлы расположены в другом месте. Глянь что написано в "/etc/issue".
     
    #5 Rextor, 28 Mar 2014
    Last edited: 28 Mar 2014
  6. Adio

    Adio Elder - Старейшина

    Joined:
    23 May 2005
    Messages:
    1,646
    Likes Received:
    148
    Reputations:
    18
    Пока ты хекаеш сервех хипстер хекает тебя :D
     
  7. Rextor

    Rextor New Member

    Joined:
    26 Feb 2014
    Messages:
    40
    Likes Received:
    2
    Reputations:
    4
    Попробуй "/usr/lib64/perl5" и подобное.

    Хотя, с другой стороны, я посмотрел листинг файлов для CentOS 5.8, и там нет нигде папки Locus, а единственный Logger.pm был в "/usr/lib/perl5/vendor_perl/5.8.8/Mail/SpamAssassin/". Вероятно файл называется иначе.
     
    #7 Rextor, 28 Mar 2014
    Last edited: 28 Mar 2014
  8. BillyMilliga

    BillyMilliga New Member

    Joined:
    13 Mar 2014
    Messages:
    8
    Likes Received:
    0
    Reputations:
    11
    а как же старый добрый /proc/self ?
    если пхп как цги, то вот тебе и окружение на которое ты можешь повлиять
    если как модуль апача, то возможно логи
     
  9. Rextor

    Rextor New Member

    Joined:
    26 Feb 2014
    Messages:
    40
    Likes Received:
    2
    Reputations:
    4
    А сессии точно ли работают? Если админ параноик, то у апача возможно нет прав на запись в папку сессий или баг аля https://github.com/puphpet/puphpet/issues/274
     
  10. Rextor

    Rextor New Member

    Joined:
    26 Feb 2014
    Messages:
    40
    Likes Received:
    2
    Reputations:
    4
    Вобщем, если действительно очень хочется, то наверно в самом деле придется методом тыка перебрать всю /proc и найти процесс с перлом, потому как, по всей видимости, логгер класс подключен внешне. Скорей всего, лучше это сделать скриптом, потому как процесс может иметь ооочень большой номер для ручного перебора (проверь /proc/sys/kernel/pid_max чтобы узнать крайнее значение). Базово, апач должен уметь читать файлы из /proc, если у админа не еще один бзик.
     
  11. Rextor

    Rextor New Member

    Joined:
    26 Feb 2014
    Messages:
    40
    Likes Received:
    2
    Reputations:
    4
    Да нет, перебрать 32к файлов - это не везение, сугубо вопрос времени. Если сделать скрипт, то даже с расчетом пары секунд на запрос, это 18 часов в худшем случае.

    Я с механикой LFI не знаком, потому не знаю, можно ли ей читать все файлы. Если можно, то как на это ни посмотри, но запрет на доступ в /proc - странен, ввиду того, что ты мог качать другие файлы системы (т.е. логичней было б сильней урезать права, если уж на то пошло).
     
  12. Rextor

    Rextor New Member

    Joined:
    26 Feb 2014
    Messages:
    40
    Likes Received:
    2
    Reputations:
    4
    Т.е., допустим, при попытке прочесть /proc/1/cmdline файл выдает 404?
     
  13. Rextor

    Rextor New Member

    Joined:
    26 Feb 2014
    Messages:
    40
    Likes Received:
    2
    Reputations:
    4
    Обычно видно, если просканить сервер через nmap. Или можно попробовать узнать, подключившись по telnet на frp порт.
     
Loading...
Similar Threads - нестандартно сконфигурированном сервере
  1. ilqar200
    Replies:
    4
    Views:
    2,265
  2. kirish13
    Replies:
    1
    Views:
    2,165