Тесты на проникновение — легальный способ заниматься настоящим взломом, да еще и получать за это деньги. Продвинутый аудит безопасности обычно выполняется на ноутбуке с (Kali) Linux и специфическим оборудованием, но многие бреши легко обнаружить и с помощью обычного смартфона. В этой статье мы рассмотрим 14 утилит, которые позволят тебе выполнить пентест, не доставая ноутбук из сумки.
Сканеры веб-ресурсов
Начнем со сканеров веб-приложений. Здесь у нас три утилиты, которые позволят тебе найти открытые админки, сбрутить пароль, протестировать сайт на XSS-уязвимости, возможность SQL-инъекций, составить листинги каталогов и многое другое.
Kayra the Pentester Lite
Мобильный сканер уязвимостей веб-приложений. Ищет типичные ошибки в конфигурации указанного веб-сервера и пытается получить листинг каталогов (обычно — успешно). Среди дополнительных инструментов есть генератор хешей и дешифровщик AES.
Сканирование выбранного сайта и настройки
Приложение обладает простыми и понятными настройками. Поддерживает HTTPS и проверяет корректность TLS. Умеет искать XSS, брутить CGI и выполнять атаки по словарю. Может работать в фоне и в многопоточном режиме. Содержит базу данных Google Hacks и автоматически определяет известные уязвимости.
Отчет Kayra и экран About
По каждому пункту, отмеченному в настройках сканирования, создается подробный отчет. На скриншоте видно лишь его малую часть. Бесплатная версия довольно функциональна, но иногда раздражает рекламой (если у тебя не стоит AdAway или другой блокировщик). В платной версии нет рекламы и ограничений, ее стоимость на момент написания статьи составляет 159 рублей.
- Протестированная версия: 1.4.0
- Размер: 4,7 Мбайт
- Версия Android: 4.1 и выше
- Требуется root: нет
DroidSQLi
Компактная утилита для проверки веб-сайтов на уязвимость к SQL-инъекциям четырех разновидностей:
- Normal SQL injection — классический вариант с передачей параметра UNION ALL SELECT;
- Error based SQL injection — использование в запросах заведомо неверного синтаксиса для получения сообщения об ошибке, раскрывающего дополнительные параметры БД;
- Blind SQL injection — серия запросов с анализом ответов true/false от СУБД, позволяющая восстановить структуру базы данных;
- Time based SQL injection — формирование дополнительных запросов, вызывающих приостановку СУБД на определенное время, что делает возможным посимвольное извлечение данных.
Демонстрация error based SQL-инъекции
Утилита автоматически подбирает метод инжекта, а также использует техники обхода фильтрации запросов.
Для начала тестирования сайта необходимо вручную найти точку входа. Обычно это адрес веб-страницы, содержащий запрос вида ?id=X или ?p=X, где X — целое положительное число. В нашем примере пейлоад для параметра id выглядит так:
id=(SELECT 4777 FROM(SELECT COUNT(*),CONCAT(0x71626b6a71,(SELECT (ELT(4777=4777,1))),0x7170767871,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)
В Сети очень много сайтов, уязвимых к SQL-инъекциям. Думаю, ты легко найдешь несколько таких, просто посмотрев историю своего браузера. Подробнее об SQL-инъекциях читай в нашей статье.
- Протестированная версия: 1.1
- Размер: 705 Кбайт
- Версия Android: 4.2 и выше
- Требуется root: нет
Droidbug Admin Panel Finder FREE
Утилита ищет админские панели по дефолтным адресам разных CMS. Результат ее работы не всегда соответствует реальному положению вещей, поскольку на популярных веб-серверах стоят IDS и WAF. Они блокируют перебор URL или перенаправляют его в honeypot, который отвечает HTTP 200 OK на все запросы, а сам собирает инфу об атакующем.
Однако на менее популярных сайтах с безопасностью все очень тоскливо, и валидная админская панелька находится за считаные секунды. В платной версии, стоимостью 139 рублей, убрана реклама и разблокирована возможность перебора по смешанному шаблону для сайтов с поддержкой PHP/ASP/CGI/CFM/JS.
Ищем админки на сайтах
- Протестированная версия: 1.4
- Размер: 6,3 Мбайт
- Версия Android: 2.1 и выше
- Требуется root: нет
Комбайны
Интернет состоит не только из веб-приложений, и дыры находят не только в них. Следующая подборка инструментов позволит тебе искать уязвимости (и эксплоиты для них) в софте и железе, выполнять сниффинг, MITM-атаки, оставлять бэкдоры и делать много других интересных вещей.
cSploit
Один из самых функциональных инструментов для сканирования сетей и поиска уязвимостей на обнаруженных хостах. Составляет карту сети и отображает сведения обо всех найденных в ней устройствах. Умеет определять их IP/MAC и вендора (по первым трем октетам MAC-адреса), определять установленную на них ОС, искать уязвимости с помощью Metasploit framework RPCd и брутфорсить пароли.
Поиск клиентов и MITM-атака
Выполняет MITM-атаки разного типа через спуфинг DNS (возможна замена медиафайлов в трафике на лету, JS-инжекты, угон сессий и захват cookie для авторизации без ввода пароля). Также умеет дисконнектить отдельные устройства (или отключать их скопом от точки доступа). Перехватывает трафик и сохраняет его в формате .pcap или перенаправляет, куда скажешь.
Модули cSploit
cSploit содержит инструмент для создания и отправки на выбранный хост любого TCP/UDP-пакета. По ссылке взлом роутера перенаправляет на онлайн-сервис для выбора и эксплуатации уязвимостей под определенную модель. База перестала обновляться в 2015 году, но все еще сохраняет актуальность. В моем кратком тесте на роутере ASUS, который выпускается с конца 2016 года, в свежей прошивке (апрель 2018 года) была обнаружена уязвимость, впервые описанная в 2009 году.
Открытые порты и подборка эксплоитов для выбранной цели
Дополнительно cSploit помогает создать на взло… не прошедшем аудит безопасности хосте удаленный шелл и получить над ним полный контроль. В общем, это однозначный must have для пентестеров, и не только для них.
- Протестированная версия: 1.6.6 RC2
- Размер: 3,5 Мбайт
- Тестовые сборки cSploit Nightly доступны здесь
- Версия Android: 2.3 и выше
- Требуется рут: ДА!
INFO
cSploit, Intercepter-NG и другие мощные ][-утилиты заслуживают более подробного рассмотрения в отдельных статьях. Мы предлагаем сперва освоиться с базовыми принципами пентеста на примере простых приложений, а уже затем переходить на хардкор. Следи за обновлениями в рубрике «Взлом»!
Нужно ли пентестеру рутировать смартфон?
- Нет! Это лишает гарантии и создает угрозы, а многие утилиты работают и без рута
- Да, иначе как раскрыть его возможности?
- Рутировать, поставить BusyBox и терминал... ну и ядро бы еще пропатчить
dSploit
Форк cSploit от Симоне Маргарителли (Simone Margaritelli), приказавший долго жить в 2014 году. Проект так и остался в стадии бета-версии с очень сырым кодом. Если cSpoit у меня работал без нареканий, то последние три версии dSploit вываливались с ошибкой почти сразу после запуска.
С тех пор как Маргарителли устроился в компанию Zimperium, наработки dSploit вошли в состав фирменной утилиты zAnti.
Сканирование беспроводной сети и обнаружение хостов
- Протестированная (не вполне удачно) версия: 1.1.3с
- Размер: 11,4 Мбайт
- Версия Android: 2.3 и выше
- Требуется root: ДА!
zAnti
Мобильное приложение для пентеста от Zimperium. Более современный, стабильный и наглядный аналог dSploit.
Интерфейс zAnti разделен на две части: сканирование и MITM. В первой секции он, подобно dSploit и оригинальному cSploit, мапит сеть, определяет все хосты, их параметры и уязвимости.
Nmap’им сеть
Отдельная функция — определение уязвимостей на самом смартфоне. Согласно отчету программы, наш тестовый Nexus 5 содержит 263 дыры, которые уже не будут закрыты, поскольку срок жизни девайса истек.
Обнаружение уязвимостей
zAnti помогает взламывать роутеры и получать к ним полный доступ (с возможностью сменить пароль админа, задать другой SSID, PSK и так далее). Используя MITM-атаки, zAnti выявляет небезопасные элементы на трех уровнях: в ОС, приложениях и настройках устройства.
Расширенный поиск уязвимостей
Ключевая особенность — формирование подробного отчета по всем просканированным элементам. Отчет содержит пояснения и советы по устранению найденных недостатков.
- Протестированная версия: 3.18
- Размер: 24 Мбайт
- Версия Android: 2.3 и выше
- Требуется рут: ДА!
- Примечания: zAnti не работает на устройствах с процессорами архитектуры x86 и x86_64
Снифферы
Ни одному пентестеру не обойтись без хорошего сниффера. Это такой же обыденный инструмент, как нож на столе повара. Поэтому следующий раздел статьи посвящен приложениям для перехвата и анализа трафика.
Intercepter-NG
Продвинутый сниффер, ориентированный на выполнение MITM-атак. Захватывает трафик и анализирует его на лету, автоматически определяя в нем данные авторизации. Умеет сохранять перехваченный трафик в формате .pcap и анализировать его позже.
Сканирование и ARP spoofing
Среди автоматически определяемых форматов данных есть пароли и хеши для следующих протоколов: AIM, BNC, CVS, DC++, FTP, HTTP, ICQ, IMAP, IRC, KRB5, LDAP, MRA, MYSQL, NTLM, ORACLE, POP3, RADIUS, SMTP, SOCKS, Telnet, VNC.
Intercepter-NG собирает из перехваченных пакетов файлы, передаваемые по FTP, IMAP, POP3, SMB, SMTP и HTTP.
Capture, hijack, injections
Как cSploit и аналоги, Intercepter-NG использует ARP-спуфинг для выполнения MITM. Он поддерживает SSLstrip, что позволяет выполнять MITM-атаки даже с HTTPS-трафиком, подменяя на лету HTTPS-запросы атакуемых хостов их HTTP-вариантами через встроенный DNS-прокси.
Вдобавок он умеет определять ARP-спуфинг в отношении тебя (полезно при подключении к публичным хотспотам) и защищать от него. При нажатии иконки в виде зонтика проверяется ARP-кеш.
- Протестированная версия: 2.1 (консольная — 0.8)
- Размер: 5,2 Мбайт
- Версия Android: 2.3 и выше
- Требуется рут: ДА!
Packet Capture
Более простой и «легальный» анализатор TCP/UDP-пакетов с возможностью перехвата HTTPS-сессий посредством MITM. Не требует прав root, поскольку использует встроенную в Android функцию проксирования трафика через VPN и подмену SSL-сертификата.
Захват трафика
В Android 6.0.1 и более свежих версиях требуется вручную добавить CA-сертификат через настройки приложения.
Добавляем сертификат Packet Capture
Packet Capture работает локально. Он не выполняет ARP-спуфинг, угон сессий и прочие атаки на внешние хосты. Приложение позиционируется как прокси для отладки и скачивается из официального маркета. Умеет декодировать пакеты как Text/Hex/Urlencoded, но пока не поддерживает сжатые (gzip) HTTP-запросы.
С помощью Packet Capture удобно контролировать сетевую активность установленных приложений. Он показывает не просто объем передаваемого трафика, а что конкретно и куда отправляет каждая программа или встроенный компонент Android, какие пакеты и с каких серверов получает в ответ. Отличная утилита для поиска троянских закладок и назойливой рекламы.
- Протестированная версия: 1.4.7
- Размер: 4,5 Мбайт
- Версия Android: 2.3 и выше
- Требуется root: нет
Насколько безопасно ставить на смартфон хакерские утилиты?
- Крайне опасно, там сплошь трояны!
- Рискованно, поэтому лучше использовать отдельный смартфон без симки и личных данных
- Гарантий вообще никто не дает. Та же защита Google.Play регулярно пропускает малварь
Вспомогательные утилиты
Если продвинутые утилиты для пентеста требуют root и BusyBox, то приложения попроще доступны в Play Store и работают на любом смартфоне без ухищрений. ARP-спуфинг и MITM-атаки ими не выполнить, но для сканирования беспроводной сети, обнаружения хостов и явных проблем с безопасностью их вполне хватает.
WPSApp
Эта программа сканирует эфир в поисках точек доступа с включенной функцией WPS. Обнаружив такие, она пытается опробовать на них дефолтные пины. Их немного, и они известны из мануалов производителей роутеров.
Обнаружение хотспотов с WPS
Если пользователь не сменил дефолтный пин и не отключил WPS, то утилита самое большое за пять минут перебирает все известные значения и получает WPA(2)-PSK, каким бы длинным и сложным он ни был. Пароль от беспроводной сети отображается на экране и автоматически сохраняется в настройках Wi-Fi смартфона.
Успешное получение PSK менее чем за минуту
Отмечу, что некоторые роутеры не позволяют менять пин, заданный по умолчанию. Более того, иногда он остается включенным, даже если в веб-интерфейсе роутера показывается статус WPS: OFF. Узнать реальное состояние WPS поможет утилита Wifi Analyzer. Подробнее про нее и WPSApp читай в статье «Ломаем Wi-Fi со смартфона. Разведка и первый бой».
С момента выхода той статьи WPSApp обновилась и стала лучше во всех отношениях. Она знает больше пинов разных вендоров, быстрее перебирает их и научилась брутфорсить в новых режимах. Утилита работает как на рутованных смартфонах, так и без прав root. У нее много аналогов, но все они куда менее эффективные.
- Протестированная версия: 1.6.20
- Размер: 3,0 Мбайт
- Версия Android: 4.1. Гораздо лучше работает на Android 5.1 и новее
- Требуется root: желательно, но не обязательно
WiFiAnalyzer
Опенсорсный и бесплатный сканер Wi-Fi-сетей. Очень удобная утилита для обнаружения точек доступа (включая скрытые), выяснения их параметров (MAC, вендор, канал, тип шифрования), оценки мощности сигнала и расстояния до них. Удаленность от роутера вычисляется по формуле для прямой видимости, поэтому не всегда указывается достаточно точно.
Отображение скрытых сетей и оценка зашумленности каналов
WiFiAnalyzer позволяет наглядно увидеть ситуацию в эфире, отфильтровать цели по уровню сигнала, SSID, используемой частоте (2,4/5 ГГц) и типу шифрования. Также вручную можно определить наименее зашумленный канал по графикам двух типов: обычному и с временным накоплением.
Словом, WiFiAnalyzer — это то, с чего стоит начинать разведку в беспроводных сетях. Поиск целей с определенными параметрами сэкономит кучу времени при дальнейшей работе с продвинутыми утилитами.
- Протестированная версия: 1.8.11
- Размер: 1,6 Мбайт
- Версия Android: 4.1 и выше
- Требуется root: нет
Fing
Часто функциональность хакерских утилит пересекается с возможностями вполне легальных инструментов, которыми пользуются системные администраторы для наладки сетей.
Сканирование внешних и внутренних сетевых узлов
Fing — один из таких инструментов. Он быстро сканирует Wi-Fi-сеть, к которой тебе удалось подключиться (например, с помощью WPSApp), и определяет все хосты. Это может быть востребовано для проверки собственной беспроводной сети на предмет НСД, но, согласись, исследовать незнакомые сети гораздо интереснее.
Определение портов и сервисов на выбранных хостах
Fing выполняет расширенный анализ имен NetBIOS, UPNP и Bonjour, поэтому точнее определяет типы устройств и показывает больше их свойств. В Fing интегрированы утилиты ping и tracerout. Также он умеет отправлять запросы WOL (Wake on LAN), удаленно пробуждая «спящие» устройства, поддерживающие эту функцию.
Fing автоматически определяет открытые порты и сопоставленные им сервисы. При обнаружении SMB, SSH, FTP и прочего Fing предлагает подключиться к ним, вызывая для этого внешние программы из своего меню. Если соответствующая утилита (например, AndSMB) не установлена, то Fing открывает ссылку на ее загрузку.
Детальная информация о сети и клиентских устройствах
Дополнительные возможности программы открываются после регистрации аккаунта Fing. С ним можно выполнять инвентаризацию устройств и сетей. Еще больше функций открывается после приобретения аппаратного Fingbox. Он умеет отслеживать подключение непрошеных гостей и выборочно блокировать их устройства, а также проверять интернет-подключение на типичные неполадки и автоматически устранять их.
- Протестированная версия: 6.7.1
- Размер: 10 Мбайт
- Версия Android: 4.1 и выше
- Требуется root: нет
NetCut
Приложение определяет все клиентские устройства в беспроводной сети, а затем использует ARP-спуфинг для их выборочного отключения или обрубает связь для всех, кроме тебя. А дальше ты можешь скачивать файлы на полной скорости где-нибудь в кафешке, глядя, как мучаются другие посетители.
NetCut — найти и кикнуть!
Шутка! Так делать некультурно, а вот быстро кикнуть злоумышленника, не влезая в настройки роутера, — почему бы и да? Можно не просто разово оборвать связь для любого хоста, а постоянно блокировать его попытки подключиться к точке доступа, пока он не сменит MAC-адрес (см. вкладку Jail).
Ограничение скорости подключения хостов
Если кто-то попытается сделать такой финт в отношении твоего девайса, NetCut определит отравление ARP-кеша и очистит его (см. NetCut Defender). За доллар в месяц можно получить аккаунт Pro, убрать рекламу и ограничения.
- Протестированная версия: 1.4.9
- Размер: 12 Мбайт
- Версия Android: 4.0 и выше
- Требуется root: ДА!
Как ты относишься к пентестам со смартфона?
- Это несерьезно, нужен ноутбук
- Смартфон — хороший справочник и вспомогательный инструмент
- Отлично! Здорово иметь под рукой Linux!
Справочники и поисковики
Напоследок расскажем о паре полезных утилит, которые не имеют прямого отношения к взлому, а выполняют скорее вспомогательную и информационную функцию.
Droidbug Exploiting FREE
Приложение от Bugtraq Team. Предназначено для поиска и скачивания эксплоитов разного типа. Все они сгруппированы по типу ОС в двух основных разделах: с локальным и удаленным исполнением. В отдельную группу выделены аппаратные и веб-эксплоиты, а также используемые в DoS-атаках.
Карманный менеджер эксплоитов
Найти и скачать нужный эксплоит можно из бесплатной версии программы, а для быстрого просмотра описания потребуется уже платная версия стоимостью 279 рублей.
- Протестированная версия: 2.0.3
- Размер: 5,6 Мбайт
- Версия Android: 4.0.3 и выше
- Требуется root: нет
Pentest Cheatsheet
Карманный справочник пентестера. Содержит рекомендации по выполнению тестов от OWASP (The Open Web Application Security Project) — экспертов открытого проекта обеспечения безопасности веб-приложений.
Pentest Cheatsheet — справочник пентестера
Дополнительно включает в себя подборку ссылок на проверенные ][-утилиты, сгруппированных исходя из поставленной задачи: онлайновые сканеры, анализаторы уязвимостей, тулзы для реверса, фаззеры, краулеры и так далее.
Подборка ссылок на утилиты по типам задач
Вся информация хорошо систематизирована и выглядит актуальной на момент написания статьи.
- Протестированная версия: 1.02
- Размер: 2,2 Мбайт
- Версия Android: 4.1 и выше
- Требуется рут: нет
Ты уже выполнял тесты на проникновение?
- Да, и со смартфона/планшета тоже
- Да, но только с ноутбука
- Пока нет, но теперь попробую!
- Нет, мне это неинтересно
Вместо выводов
Из гор хлама, мусора и откровенного фейка, который в мире Android выдают за «хакерский софт», мы постарались выудить самые интересные, продвинутые и полезные инструменты. Но если ты считаешь, что чего-то не хватает, — добро пожаловать в комментарии! Только, пожалуйста, без Kali NetHunter, мы про него уже писали.