Как сделать свое приветствие в termux
Мы поговорим о возможностях Termux и его настройки с точки зрения пентестера.
Что же такое Termux? И что он умеет ?
Termux - это эмулятор терминала с chroot средой Linux , которое работает без root доступа, так и с ним по требованию. Является базовой системой с предустановленными пакетами, добавить инструментарий можно установкой из репозитория. Termux ставится на телефон из Google Play или же из F-Droid.
Cправка об Termux
- Поиск пакета по репозиторию (pkg search php)
- Установка пакетов из репозитория (apt install package_name "например apt install wget" )
- Вывести информацию о пакете (pkg show curl)
- Посмотреть список пакетов (pkg list-all)
- Установка .deb (dpkg -i ./file.deb pkg или install ./file.deb)
- Другие пакетные менеджеры c которыми умеет работать termux:NodeJS (npm)
- Perl (cpan)
- Python (pip)
- Ruby (gem)
- Texlive (tlmgr)
- ITS_Pointles - пользовательский репозиторий на базе GitHub, включающий в себя scipy, gcc-7, r-cran (R language), octave, rustc cargo, gfortran. Для того что бы добавить репозиторий :
- (Этот скрипт устанавливает gnupg на ваш телефон, после загружает и добавляет публичный ключ к вашему keychain)
- Auxilus - пользовательский репозиторий , который содержит некоторые самописные утилиты
echo "deb [trusted=yes] https://Auxilus.github.io/files termux extras" >> $PREFIX/etc/apt/sources.list
cocodevienne - пользователи размещают свои скрипты на Python (cliclac enigma nox pitspy telly)
Что бы добавить :
echo "deb [trusted=yes] http://cocodevienne.gitlab.io/aptpackages/termuxpackages termux extras" >> $PREFIX/etc/apt/sources.list
Настройка Termux
Приступим к настройке базового инструментария.
Обновимся и поставим tsu (Termux SU), если захотим поставить Java - придется воспользоваться root доступом.
Установим OpenSSH
Termux может работать как в режиме сервера так и в режиме клиента по протоколу SSH.
Termux не поддерживает парольную аутентификацию по SSH и по этому генерируем SSH ключи
Запуск ssh-сервера осуществляется командой sshd после чего на порту 8022 открывается порт для подключения.
Чтобы подключиться к телефону по SSH необходимо добавить ssh публичный ключ нашей хостовой машины (в моем случае это Windows, ключ был создан в программе BitVise-SSH) в файл ~/.ssh/authorized_keys.
Мы уже рассказывали, как сделать хакерский смартфон с помощью Termux и Kali. Сегодня я покажу как устанавливать пакеты в Termux.
Termux — простой и удобный терминал, дающий многие возможности среды Linux, который позволяет исполнять команды в подходящей среде и не возиться с предварительной настройкой окружения.
Как установить пакеты в Termux
Установить Termux можно разными способами, самый простой — из Google Play.
Теперь установим некоторые важные базовые инструменты, которые необходимы для установки пакетов.
Обновление pkg
Установка всех необходимых версий Python
Установка pip
Установка git
Установка wget
Установка пакетов в Termux
Можно приступать к работе и устанавливать пакеты в Termux. За установку пакетов отвечает команда pkg install .
Удаление пакетов из Termux
С помощью следующей команды, вы можете удалить пакеты из Termux.
Пакет будет удален, но останутся файлы конфигурации. Если нужно их удалить, используйте команду apt purge .
Команда List отобразит все установленный пакеты.
Обновление пакетов в Termux
Перед установкой нового пакета настоятельно рекомендуется обновить установленные пакеты. Обновить пакеты можно с помощью команды:
Я рекомендую проверять наличие обновлений минимум раз в месяц или перед установкой новых пакетов.
Шпаргалка по командам
pkg autoclean | Удаление устаревших файлов .deb из кеша. |
pkg clean | Удаление всех файлов .deb из кеша. |
pkg files пакет > | Список файлов, установленных указанным пакетом. |
pkg list - all | Список всех доступных пакетов. |
pkg list - installed | Список установленных пакетов. |
pkg reinstall пакет > | Переустановить пакет. |
pkg search запрос > | Поиск пакета. |
pkg show пакет > | Получение информации о пакете. |
Репозитории Termux
Termux не поддерживает пакеты из репозиториев Debian, Ubuntu и других дистрибутивов Linux. Поэтому не пытайтесь поместить их в свой sources.list или вручную устанавливать файлы .deb.
Официальный репозиторий:
Неофициальные репозитории:
Репозиторий | Команда добавления репозитория |
---|---|
Игровой | pkg install game - repo |
Обучающий | pkg install science - repo |
Для root | pkg install root - repo |
x11 пакеты (Android 7 и выше) | pkg install x11 - repo |
бета пакеты (Android 7 и выше) | pkg install unstable - repo |
На этом все. Теперь вы знаете, как устанавливать и управлять пакетами в Термукс.
Многие продвинутые пользователи android зачастую так или иначе начинают работать с операционной системой так, как если бы они работали с обычным linux-дистрибутивом. Запущенный терминал, а иногда и ssh-сессия, использование линуксовых утилит, а иногда даже и запуск окружения рабочего стола. Запуск сервисов также является типовой задачей при таком использовании устройства. Под катом описываю, как запускать сервисы в termux на android.
Как это работает
Все сервисы внутри termux работают благодаря runit. Это замена стандартной системы инициализации, похожей на init. В некоторых дистрибутивах используется как родная система управления сервисами. Подробнее но в общих чертах о том что это такое можно прочитать здесь. А вот здесь находится вики-страница termux-services, это как раз то что потребуется.
Создание сервиса
Прежде всего необходимо установить пакет.
Далее необходимо создать каталог и файлы в нем, описывающие сервис. В моем случае каталог с описанием всех сервисов /data/data/com.termux/files/usr/var/service. Если посмотреть содержимое, там уже может находиться описание некоторых сервисов.
Создаем здесь папку с названием сервиса и переходим в нее.
И описываем в нем то, как будет запускаться сервис.
Первая строчка в комментарии это путь к оболочке, далее сама команда.
Это самый простой случай, когда необходимо просто запустить процесс с параметрами. Возможны и более сложные сценарии. Например, запуск nginx выглядит следующим образом.
Но в целом идея должна быть понятна: runit возмет именно этот файл за инструкцию как запускать сервис. Сохраняем изменения в файле и выходим (Ctrl+x и Enter). Далаем файл исполняемым.
И теперь можно запускать сервис
Если все прошло без ошибок (а если они будут вы увидите их в выводе), то процесс можно будет найти в списке
Также рекомендую включить для termux блокировку от глубокого сна.
Необходимо подтвердить блокировку на самом устройстве (также как при подключении к ПК через ADB). Это для того, чтобы устройство не уходило в сон, а вместе с ним и все запущенные в окружении termux процессы.
ps – вывести ваши текущие активные процессы
top – показать все запущенные процессы
kill pid – убить процесс с id pid
killall proc – убить все процессы с именем proc
bg – список остановленных и фоновых задач; продолжить выполнение остановленной задачи в фоне
fg – выносит на передний план последние задачи
fg n – вынести задачу n на передний план
Права доступа на файлы
chmod octal file – сменить права file на octal, раздельно для пользователя, группы и для всех добавлением:
4 – чтение (r)
2 – запись (w)
1 – исполнение (x)
Примеры:
chmod 777 – чтение, запись, исполнение для всех
chmod 755 – rwx для владельца, rx для группы и остальных.
Дополнительные опции: man chmod.
Работа с SSH
ssh user@host – подключится к host как user
ssh -p port user@host – подключится к host на порт port как user
ssh-copy-id user@host – добавить ваш ключ на host для user чтобы включить логин без пароля и по ключам
Поиск
grep pattern files – искать pattern в files
grep -r pattern dir – искать рекурсивно pattern в dir
command | grep pattern – искать pattern в выводе command
locate file – найти все файлы с именем file
Системная информация
date – вывести текущую дату и время
cal – вывести календарь на текущий месяц
uptime – показать текущий аптайм
whoami – имя, под которым вы залогинены
uname -a – показать информацию о ядре
cat /proc/cpuinfo – информация ЦПУ
cat /proc/meminfo – информация о памяти
man command – показать мануал для command
df – показать инф. о использовании дисков
du – вывести “вес” текущего каталога
free – использование памяти и swap
whereis app – возможное расположение программы app
which app – какая app будет запущена по умолчанию
tar cf file.tar files – создать tar-архив с именем file.tar содержащий files
tar xf file.tar – распаковать file.tar
tar czf file.tar.gz files – создать архив tar с сжатием Gzip
tar xzf file.tar.gz – распаковать tar с Gzip
tar cjf file.tar.bz2 – создать архив tar с сжатием Bzip2
tar xjf file.tar.bz2 – распаковать tar с Bzip2
gzip file – сжать file и переименовать в file.gz
gzip -d file.gz – разжать file.gz в file
Сеть
ping host – пропинговать host и вывести результат
whois domain – получить информацию whois для domain
dig domain – получить DNS информацию domain
dig -x host – реверсивно искать host
wget file – скачать file
wget -c file – продолжить остановленную закачку
Читайте также: