Словацкая тетя Ася: Взлом локализованного партнера ICQМаг (icq 884888) Помнишь прошлогодний взлом украинского локализованного партнера Icq.Com – Bigmir.Net? Теперь настала очередь словацкого аналогичного портала – Zoznam.Sk! История повторяется! Поиски партнераКак-то раз мне пришла идея проверить всех локализованных партнеров тети Аси на наличие распространенных паблик движков. Поиски увенчались успехом на словацком портале Zoznam.Sk, а, если точнее, – по адресу blog.zoznam.sk. Радости не было предела, когда, открыв html-исходник страницы, я увидел чарующую надпись: <meta name="generator" content="WordPress wordpress-mu-1.2.5" /> Хотя паблик эксплойтов под эту мультипользовательскую версию вордпресса на тот момент не существовало (Wordpress MU < 1.3.2 active_plugins option Code Execution Exploit, находящийся по адресу milw0rm.com/exploits/5066, появился гораздо позже), у меня уже были кое-какие догадки по поводу возможности включения произвольных плагинов в MU-версию вордпресса. В прошлогодних номерах ][ я, кстати, описывал похожий способ – если что, поднимай подшивку. Протроянивание MUПройдя по адресу http://blog.zoznam.sk/wp-signup.php, я заполнил необходимые поля и создал блог с новым именем http://hijacked.blog.zoznam.sk. Теперь требовалось наваять простенький html-эксплойт для включения шелла в активные плагины. Для этого я зашел на страничку http://hijacked.blog.zoznam.sk/wp-admin/options-general.php, сохранил ее к себе на винт и открыл в текстовом редакторе. Изменить нужно было следующие поля: <form method="post" action="options.php"> на <form method="post" action="http://hijacked.blog.zoznam.sk/wp-admin/options.php"> Открыв страничку у себя в браузере, я прописал значения в полях ввода: ../blogs.dir/680/files/2008/01/mywebshell.jpg в active_plugins Цифра «1» в поле с версией базы данных нужна для правильного включения плагинов. Старые версии вордпресса хранят адреса включенных плагинов в БД в виде списка, а новые – в виде сериализованного массива. При изменении версии БД на более старую вордпресс автоматически перебрасывает на страницу upgrade.php, где текстовые списки плагинов конвертируются в сериализованный массив. На сервере ЗознамаПосле отсылки нужных данных из моей ядовитой формы, а также апгрейда блога, – я увидел свой новоиспеченный шелл по адресу http://hijacked.blog.zoznam.sk/index.php?loleg. И почему-то мне не показался необычным тот факт, что все директории и файлы на сервере словацкого партнера аси оказались открыты на запись :). Вариантов, что делать дальше, было много. Можно слить себе всю базу данных асек зознама (но я знал, что ценных шестизнаков там нет), а можно, по аналогии с бигмиром, написать реггер асек – и просто сидеть «рыбачить» красивые номера. Выбрав второй вариант и опираясь на скрипты для доступа к ICQ IPS API, сохранившиеся с бигмира, я и принялся за реггер асек. Реггер, реггерЯ решил изучить возможные нововведения в интерфейсе IPS и составил простенький php-скрипт: <? Самое интересное, что я вынес из ответа сервера, было обязательное указание IP-адреса при регистрации нового UIN. Но вся соль в том, что ip-адрес при отправке пакета реги можно было указать любой (хоть 127.0.0.1, хоть 1.1.1.1). Для проверки я написал простейший веб-реггер, который отправлял в цикле на сервер аси следующий пакет данных SOAP: <?xml version="1.0" encoding="UTF-8" standalone="no" ?> Но на этом, конечно, нельзя было останавливаться. Как и в случае с бигмиром, один добрый человек написал многопоточный GUI-реггер на Делфях. Я оставил к нему свой гейт на сервере зознама (его ты также сможешь увидеть на скриншоте). Добавлю лишь, что скорость регистрации новых 9-знаков составляла 12 pps. В итоге мы нарегали около полумиллиона свежих асечных UIN’ов, среди которых частенько попадались слоники и XY-номера. Пароль не нуженЯ решил не останавливаться на одной только регистрации номеров и еще немного исследовать асечные SOAP-интерфейсы. Пробежавшись взглядом по IPS, я вспомнил, что локализованным партнерам можно менять пароли на номерах, привязанных к ним, зная только мыло и UIN, без знания своего пароля (так как доступа к основной базе данных Зознама у меня все равно не было, это могло оказаться очень полезным). SOAP-запись, отвечавшая за эту нехитрую операцию, выглядела вот так: <complexType name="ChangePassObject"> Взяв за основу тот факт, что <element name="password" type="xsd:string" /> является необязательным элементом при составлении запроса на смену пароля к привязанному номеру, я в очередной раз задействовал все свои кодерские способности. И написал новый скрипт, который отправлял пакет на смену пароля к номеру и имел следующие поля: <form method="POST" action="?"> Оставалось найти несколько нумов, привязанных к зознаму. Что я успешно и сделал, заюзав поиск на форуме асечного портала asechka.ru. Подопытными номерами стали: 100796;dimka4u@zoznam.sk Это были единственные 6-знаки, хранившиеся в базе данных zoznam.sk. Применив к ним свой нехитрый скрипт, я убедился, что старый пароль действительно не нужно указывать. Пароли успешно сменились. Но так как я очень добрый человек, я решил отдать все номера обратно их владельцам. Удачного общения в асеИ вновь адским образом взломан очередной локализованный партнер тети Аси! Как и прежде – благодаря моему любимому вордпрессу. Было зарегано много новых 9-знаков для спама и прочих целей. Удалось пошатнуть авторитет не только крупнейшего интернет-портала, но и самой Icq.сom, которая при регистрации новых номеров до сих пор немного подтормаживает. Ни одна из упомянутых в статье уязвимостей не закрыта до сих пор (правда, блоги на зознаме я обезопасил от последующих взломов описанным способом). WWW
DVDНа нашем диске мы выложили 100k зарегистрированных на зознаме номеров с паролями в придачу. Перед тем, как ты их будешь использовать в каких-либо целях, спешу напомнить, что спам незаконен! DANGERИнформация предоставляется исключительно к ознакомлению и размышлению. Никакая часть этой статьи не может быть использована во вред. В обратном случае ни автор, ни редакция не несут ответственности за возможный ущерб, причиненный материалами данной статьи. |