Ilohamail Remote Command Execution

Discussion in 'Уязвимости' started by Евгений Минаев, 26 Nov 2007.

  1. Евгений Минаев

    Евгений Минаев Elder - Старейшина

    Joined:
    12 Nov 2007
    Messages:
    55
    Likes Received:
    169
    Reputations:
    159
    Ilohamail это веб клиент , работающий с правами апача , отсылает и проверяет почту по протоколам imap и pop , вообщем почтовый веб интерфейс , коих много , но этот привлек меня своим кол-вом прошлых багов и легкостью в установке , благо перл и прочих замутов не требуется.Все настройки юзеров хранятся в папке data , которая доступна с веба.Предыдущие версии создавали inc файлы с информацией , такой как данные юзера , включая юзернейм и пароль.В последней нольдевять версией додумались засунуть конфигурационные данные в php файлы.

    По дефолту этот интерфейс позволяет коннектиться не только к локалхосту , но и к сторонним серверам.Регаемся на любом бесплатном почтовике , логинимся и заливаем шелл.К сожалению , от имени заливаемого файла конечное имя не зависит , поэтому придется искать инклуд.

    PHP:
    plugins/whitelist/whitelist_prefs.php
    include('../lang/'.$my_prefs["lang"].'prefs.inc');
    При наличии юзера можем просто приинклудить наш шелл , имя узнать легко - в папке data/uploads/user.server.ru/ будут все залитые файлы.Кстати,register_globals совсем не требуется,один из скриптов почтовика сформирует переменную за нас xD

    http://test1.ru/ilohamail/plugins/whitelist/whitelist_prefs.php?cmd=dir&my_prefs[lang]=../../data/uploads/minaev.list.ru/1194961197_69122.MS50eHQ=.dGV4dC9wbGFpbg==.MzA=%00
     
    1 person likes this.