Все мы видели в фильмах о хакерах сцены взлома с помощью мобильных телефонов. Обычно все, что там творится, — выдумка. Однако и эта выдумка медленно, но верно становится реальностью. Из этой статьи вы узнаете, как приблизиться к кино и превратить свой мобильный гаджет в настоящий хакерский смартфон.
Еще по теме: Лучшие хакерские программы для смартфона
Хакерский смартфон с помощью Termux и Kali Linux
Первое, о чем следует позаботиться, — это права root. Без них некоторые функции установленных нами утилит могут не поддерживаться или работать некорректно. Поэтому настоятельно рекомендую их заполучить. Особенно это касается пользователей с Android 10 и более поздних версий.
Получение root в каждом случае уникально, ведь оно напрямую зависит от конкретной модели устройства и версии Android. Я в этой статье буду использовать свой старенький Samsung Galaxy S6 (SM-G920F) на Android 7.0 Nougat, для рута в котором уже есть специальный инструмент. В остальных случаях придется погуглить и узнать, как получить рут конкретно на вашем устройстве.
Также нам понадобится Termux — простой и удобный терминал, дающий многие возможности среды Linux, который и позволит исполнять наши команды в подходящей среде и не возиться с предварительной настройкой окружения.
Рекомендую также установить утилиту tsu, которая предоставит вам возможность выполнять команды от рута. Если она не работает должным образом, загляните в GitHub-репозиторий, который настраивает работу рута в Termux. Это нужно, чтобы Termux сразу имел рут-доступ, который может понадобиться для дальнейших операций.
Важный момент: при использовании в качестве рута Magisk (а на большинстве современных устройств альтернатив нет и не предвидится) не забудьте в его настройках разрешить Termux рут-доступ, а также добавить в исключения для Magisk Hide, иначе все наши действия будут бесполезны.
Также рекомендую обновить список пакетов, как мы обычно делаем это в десктопе Kali LInux:
1 |
$ apt-get update |
Кратко про Kali NetHunter
Если вы один из тех счастливчиков, чье устройство оказалось в списке поддерживаемых, рекомендую обратить внимание на проект Kali NetHunter. Это платформа, созданная разработчиками Kali Linux специально для телефонов на Android. В NetHunter сразу доступно много рабочего софта из десктопной версии Kali. Образы можно найти на официальном сайте. Это более мощный набор, чем тот, что вы можете получить с помощью Termux.
Подробнее о Kali NetHunter в статьях:
Установка Metasploit
Полное описание Metasploit — тема для отдельной статьи (Использование Metasploit Framework), поэтому пройдемся по нему вкратце. Metasploit Framework — фреймворк, предназначенный для создания, отладки и, конечно, применения эксплоитов.
Установить Metasploit Framework (MSF) на Android 7 или выше можно в две команды:
1 2 |
$ pkg install unstable-repo $ pkg install metasploit |
На Android 5.x.x–6.x.x MSF устанавливают несколько другим методом:
1 2 3 4 |
$ curl -LO https://github.com/termux/termux-packages/files/3995119/metasploit_5.0.65-1_all.deb.gz $ gunzip metasploit_5.0.65-1_all.deb.gz $ dpkg -i metasploit_5.0.65-1_all.deb $ apt -f install |
Все эти команды следует выполнять с правами обычного пользователя, если не оговорено иное. При выполнении от рута могут возникать трудноисправимые проблемы. В частности, при запуске apt от рута мы получим сбитые контексты SELinux, что потом помешает нам устанавливать пакеты.
Установка может затянуться. Не закрывайте сессию Termux до конца установки MSF!
Не стоит обновлять MSF вручную редактированием $PREFIX/opt/metasploit, так как это может привести к проблемам с зависимостями.
Теперь, чтобы убедиться, что у нас все работает, запустим Metasploit:
1 |
$ msfconsole |
Как видите, все отлично и в вашем распоряжении 2014 эксплоитов.
Установка ngrok
Ngrok — это кросс-платформенный софт для создания защищенных сетевых туннелей от общедоступной конечной точки до локально работающей сетевой службы. Также утилита собирает весь трафик и логирует его для анализа.
Перед дальнейшими действиями убедитесь, что интернет подключен (через «мобильные данные») и активирована точка доступа, так как это необходимо для корректной работы ngrok.
Для начала обновляемся и ставим Python 2:
1 |
$ pkg update && pkg upgrade && pkg install python2 |
Теперь нам нужно зарегистрировать свой аккаунт ngrok.
Как только зарегистрируетесь, вас перебросит на страницу личного кабинета, где нужно будет найти и скопировать свой токен аутентификации, как показано на скриншоте.
Далее надо скачать архив с ngrok для Linux-based-систем с архитектурой ARM.
Дальше заходи в Termux и идем в ту директорию, куда скачали архив с ngrok. К примеру:
1 |
$ cd /sdcard/Downloads |
Введите команду ls |grep ngrok и проверьте, что архив здесь. Теперь нам нужно разархивировать его:
1 |
$ unzip ngrok-stable-linux-arm.zip |
После этого еще раз введите ls |grep ngrok и проверьте, появился ли у вас исполняемый файл ngrok. Если его нет, то перед следующим шагом зайдите в директорию с ним:
1 |
$ cd ngrok-stable-linux-arm |
И переместите исполняемый файл в домашний каталог Termux:
1 |
$ mv -v ngrok /$HOME |
Посмотрите, куда был перемещен файл, и отправляйтесь туда с помощью команд cd и ls.
Теперь вам нужно установить флаг исполнимости файла:
1 |
$ chmod +x ngrok |
И сделать первый запуск:
1 |
$ ./ngrok |
Помните, вы копировали свой токен для аутентификации? Впишите эту команду, чтобы ngrok знал, кто его использует:
1 |
$ ./ngrok authtoken токен |
И запускайте сервер:
1 |
$ ./ngrok http 80 |
Вы увидите экран как на скриншоте.
Отлично, теперь вы готовы атаковать любые цели!
Установка sqlmap
Цитата с официального сайта: «Sqlmap — это инструмент для тестирования на проникновение с открытым исходным кодом, который автоматизирует обнаружение и использование недостатков SQL-инъекций и захват серверов баз данных».
С установкой все элементарно. Перед вами есть выбор: поставить стабильную версию 1.4.3 или самую новую 1.4.5.34. Первая ставится проще некуда:
1 |
$ pkg install sqlmap |
И все. Чтобы запустить утилиту, пропишите команду
1 |
$ sqlmap -u <URL> |
Или же вы можете поставить себе более новую версию, которая еще находится в разработке. Для этого нужно клонировать официальный проект sqlmap с GitHub:
1 |
$ git clone https://github.com/sqlmapproject/sqlmap.git |
Далее переходите в папку с sqlmap:
1 |
$ cd sqlmap |
И, используя python2, запускайте sqlmap с таким же обязательным параметром:
1 |
$ python2 sqlmap.py -u ссылка |
Теперь больше половины баз данных интернета могут оказаться в вашем смартфоне! Но не забывайте, что, применяя этот мощный инструмент, вы рискуете нажить проблемы с законом.
Установка aircrack-ng
Aircrack-ng — набор утилит, предназначенных для обнаружения беспроводных сетей, перехвата их трафика и аудита ключей шифрования WEP и WPA/WPA2-PSK.
Здесь уже все далеко не так просто. Думаю, вы слышали, насколько трудно перевести WiFi-адаптер смартфона в режим мониторинга. В официальных репозиториях Termux на этот случай есть пакет утилиты iwconfig, которая управляет беспроводными сетями. Нам надо ее установить.
Для начала нужны вспомогательные утилиты:
1 |
$ pkg install root-repo |
Теперь можно ставить iwconfig с остальными инструментами для работы с беспроводными сетями:
1 |
$ pkg install wireless-tools |
И еще поставить отдельно iw:
1 |
$ pkg install iw |
Теперь вам надо будет зайти как рут и создать экземпляр монитора. Для этого мы сделаем так:
1 2 |
$ tsu $ iw phy0 interface add mon0 type monitor |
Проверим наши адаптеры и их статусы:
1 |
$ iwconfig |
Если что-то отображается не так, проверьте, работает ли WiFi, и убедитесь, что он не подключен к каким-либо сетям.
Далее нам нужно поднять наш монитор:
1 |
$ ifconfig mon0 up |
Конечно, не все устройства с Android поддерживают режим мониторинга. Проверить это можно приложением bcmon, которое среди прочего умеет включать режим мониторинга на совместимых чипах Broadcom (это устройства Nexus и некоторые другие). Для всех остальных придется купить переходник USB — OTG, в который воткнуть один из поддерживаемых десктопной Kali адаптеров. Для этого понадобится пересобрать ядро с нужными драйверами. Если у вас нет опыта пересборки ядра, рекомендую обратиться в тему своего устройства на XDA-developers. Часто там есть сборки Kali с уже готовым ядром.
Теперь можем ставить aircrack-ng:
1 |
$ pkg install aircrack-ng |
Смотрим короткий man:
1 |
$ man aircrack-ng |
И можем запустить airodump-ng:
1 |
$ airodump-ng -i mon0 |
Теперь можно перехватывать трафик открытых точек, спамить deauth-фреймами, отключая неугодных соседей посторонние устройства от интернета, ловить хендшейки для взлома паролей.
Установка Nmap
Nmap — утилита, предназначенная для сканирования сетей. Может находить открытые порты, делать трассировку, проверять на уязвимости с помощью NSE-скриптинга. Чтобы лучше ознакомиться с этим приложением, стоит прочитать статьи:
В нашем случае возможности Nmap могут быть немного урезаны, ведь используем портированную на Android версию. Однако она есть в официальных репозиториях Termux, что упрощает нам жизнь:
1 |
$ pkg install nmap |
Посмотрим короткий man:
1 |
$ nmap |
Для интенсивного сканирования я использую такие параметры:
Установка Kali Linux на хакерский смартфон
На некоторые телефоны можно установить Kali NetHunter, но речь сейчас пойдет не о нем. Мы будем ставить образ полноценной Kali на наш телефон и подключаться к его десктопу через VNC. У вас будет образ именно Kali Linux, что позволит пользоваться теми прогами, которые не удается завести на Termux (к примеру, BeEF-XSS).
Сначала нам понадобится скачать из Google Play установщик урезанных дистрибутивов — Linux Deploy, набор необходимых пакетов для корректной работы (BusyBox) и, конечно, VNC Viewer — клиент VNC. Не важно, что в реальности эта машина будет находиться на 127.0.0.1.
Также из интернета нужно скачать образ Kali для Android. Лично я скачивал полную версию с файловой системой ext4, которая подходит для архитектуры ARM (пятый файл сверху). Когда архив докачается, ваша задача — извлечь оттуда образ объемом 5,5 Гбайт и поместить его в директорию /storage/emulated/0 мобильного устройства. После этого переименуем файл в linux.img.
Теперь нужно уделить внимание BusyBox. Сейчас в Google Play очень много вариантов разных производителей. Дело в том, что некоторым устройствам приходится подыскивать нужный BusyBox, чтобы все утилиты поставились корректно. В моем случае подошел самый популярный пакет BusyBox Free, файлы которого я установил в /su/xbin. Запомните эту директорию, она важна при обновлении среды установщика.
Теперь заходим в Linux Deploy и справа внизу нажимаем на иконку настроек дистрибутива. Выбираем дистрибутив Kali Linux. Нужная архитектура выставится автоматически, но, если не получится, попробуйте armhf.
Далее измени пароль пользователя, он находится ниже.
И в самом конце вы найдете пункты, отвечающие за включение серверов SSH и VNC. Поставьте галочки напротив них. Если не нужна графическая среда, то будет достаточно SSH. Потом можно будет скачать любой клиент SSH и подключаться к нашей машине с Kali по 127.0.0.1. Чтобы не качать лишние приложения, можете воспользоваться обычным openssh-client прямо в Termux, для чего просто откройте еще одну вкладку.
Если же вам все же нужна графическая среда, то включите соответствующий пункт, и дальше я покажу, как подключиться к десктопу Kali по VNC.
Теперь нужно настроить рабочее окружение. В настройках переменной PATH укажите тот путь, куда BusyBox устанавливал пакеты.
И обновите рабочее окружение (кнопка ниже).
Далее нужно настроить наш контейнер. Выйдите на главную страницу, в правом верхнем углу нажмите на иконку меню и выберите пункт «Сконфигурировать».
Осталось только запустить наш контейнер. Жмите кнопку Start внизу. Проверьте, нет ли при запуске контейнера строчек с пометкой fail. Если есть, убедитесь, что вы правильно указали PATH рабочего окружения и сконфигурировали контейнер. Если все так, то попробуйте сменить архитектуру на armhf и сделать все заново.
Теперь заходите в VNC Viewer или другой клиент VNC, добавляйте соединение по локалхосту (127.0.0.1) и называйте его. Далее подключайтесь, подтверждайте, что хотите продолжить пользоваться незашифрованным соединением, и вводите пароль пользователя, который вы указывали в Linux Deploy.
Готово!
Конечно, дистрибутив старый, но весь софт рабочий, и, как видите, тот же Nmap функционирует без ошибок.
Для теста я использую команду
1 |
$ nmap -A -v <IP> |
Параметр -A отвечает за включение сканирования ОС, ее версии, сканирования скриптами, а также трассировку маршрута (traceroute). Параметр -v выводит более подробную информацию.
Вывод результатов сканирования вы можете видеть на скриншоте ниже.
Итого
Теперь ваш хакерский смартфон способен вскрывать базы данных, сканировать сети, перехватывать трафик и устраивать еще множество разных интересных атак. Используйте эти возможности с умом!
Еще по теме: Взлом WiFi на Андроид
Хорошая статья. Респект!
Интересно
Спасибо за инструкцию
Вы продае́те такой телефон?Нуждаюсь в таком телефоне,сам не смогу это всё настроить.