Termux для пентестинга: готов соревноваться с опытными исследователями?
Привет, коллеги! Решил внести свежесть в конкуренцию — ведь пока никто не предложил новых векторов атаки. Многие просто пересказывают старую публичную информацию в обновлённом формате, которую скоро будут преподавать в школах. Это, разумеется, лишь моё мнение — не обязательно с ним соглашаться.**
В этой теме вы найдете реальные, авторские подходы к использованию Termux для мобильного анализа безопасности — никаких шаблонов и повторов, только свежие идеи и практики.
Предисловие: Эволюция технологий и мобильный анализ безопасности
Все мы знаем, друзья, что время не стоит на месте, так же не стоят на месте и возможности наших портативных устройств: телефонов, гаджетов и т.д. Всё, что новое придумает человек, тем или иным способом рано или поздно будет использовано против него же самого. О чем это я? Да о том, что все новые технологии — это полигон как для добросовестных
аналитиков безопасности, так и для злоумышленников.
Человек придумал электричество — при небрежном обращении с ним оно его убьет; придумали пластиковые окна — воры придумали, как их вскрывать путем отжима или высверливанием отверстия для ручки; придумали умные машины с ПО — преступники стали умнее и освоили техники угона с использованием
несанкционированного доступа (радиохакинг, манипуляции с ПО и т.д.). Все это говорит о том, что с появлением новых возможностей и технологий появляется новый модернизированный преступный мир, в том числе и
киберпреступники, становятся сильнее и умнее, тем самым порождая новые угрозы и виды преступлений.
Сегодня же в нашей статье я хочу поведать банальный пример, как обычный телефон на базе Android может стать портативным орудием для
тестирования безопасности.
Вступление: Termux — ваш невидимый помощник в аудите безопасности
Согласитесь, в ситуации, когда вам нужно провести
анализ безопасности в помещении какой-то компании, придя в какой-то офис или просто находясь в очереди отделения банка, — то открытый ноутбук и непонятный, для большей части населения, вид консольных команд в терминале или открытые окна каких-то непонятных программ вызовут как минимум подозрения у охраны и могут иметь нежелательные для вас последствия. Для того чтобы избежать подобного, нам на помощь приходит наш дружок — телефон. И сегодня мы поговорим о возможностях
Termux и его настройке с точки зрения
пентестера.
Ну что же поехали:
Что такое Termux? И что он умеет ?
Termux - это android приложения , которое представляет из себя
эмулятор терминала с chroot средой Linux , которое напрямую работает без рут доступа телефона так и с рут доступом по требованию. Является минимальной базовой системой с предустановленными пакетами, добавление инструментария осуществляется с помощи установки из репозитория пакетным менеджером
Приложения ставиться на телефон из Google Playmarket или же из F-Droid, по этому проблем с установкой не должно быть)
Кратенькая справка об Termux:- Установка пакетов из репозитория (apt install package_name "напримерapt install wget" )
- Посмототреть список всех пакетов (pkg list-all)
- Поиск пакета по репозиторию (pkg search php)
- Вывести информацию об пакете(pkg show curl)
- Установка .deb файлов ( pkg install ./file.deb или dpkg -i ./file.deb )
- Другие пакетные менеджеры c которыми умеет работать termux:
- NodeJS (npm)
- Python (pip)
- Perl (cpan)
- Ruby (gem)
- Texlive (tlmgr)
- ITS_Pointles (Живая Мечта) - пользовательский репозиторий на базе гитхаб , который включает в себя такие пакеты как
Код:
scipy, r-cran (R language), gcc-7, octave, rustc cargo, gfortran
Для того что бы добавить репозиторий выполните команду :
Код:
Код:
curl -L https://its-pointless.github.io/setup-pointless-repo.sh | sh
(Этот скрипт утсанавливает gnupg на ваш девайс затем загружает и добавляет публичный ключ к вашемуkeychain )
- Auxilus - пользовательский репозиторий , который содержит некоторые самописные утилиты (большинство утилит еще будут добавлены) -
Код:
Код:
pkg install apt-transport-https
echo "deb [trusted=yes] https://Auxilus.github.io/files termux extras" >> $PREFIX/etc/apt/sources.list
pkg update
- cocodevienne - В этом репозитории пользователи размещають свои самописные скриптны на питоне. Туда входят
Код:
cliclac enigma nox pitspy telly
Чтобы добавить:
Код:
Код:
pkg install apt-transport-https
echo "deb [trusted=yes] http://cocodevienne.gitlab.io/aptpackages/termuxpackages termux extras" >> $PREFIX/etc/apt/sources.list
pkg update
Настраиваем свой термукс под себя
И так со справкой немного ознакомились, для более подробной информации можете почитать на офф. сайте termux. Давайте приступим к базовой настройки нужного инструментария.
Первым делом обновимся и поставим tsu (Termux SU ) , который нам возможно понадобиться для работы от рута. ( По умолчанию Termux запускаеться под обычным юзером, но если мы захотим поставить Java - прийдется воспользоваться рут доступом)
Код:
Код:
apt update
apt install tsu
tsu
Далее следует установить
OpenSSH
Код:
Termux может работать как в
режиме клиента по протоколу SSH так и в
режиме сервера. Как клиент я буду использовать его для подключение к своим VPS серверам, а как сервер я его использую хотя бы один раз с целью удобной настройки необходимых инструментов ( так как с клавиатуре на компьютере намного удобнее выполнять настройку конфигов и вводить комманды нежели с сенсорной клавиатуры телефона)
Но сразу хочу заметить, что Termux
не поддерживает парольную аутентификацию по SSH и поэтому нам будет
нужно сгенерировать SSH ключи (делается это командой
):
Запуск ssh-сервера осуществляется командой sshd после чего на порту 8022 открывается порт для подключения.
Далее, что бы подключиться к нашему телефону по SSH в среду Termux, нам необходимо добавить ssh публичный ключ нашей хостовой машины ( в моем случае это Windows , ключ был создан в программе BitVise-SSH) в файл
Код:
~/.ssh/authorized_keys
. Сделать это можно разными способами, можно просто скопировать его на SD карту и копировать далее его в нашу папку термукса. Я же сделал простым выкачиванием с хостовой машины по http:
Далее просто подключаемся по SSH на наш телефон:
Теперь настройку проводить куда удобнее) Идем дальше.
Давайте поставим curl и установим oh-my-zsh для termux ( Почему zsh а не баш , ну как по мне , то zsh имеет разные фифтиплюшки которые упрощают работу в консоли, например более гибкая табуляция и просто приятный вид))
Код:
Код:
apt install curl
bash -c "$(curl -fsSL https://git.io/oh-my-termux)"
Далее для работы с файлами , как локально так и удаленно (например перемещение файлов на VDS сервер) на понадобиться файловый менеджер. Мне очень нравиться для этих целей mc (Midnigt Commander) - он умеет передавать файлы по SFTP
Для примера работы mc давайте что то скачаем с VDS сервера, но сперва давайте закинем на VPS ssh ключ , что бы не вводить каждый раз пароль при подключении ( да и если вы не пользуетесь паролем - лучше его отключить и ходить по ссх ключам )
Делается это очень просто , команда ssh-copy-id закинет наш паблик кей на удаленный сервер, но для первого подключения понадобиться ввести пароль.
Так же для удобства можно создать алиас на быстрый коннект в VDS в конфиге zsh ( просто добавить наш алиас в конец файла
) Алиасы позволяют нам сокращать команды. Выглядит это так:
Код:
Код:
ssh-copy-id root@ip_address
создаем алиас vdscon для поключения к VDS
Код:
Код:
в файле ~/.zshrc пишем в конце файла
alias vdscon='ssh root@xxx.xxx.xxx.xxx'
сохраняем
обновляем конфиг zsh и запускаем алиас
Код:
Код:
source ~/.zshrc
vdscon
Давайте теперь посмотрим как работает MC , выкачаем с VDS тему для zsh:
А ну еще можно добавить для красоты всякие фифтиплюшки типо
figlet (не особо нужно) )))
Код:
Код:
apt install figlet
figlet hello bro
Обзор Пентест Инструментов
Ну первым делом установим и репозиториев
nmap
Код:
и проверим на домашнем роутере:
Также в репозиториях есть и брутфорс
Hydra
Код:
Так же прекрасно устанавливается и метаслоит
SQLmap ставится уже с гит-репозитория:
Код:
Код:
- apt update && apt upgrade -y
- apt install git -y
- git clone https://github.com/sqlmapproject/sqlmap
- cd sqlmap
- apt install python -y
- chmod 777 sqlmap.py
- python sqlmap.py
Так же возможно пригодиться скрипт для брута хешей
HashBuster:
Код:
Код:
- apt update && apt upgrade -y
- apt install python2 && apt install git -y
- git clone https://github.com/UltimateHackers/Hash-Buster
- cd Hash-Buster
- python2 hash.py
Так же хочу познакомить с фреймворком для сбора информации
RedHawk
работает он на php и довольно богат на функционал:
Код:
Код:
[*]apt install python && apt install git -y[*]git clone https://github.com/Tuhinshubhra/RED_HAWK[*]cd RED_HAWK[*]apt install php -y[*]php rhawk.php
Ну вообщем этот список как вы поняли можно продолжать довольно таки долго)
ВЫВОДЫ
Ну вот вы прочитали всю эту статью и задались вопросом:
"Зачем этот termux когда есть Kali Nethunter и там все есть?"
Я отвечу так:- Альтернатива Kali NetHunter
- Kali Nethunter не идеально портируется на всех устройствах
- Termux поддерживает NPM , PIP , CMAN , GEM пакетные менеджеры , что делает его универсальным терминальной средой для андроид устройств ( Он может запускать много скриптовых утилит благодаря этому)
- И да, он умеет портировать Kali Nethunter в chroot среде)
Код:
Код:
[*] apt update && apt upgrade[*] git clone https://github.com/Hax4us/Nethunter-In-Termux.git[*] cd Nethunter-In-Termux[*] chmod +x kalinethunter[*] ./kalinethunter[*]./startkali.sh
Видео к статье: