Привет! Сегодня мы займемся необычным делом — будем искать SQL-инъекции, но не так, как ты привык — «руками» или с применением скриптов автоматизации. Мы отдадим весь процесс, от начала и до конца, на откуп машине, кроме того, в результате мы получим доступ не к одному сайту, а к десяткам. Настоящая вершина полета хакерской мысли! Тебе не потребуется даже задумываться над тем, каким образом происходит атака на тот или иной ресурс. Это ли не рай для настоящего хакера?

Предыстория «эпопеи», связанной с множественным взломом, проста. Мне срочно понадобилось собрать базу из нескольких тысяч зарубежных телефонных номеров и имен их хозяев. Скажу сразу, что цель была сугубо экспериментальной — я не кардил и не занимался смс-фродом. В поисках актуального решения я и разработал схему, которая теперь доступна твоему вниманию. Спасибо авторам, любезно выложившим свои программы в Сеть, спасибо участникам форумов, которые исследовали их основные возможности на практике, короче, спасибо всем участникам :). Я же лишь собрал информацию воедино.

Прежде чем говорить об инструментах, необходимых для использования, попробуем определить, из каких этапов состоит путь от проекта задачи до получения доступа к админке сайта. Первый этап — поиск уязвимых сайтов, второй — попытка использования найденной уязвимости для получения некоторой информации, позволяющей каким-либо образом повысить привилегии, третий — получение конкретной выгоды или удовлетворение чувства «спортивного интереса». Если говорить о первом этапе, рискну предположить, что обычно ты действовал следующим образом — выбирал определенный ресурс, который необходимо атаковать, после чего занимался бесконечным поиском, изменяя входные параметры, передаваемые тому или иному скрипту. Однако такой подход — удел хакеров, которые стремятся к получению доступа к определенному сайту.

Если же твоя цель — кража конфиденциальных данных определенного типа (к их числу могут относиться, скажем, номера кредитных карт, базы данных, содержащих адреса, телефоны, e-mail’ы или какие-либо другие «вкусности»), легче использовать путь массовой атаки. Вкратце объясню суть данного подхода. Наверное, ты знаешь, каким образом выполняется брут ICQ-номеров — составляется гигантский лист номеров, после чего выполняется попытка доступа к каждому из номеров списка с использованием очень краткого набора паролей. В нашем случае ситуация схожая, однако в роли ICQ-номеров выступают PHP-скрипты, выполняющиеся на стороне сервера (впрочем, даже необязательно PHP, мы ограничиваемся ими для простоты), а в качестве «пароля» — некоторый параметр, передаваемый скрипту с целью выявления уязвимости. Однако найти уязвимость — не значит получить доступ к сайту. Необходимо эту уязвимость правильно использовать, то есть составить запрос, который «выудит» из базы данных нужные сведения.

Разумеется, можно делать это «по старинке», вручную, но, поскольку мы решили, что будем работать с достаточно большим количеством уязвимых сайтов, воспользуемся софтом, который способен самостоятельно (или с небольшой помощью взломщика) выполнить эту работу.

 

Массовый, или «обратный» поиск уязвимостей

Объясню, почему я назвал этот метод поиска «обратным». Обычно мы имеем сайт, на котором ищем уязвимость, в рассматриваемом же нами случае у нас есть в распоряжении информация о возможной уязвимости (некий «шаблон»), при помощи которой и осуществляется поиск ресурса. Рассмотрим поподробнее процесс поиска уязвимых сайтов по «шаблону». Для осуществления нашего плана воспользуемся утилитой REILUKE! Exploit Scanner. Этот инструмент умеет (пользуясь посильной помощью поисковых систем, индексирующих все подряд) искать SQLуязвимые сайты, а также уязвимости XSS, LFI, RFI, и имеет множество дополнительных приятных довесков (вроде возможности использования прокси-сервера).
Интерфейс программы предельно прост, и разобраться в нем сможет даже новичок, однако я все же приведу последовательность действий, которую необходимо выполнить перед нажатием на кнопку «Scan Sites»:

  1. В поле «Dork» необходимо ввести шаблон поиска уязвимости. Самые простые варианты: «.php?catid=», «.php?uid=», «.aspx?item=» и так далее. Главное — проявлять фантазию при поиске и не останавливаться на шаблонах, уже давно «заезженных» знающими людьми. Дам небольшой совет: в данном поле ты можешь вводить не только текст шаблона, но и «ключевые слова», которые могут встречаться в тексте страницы, генерируемой уязвимым скриптом. Например, если в поле «dork» вписать, помимо шаблона, слово «online RPG», скорее всего, в результатах поиска будут встречаться сайты, так или иначе связанные с онлайн-играми. Твоя цель — поиск уязвимостей на сайтах онлайнказино? Попробуй что-то вроде «poker .php?=». Однако не переусердствуй — включение в запрос посторонних слов сильно сужает область поиска.
  2. Поле «Domain Selection» трогать не стоит, если ты не хочешь искать уязвимые сайты только среди принадлежащих к определенному домену. Хотя, если ты желаешь взяться за дефейс сайтов военных ведомств (что, сразу предупрежу, бессмысленно и опасно), вводи сюда текст «.mil».
  3. «Max Url» и «Threads» — поля, содержащие, соответственно, максимальное количество ссылок в выдаче и количество потоков. По умолчанию содержат значения 5 и 100, и я не вижу причин, чтобы их менять. Можешь задать большее количество потоков, если твое соединение позволяет это сделать, а пресловутый патч TCPIP.SYS установлен.
  4. Справа от полей «Max Url» и «Threads» находится набор чекбоксов, напротив каждого из них — название вида уязвимости. Выбирай «Sqli Error Based» — мы ограничимся атакой на «мускулы» и им подобные.

После заполнения необходимых полей жми на «Scan Sites», и процесс сканирования будет запущен. Через несколько секунд программа выдаст около 30-40 ссылок на потенциально уязвимые скрипты. Они отобразятся в левой части окна программы. Теперь следует выбрать из них те ссылки, которые действительно уязвимы; сделать это можно путем нажатия на кнопку «Test Sites». Процесс тестирования может занять чуть больше времени — следи за полосой прогресса, расположенной внизу экрана. Если этот этап пройден, приступим к следующему, более интересному, а там и до реальных взломов недалеко останется.

 

Охота на типовую дичь

Предположим, что сканирование успешно выполнено, и в наших руках находится 15-20 ссылок на «дырявые» скрипты. Что дальше? Дальше — процесс попытки эксплуатации уязвимости. Как я уже говорил выше, не стоит даже пытаться делать это вручную, если все уже давно автоматизировано. Для того, чтобы получить доступ к базе (самое простое, что можно сделать в ситуации, когда уязвимость найдена), можно воспользоваться одной из программ, которые я настоятельно рекомендую к использованию — Pangolin professinal Edition или SqliHelper (кстати, весь упомянутый софт можно найти на нашем DVD).

Лучше один раз увидеть, чем сто раз услышать, именно поэтому обратимся к одному из случаев взлома. В качестве примера приведем работу с SqliHelper, цель — уязвимый скрипт http://www.cwdma.ca/lang/en/profile.php?userID=86 (кстати, скрипт на момент написания статьи так и не поправили, хотя сообщение администраторам было отослано, на что они отреагировали благодарностью), который располагается на сайте Канадской ассоциации производителей окон и дверей (почему именно этот сайт — не спрашивай. Нравится мне спокойная Канада, однако торговля окнами и дверями — слишком скучное занятие, и оно не может остаться безнаказанным :)). Сначала проверим, действительно ли имеется уязвимость.

В качестве параметра «userID» используем апостроф, что приведет к появлению сообщения

«Error: You have an error in your SQL syntax; check
the manual that corresponds to your MySQL server
version for the right syntax to use near '\'' at line 6» в шапке сайта.

Приступим к работе с SqliHelper. Откроем программу, в поле «Target» введем полученную при помощи REILUKE! Exploit Scanner ссылку, нажмем на кнопку «Inject». В поле, расположенном внизу экрана, появятся строки, и в конце концов мы получим сообщение: «Mysql version 5 OK - Please Get Database». Нажимай на «Get Database», и в поле «Database Name» отобразятся названия трех найденных баз данных: «information schema», «CWDMA», «EBCTest». Первая база, очевидно, не содержит ничего полезного, поэтому выбираем вторую и нажимаем на кнопку «Get Tables».

Дождись окончания подбора таблиц. Удивительно, но здесь есть чем поживиться — база содержит таблицу «Users», скрывающую столбцы с именами «Company», «Address1», «Address2», «City», «Province», «Country», «Phone» — кардеру есть где разгуляться. Да, чтобы получить набор столбцов, входящий в таблицу, необходимо выбрать имя последней и нажать на кнопку «Get Columns». Сдампить же таблицу можно, выделив необходимые столбцы и нажав на «Dump Now». Думаю, не нужно распространяться о том, какие данные можно получить, если взять «на прицел» интернет-магазины, онлайн-казино или сайты всевозможных биллинговых систем :).

Итак, всего лишь три минуты достаточно несложной работы, и в нашем распоряжении появилось много интересных сведений, а Интерпол, наверное, уже засек IP-адрес (кстати, не забудь обеспечить себя приватными прокси, соксами, VPN’ами и прочими необходимыми и не очень вещами; на крайний случай возьми бесплатные прокси при помощи Forum Proxy Leecher, а в админки взломанных ресурсов заходи через TOR).

 

Украдем админку и научимся настоящей массовости

Для того, чтобы получить как можно большую отдачу, рекомендую действовать следующим образом: запускай REILUKE! Exploit Scanner, получай с его помощью 10-15 ссылок на уязвимые скрипты, после чего каждую ссылку проверяй при помощи запущенной копии Pangolin или SqliHelper. Это на порядок сокращает время, необходимое для поиска уязвимого сайта.
Если ты думаешь, что все «крупные рыбы» давно «выловлены», то ошибаешься. Например, совсем недавно таким образом был получен доступ к базе данных одной крупной компании, производящей бытовую технику. Не раскрывая подробностей, скажу лишь, что администрация сайта была вовремя предупреждена об опасности, и все уязвимости были оперативно устранены.

Именно так твой покорный слуга получил доступ к сотням сайтов, в том числе и к ресурсам, содержащим конфиденциальную информацию. Очередной пример — уязвимость, найденная при помощи сканера безопасности NetDevilz Scanner (в некоторых случаях он отказывался работать из-за неожиданного исключения, что не умаляет его достоинств). Скачать его можно по ссылке http://my-symbian.com/uiq/software/category.php?fldAuto=6.

Чтобы воспользоваться утилитой, открываем Pangolin, в поле «URL» вбиваем ссылку и запускаем сканирование нажатием на зеленый треугольник, похожий на кнопку «Play». После окончания процесса переходим на вкладку «Data», жмем «Tables». Найдено огромное количество таблиц, нас интересует лишь несколько из них, в частности, «b2users». Выделяем ее, жмем на кнопку «Columns». Какая ценная находка! Таблица содержит уйму интереснейших данных — не только логины и пароли пользователей, но их IP-адреса, номера ICQ и других мессенджеров. Как воспользоваться базой, слитой с достаточно посещаемого ресурса, решать тебе. Я же предпочитаю не испытывать судьбу, благосклонность Фемиды, и сразу сообщаю об уязвимостях владельцам или администраторам сайтов.

Однако все-таки попробуем проверить актуальность данных: отмечаем «флажками» все найденные столбцы таблицы, после чего нажимаем на кнопку «Datas». Оказывается, что таблица содержит совсем не ту информацию, о которой мы мечтали, она содержит еще более ценные данные: учетную запись администратора сайта!

Остается только найти админку, и дело сделано — доступ к сайту получен. Интересен ли данный ресурс? Безусловно — об этом красноречиво говорит поддомен shop.my-symbian.com.

 

На поиски админки

Тебе может потребоваться и метод автоматического поиска админки сайта. Я рекомендую для этих целей утилиту REILUKE! Login Finder — она способна быстро перебирать множество типовых путей к административной панели. Если же утилита бессильна, воспользуйся одним из многочисленных сканеров структуры веб-сайта. Прошерсти найденные директории — наверняка извлечешь что-то полезное! В конце концов, на помощь может прийти список закрытых для индексации файлов и папок, содержащийся в ROBOTS.TXT, но хочется надеяться, что до ручного поиска дело не дойдет, и вся процедура взлома окажется легкой и приятной. Я часто пользуюсь помощью Гугла. Пример целевого запроса для поиска нужной страницы: «site:my-symbian.com intext:login». Определение типа системы управления сайтом также существенно облегчает задачу поиска.

 

... и еще один взлом!

Напоследок расскажу об еще одном взломе, совершенном мной абсолютно намеренно. Признаюсь, я очень люблю хорошие и удобные кеды. В них можно и бегать, и прыгать, и даже кататься на скейте, если вздумается. Однако, прежде чем заполучить кеды, нужно разыскать «дырявый» магазин, где они продаются, а потом присвоить заказу статус уже оплаченного и выслать его в Россию :).

Если, конечно, магазин «шлющий». Но мне было лень заморачиваться со статусами магазина, и я решил просто найти активный и полный заказов онлайн-шоп, взломать его и прошерстить на предмет наличия интересных данных. Итак, наша цель — обувь? Открываем уже знакомый нам Exploit Scanner, вбиваем запрос «nike adidas vans php?id=» и начинаем поиск, а затем — тестирование. Первым в списке почему-то оказался facebook.com, что наводит на мысль о несовершенстве работы сканера. Зато вторая цель, 242shop.ch/shoes_details.php?id=162, нам вполне подходит. Копируем ссылку и вставляем ее в ставший родным SQLiHelper. На сайте содержится целых три полезных базы с именами «242shopch», «242shopch1», «242shopch2». Последняя таит в своих недрах таблицу «wp_users», которая, в свою очередь, сохраняет и имена пользователей, и парольные хеши, например:

admin:$P$B5LgS3enL1rifx5pe****a8QA61AZi1:admin:***@24 2shop.ch

Расшифровать хеш — дело техники, как найти админку — я рассказывал. А ходить в кедах, присланных из-за бугра, пошитых нашими китайскими друзьями, но принадлежащих к известному бренду — очень здорово. Особенно в случае, когда они достались даром :).

 

Перед расставаниемы

Хочу сразу предупредить — три раза подумай, прежде чем что-то ломать, действуй в сугубо исследовательских целях и всегда сообщай о найденных прорехах в безопасности администраторам. Если будешь придерживаться этих простых правил — тебе воздастся трижды. И не забывай о мерах безопасности. Удачных взломов!

Check Also

Фундаментальные основы хакерства. Мастер-класс по анализу исполняемых файлов в IDA Pro

В этой статье мы окунемся в глубокий и подробный статический анализ с помощью IDA Pro — св…

1 комментарий

  1. Аватар

    MrDemiurg

    13.02.2019 at 23:23

    Подскажите о каком софте идет речь ?

Оставить мнение