Termux root repo что это

Termux root repo что это Техника

Шаг 3

Настроим Termux, установим дополнительные утилиты

Прежде всего давайте установим bash-completion (сокращалку, волшебный-Tab, кто как называет). Суть утилиты в том что, вводя команды вы можете нажав Tab воспользоваться автозаполнением. Для установки пишем:

apt install bash-completion # Работает автоматически по нажатию Tab

Ну что за жизнь без текстового редактора с подсветкой кода (если вдруг захочется покодить, а оно захочется). Для установки пишем:

apt install vim
# Тут уже можно пользоваться автозаполнением - пишем ‘apt i’ теперь нажимаем Tab и наша команда дописывается до  ‘apt install’.

Пользоваться vim`ом не сложно, чтобы открыть файл 1.txt (если его нет, то он создастся) пишем:

vim 1.txt
#   Чтобы начать вводить текст нажмите ‘i’
#   Чтобы закончить вводить текст нажмите ESC
#   Перед вводом команды должно быть двоеточие ‘:’
#   ‘:q!’ – выйти без сохранения
#   ‘:w’ – сохранить
#   ‘:wq’ – сохранить и выйти

PS1 = "\[\033[1;33;1;32m\]:\[\033[1;31m\]\w$ \[\033[0m\]\[\033[0m\]"

Для простоты и наглядности воспользуемся vim`ом:

cd
vim .bashrc

Вписываем строку, сохраняем и выходим.

echo PS1='"\[\033[1;33;1;32m\]:\[\033[1;31m\]\w$ \[\033[0m\]\[\033[0m\]"'>>.bashrc

# Обратите внимание, что для отображения двойных кавычек 
# всю строку с ними нужно заключить в одинарные кавычки.
# В этой команде стоит ‘>>’ потому файл будет дополнен, 
# чтобы переписать  ‘>’.

В файл .bashrc так же можно вписать alias’ы – сокращения. Например мы хотим одной командой проводить update и upgrade сразу. Для этого в .bashrc добавляем строку:

alias updg = "apt update && apt upgrade"

Синтаксис alias’ов таков:

alias <сокращение> = "<перечень команд>"

Итак, добавляем сокращение:

echo alias updg='"apt update && apt upgrade"' >> .bashrc

Вот еще несколько полезных утилит

Ставить через apt install

man — Встроенная справка для большинства комманд.
man %commandname

imagemagick — Утилита для работы с изображениями(конвертирование, сжатие, обрезка). Поддерживает много форматов включая pdf.Пример: Сконвертировать все картинки из текущей папки в один pdf и уменьшить их размер.
convert *.jpg -scale 50% img.pdf

ffmpeg — Один из лучших конвертеров аудио/видео. Инструкцию по использованию гуглите.

mc — Двухпанельный файловый менеджер наподобие Far.

Впереди еще немало шагов, главное что движение начато!

Установка и настройка среды Termux

1. Скачиваем и устанавливаем приложение Termux из магазина приложений F-droid. Termux в магазине приложений GP больше не поддерживается и не обновляется с осени 2020 года, вся разработка осуществляется на Github, а релизы выкладываются в F-droid/Git. Причины с рекурсией описаны здесь.

3. Установка ПО из менеджера пакетов.

$ pkg list-all #вывести на печать список всех Termux пакетов (альтернатива apt), только в официальном репозитории их > 1.5k, не заблудитесь
$ apt update && pkg upgrade && pkg install python wget curl nano git tsu cronie grep printf coreutils lsof android-tools gawk nodejs #ключевой момент: обновить/установить/расширить необходимый минимум утилит, другие пакеты выбирать и ставить по мере необходимости.

У Termux имеется приятная особенность угадывания: если пользователь запускает какую-либо утилиту в т.ч. с опечаткой, которая у него не установлена, но присутствует в репозитории, то юзер получает уведомление «предложки» в терминале: что похожего имеется в репо и что пользователю необходимо доставить.
$ sqget #опечатка, ввод ошибочной команды
$ pkg show «предложка» #получить мета-информацию о пакете.

sqget-пакета не существует и Termux пытается угадать, что пользователю требуется.
sqget-пакета не существует и Termux пытается угадать, что пользователю требуется.

Пример решения проблем с обновлением/установкой пакетов

Если пользователь Termux сталкивается с ошибкой при ‘pkg update’ обновлении пакетов из коробки (как повезёт), например из-за цензуры в стране, и/или из-за того, что Termux давно не обновлялся на устройстве пользователя (или того хуже имеется проблема с разными подписями: Termux ранее был установлен с GP/Github и обновлён/переустановлен с F-droid); из-за компрометации/смены ключей разработчиков; смены хостинга, то удаление/установка Termux-приложения не поможет. Частный Гугл-случай: обязательно нужно вычищать с устройства все ранее установленные termux-сервисы:: termux api; termux boot; termux style; termux widget, а также очищать кэш и данные приложения перед удалением версии Termux GP/Github. После же обычного удаления Termux-приложения часть Termux-среды остаётся на устройстве пользователя и в таком случае проблем не избежать.

Первые три скриншота — описание проблемы обновлений Termux (в данном примере проблема обновлений пакетов навязана пользователю из-за internet censorship). Нижние 2 скриншота — решение: применение команды: «termux-change-repo». Данная команда предоставляет пользователю выбрать альтернативное зеркало репозитория: изменить источник обновления пакетов. Если с каким-либо репозиторием проблемы, то пользователь всегда может его заменить на дублёр с другого хостинга.
Первые три скриншота — описание проблемы обновлений Termux (в данном примере проблема обновлений пакетов навязана пользователю из-за internet censorship). Нижние 2 скриншота — решение: применение команды: «termux-change-repo». Данная команда предоставляет пользователю выбрать альтернативное зеркало репозитория: изменить источник обновления пакетов. Если с каким-либо репозиторием проблемы, то пользователь всегда может его заменить на дублёр с другого хостинга.

$ termux-change-repo
Выбрать получение обновлений (для всех репо, их может быть больше одного) с другого хостинга, которое не цензурируется вашим провайдером и не сломано. Внимание! Выбирать репо-зеркало пробелом, подтверждать энтером. Эта проблема и ее решение описана в документации, но как видите некоторые юзеры об этом и не догадываются и регулярно задают одни и те же по смыслу вопросы на профильных форумах, обычно такие пользователи вычисляются по количеству минусов под своим вопросом.

Если повнимательнее присмотреться к доменам у зеркал, то выяснится, что ~50% серверов располагаются не на Швейцарских мощностях и не на островах северной Европы, а в Китае/.cn. Следы ведут к университетам их преподам и волонтёрам. Вероятно, пользователь может испытать смешанные чувства защитной реакции и выбрать оставшееся, нала-ла-ладом дышащее, но в другой локации зеркало репозитория. Зря. Технология подписи отработана десятилетиями. Репозиторий/пакеты Termux подписаны разработчиком, и если, например, в Китайском зеркале: репозитории/пакете появится что-то иное или модифицированное «старшим братом», то синхронизация/установка не пройдёт, а пользователь получит ошибку (примечание — при условии, что приватный ключ/пароль для подписи не были скомпрометированы и не ходили по рукам, например, если они случайно не выкладывались/удалялись с кодом). Иными словами, азиаты с материка посодействовали Termux-проекту больше, чем вы думаете, т.е. держать нос по ветру нужно, но в другом направлении.

Сам Termux свободный и развивается на пожертвования/ресурсы сообщества. Затраты на домены, хостинг, зеркала или драгоценное время не всегда окупаются. И когда в очередной, 13-й раз ты будешь применять команду «termux-change-repo", то не ругайся, а задумайся о поддержке, волнующего, настоящего, киберпанковского IT-проекта.

4. Кастомизация Termux (необязательно).

4.2. Настройка приветствия и приглашающей строки (необязательно).

На скриншоте приветствие и приглашающая строка Termux. Слева — настройки по умолчанию, справа — кастомные настройки пользователя.
На скриншоте приветствие и приглашающая строка Termux. Слева — настройки по умолчанию, справа — кастомные настройки пользователя.

Для настройки кастомной, приглашающей строки пользователю необходимо описать переменную «PS1» в файле домашнего каталога ~/.bashrc

$ nano ~/.bashrc -$ #ключ «-$» заставляет nano визуально переносить текст на новую строку. Набиваем файл следующим содержимым:

HISTSIZE=10000 #сохранять историю команд
HISTFILESIZE=1000 #размер истории в текущей сессии

export HISTTIMEFORMAT='%d.%m.%Y %H:%M:%S' #отображать дату введённой команды в истории (проверка --> $ history)

PS1="\[\033[1;34m\]┌──\[\033[0m\]\[\033[1;31m\]boss\[\033[0m\]\[\033[;34m\]──[\[\033[0m\]\[\033[1;35m\]\w\[\033[0m\]\[\033[;34m\]]\[\033[0m\]\n\[\033[1;34m\]└─❕\[\033[0m\]" #настройка переменной приглашающей строки, как у автора

export EDITOR=nano #сделать nano — редактором по умолчанию

#«ctrl + o» сохранить; «ctrl + x» выход из nano.

$ bash #обновим настройки.

Для тюнинга приветствия (один из вариантов) пользователю необходимо отредактировать файл: «/data/data/com.termux/files/usr/etc/motd».
Если у пользователя имеются рут-права, то редактирование файла «motd» из-за общего доступа очень простое, например, с помощью Total Commander  в связке с QuickEdit/Acode. Если же рута нет, то
$ nano ../usr/etc/motd #две точки означают подняться на каталог выше из текущей/домашней директории.

Всё что пользователь набросает в «motd» каждый раз будет отображаться при запуске Termux. В моём случае с помощью утилиты figlet сгенерировал текст «Код Доступа Рай», добавив строкой ниже смайлики цветных кружков, предназначение которых не для красоты, а для индикации масштаба, и всё это записал в файл «motd».

4.3. Настройка размера отображения вывода в CLI (крайне желательно).
По умолчанию Termux отображает макс. 2000 строк, что является невероятно низким значением рендеринга по отношению к мощностям гаджетов. Например, пользователь сильно ограничен при просмотре баз данных, словарей, работой с html/текстами и т.д. Чтобы проще было понять проблему её нужно воспроизвести.

Код:
$ seq 2100 #генерация числовых строк от 1..2100 и вывод их на печать. Попробуйте прокрутить CLI до самого верха и вы остановитесь на числе/строке 100 (всё что сгенерировано до числа 100 пользователь не увидит, а увидит строки чисел от 100..2100, вот оно ограничения в 2к строк).

В прошлом году я обратился к разработчикам Termux с предложением расширить ограничения терминала с 2к строк до 5-50к. строк. Проведя тесты, разработчики поддержали предложение и в Termux с v0.114+ доступна пользовательская настройка на рендеринг строк в termux-конфиге.

Код:
$ nano -$ .termux/termux.properties #конфиг, в котором настраиваются некоторые вещи: например, рендеринг строк, клавиши виртуальной клавиатуры/громкости, кликабельность ссылок в CLI, поля и другое. Добавить строки в файл:

terminal-transcript-rows=10000 #отображать в CLI 10к строк вместо 2к (доступно с v0.114+)
terminal-onclick-url-open=true #понимать url(s) в CLI (доступно с v0.118+).

Некоторые полезности

Ваш рай — это только сон.

Termux Widget позволяет запускать termux-скрипты в касание с рабочего стола по ярлыку либо по виджету.

Один из примеров: вывод времени во всплывающем уведомлении с момента вкл. гаджета::

$ nano "./.shortcuts/время вкл.sh"

#!/data/data/com.termux/files/usr/bin/sh
#условия для моего скрипта: Termux/Widget/Api с f-droid; $ pkg install termux-api
echo ⌛время_с_момента_вкл: $(uptime) | awk '{gsub(",", "") ; print $1,$4,$5,$6}'| termux-toast -c green

Зажать ярлык «Termux:Widget» на рабочем столе и в меню выбрать «Виджеты». На рабочем столе появится виджет с именами скриптов, или вместо виджета можно выбрать «Ярлык/Иконку» на каждый скрипт.

Примеры: ярлык/виджет
Запуск скрипта в касание по ярлыку.
Запуск скрипта в касание по ярлыку.
Запуск скрипта из виджета: при выборе скрипта тапом (время вкл.sh) виджет открывает Termux, выполняется цель и закрывается Termux.

Обратите внимание, что скрипты в фоне хорошо работают на Android <= 9. На Android 10+ необходимо разрешить использование ‘поверх других окон’.


Termux root repo что это

Не обязательно испытывать неудобства tmux/screen, для того чтобы открыть параллельно новую сессию в терминале, просто потяните за левую вертикальную шторку вправо, живой пример см. видео про tor из статьи, а щипок в CLI изменяет масштаб.

Создание alias иным способом, отличным от далеко вышеописанного способа где-то в статье.

printf "alias his='history | grep -i '" >>.bashrc
printf "alias ipls='curl ipinfo.io/ip'" >>.bashrc
Bash && alias #проверка всех alias в среде.

‘Али-Баба и сорок разбойников’ не только завладели чувствительными ПД, приложение яростно фонит. Усмиряем:

tsu #активируем ROOT
ls /data/data/ | grep ali # или $ pm list packages | grep ali ##ищем полное название пакета AliExpress
#>>> ru.aliexpress.buyer
pm disable ru.aliexpress.buyer #заморозить приложение на длительной дистанции
#>>> Package ru.aliexpress.buyer new state: disabled
pm enable ru.aliexpress.buyer #разморозить приложение, когда идём закупаться
#Глубинный смысл в том, чтобы автоматизировать контроль в один клик, а не набивать каждый раз команды.

$ am start -n com.android.documentsui/.files.FilesActivity #откроет из Termux стандартное приложение просмотрщик файлов/проводник. Аналогично можно из Termux запускать браузер с переходом по ссылке криво-ограничено по Гугловски и п.д.:
$ am start -a android.intent.action.VIEW https://habr.com/ru/post/652633/
Упрощение: открыть любой файл/любым приложением, например, из каталога «download».

#единожды:
pkg install termux-tools
cd && echo "allow-external-apps=true" >> .termux/termux.properties #разрешить Termux открывать стороннее.

#открывать в будущем что угодно:
termux-open storage/downloads/файл

Косвенно-скоростной тест терминала:

timeout 1 yes ne555 CC BY-SA 4.0 https://habr.com/ru/post/652633/ > testik
wc -l testik && head -n 66 testik
# "yes" генерирует бесконечный вывод строк: автора материала, лицензии и url-статьи
# "timeout" прерывает выполнение команды через 1 секунду. ">" записывает поток в файл, а не печатает в CLI
# "wc" подсчитывает кол-во строк. "head" выводит первые 66 строк на печать из файла
# в начале команды можно подсавить "time" и получить реальное время исполнения задачи.
Результат
Ввод-вывод полтора млн. строк в секунду с учётом 'terminal-transcript-rows=10000' — недурно.

Ввод-вывод полтора млн. строк в секунду с учётом ‘terminal-transcript-rows=10000’ — недурно.

$ cal 1861 #быстро прочекать дату. Диапазон времени от н.э. — до армагедона.

Календарь

по умолчанию календарь не подчиняется международному стандарту ISO 8601 и выводит начало недели по английски: с воскресенья. Для отображения недели с понедельника ключ «-m»:

$ cal 1861 -m

Крепостное право отменили в воскресенье.
Крепостное право отменили в воскресенье.

Помянуть английское величие:
$ cal sep 1752

$ pkg install libqrencode zbar #установка пакетов для кодирования и декодирования QR-кодов:
$ qrencode -o storage/downloads/qr.png "ne555 CC BY-SA 4.0 https://habr.com/ru/post/652633/» #кодируем
$ zbarimg storage/downloads/qr.png #декодируем.

Дополнительно:  Как сменить mac адрес на android без root прав
QR-пруф
Termux root repo что это

OSM cli карта & гео-npm-cli-карта

Географическая карта, поддерживающая рендеринг вплоть до зданий и лесных дорог (без троп):

Пруф
На Герои меча и магии 2 похожа?!

А вот эта гео-cli-утилита примечательна тем, что её код не обновлялся 7 лет, но она продолжает функционировать так, как и задумывалась.

Termux root repo что это

Установка termux-api с f-droid, далее:

$ pkg install termux-api #api установлен

$ termux-clipboard-get #вывести содержимое буфера обмена

$ termux-clipboard-set ne555 CC BY-SA 4.0 https://habr.com/ru/post/652633/ #наполнить/затереть буфер обмена своим текстом

$ termux-contact-list #вывести книгу контактов

$ termux-sms-list #прочитать все смс-ки

$ termux-battery-status # вывести информацию о батарее

$ termux-camera-photo -c 1 storage/downloads/фото.jpg #сделать фото с камеры (ключ ‘-с’ принимает id камеры) и сохранить в загрузках

Как узнать к какому пакету принадлежит та или иная утилита?

Касается утилит штатного менеджера пакета — apt (ни pip, ни git, ни npm). Как я показал в начале статьи: достаточно сделать опечатку при наборе команды и Termux предложит варианты исправления/пакеты куда входит предполагаемая GNU-утилита, но это работает лишь в «99%» случаях. Классический GNU/Linux способ детектирования, а может и нет, но я так делаю:

$ whereis mkdir #отобразит абсолютный путь к исполняемому файлу утилиты (на примере «mkdir-утилиты»): «/data/data/com.termux/files/usr/bin/mkdir»
$ dpkg -S /data/data/com.termux/files/usr/bin/mkdir #укажет принадлежность утилиты к пакету: coreutils

$ whereis whereis #отобразит /data/data/com.termux/files/usr/bin/whereis
$ dpkg -S data/data/com.termux/files/usr/bin/whereis #укажет util-linux

$ dpkg -S $(find /data/data/com.termux/files/usr/bin/) #проверить принадлежность «всех» утилит к пакетам.

Чек-лист
Termux root repo что это

$ ctrl + d #выход из терминала.

Если флэшка была отформатирована повторно или заменена, то симлинк на неё будет нерабочим: «storage/external-1/». Исправляем и создаём симлинк на корень флэшки:

cd #перешли в домашний каталог.
termux-setup-storage #повторно передёрнуть права и обновив симлинки
ls -shla storage/external-1 #получаем идентификатор флэшки, что-то вроде этого: 'B42E-C917'
ln -s /storage/B42E-C917/ flash #создаём симлинк на флэшку
# в домашнем каталоге появляется наша флэшка и что самое главное — её корень, а не "storage/B42E-C917/Android/data/com.termux/files"
ls flash #проверяем доступ к флэшке.
ещё про флэш в человекочитаемом виде (требуется root)
Termux root repo что это

Утилита «duf» не подскажет конкретно по ФС флэшки, поэтому для манипуляции с flash задействуем root-права с утилитами: «blkid» и «parted».

С каждым новым релизом Android ¶ Termux сталкивается с новыми ограничениями, теряя функциональность: невозможно прочитать серийные номера; открывать локальные html файлы; нетривиально управлять сетевыми соединениями; фоном отрабатывать скрипты и т.д.. Солидарен с сопровождающими Termux/среду, которые демонстративно не согласились с обновлённой политикой Google, уйдя на F-droid, ради сохранения функциональности софта и философии GNU/Linux, где терминал является их центральной и неотъемлемой частью.

Кроме всего вышеописанного, Termux популяризирует GNU/Linux среду т.к. в нём немало UNIX-утилит, что является хорошей тренировочной базой для изучения GNU/Linux пользователями новичками со своего Android девайса. Если после прочтения аутентичного лонгрида русскоязычные читатели больше не считают Termux лишь жалкой обвязкой над ч1, ч2, ч3, ч4, ч5 под свободной лицензией, а для посетителей Хабра опубликовано расширенное издание. На момент публикации в работе продемонстрированы техники и приёмы, например, JtR или OSINT по хабраюзерам, которых нет ни в Рунете, ни в сабреддите Termux, ни в зоне .cn. Читатель, проникнувшийся данной масштабной работой, может поддержать автора и его техничный вклад баночкой пивка, спасибо.

Yaspeller

Казнить ¶ нельзя ¶ помиловать.

Как было выше написано: сторонний CLI-git-софт — это не только python-скрипты. Например, установим в Termux полезный для авторов-редакторов npm-пакет yaspeller, написанный на JS русскоязычным разработчиком, который позволяет проверять ru-en орфографию локальных txt-данных, так и данных по url в два касания.

npm install yaspeller -g
yaspeller https://habr.com/ru/post/647267/ #указываем любой url для проверки и выявления орфографических ошибок.
Yaspeller подозревает/обнаруживает орф.ошибки, а в скобках справа предлагает исправления.

Yaspeller подозревает/обнаруживает орф.ошибки, а в скобках справа предлагает исправления.

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

В моём топ-списке пакетов этот инструмент, возможно, самый популярный. Нет, не для того чтобы устроить кому-либо очередную IT-порку, а для поддержания качества собственных материалов.

​Визуализация данных

Всё зависит от того, что вы визуализируете.

Povray — это непростой для работы пакет: CLI-программа трассировки лучей, проще говоря, создание графики на основе данных. Созидать Огни Святого Эльма мне не по плечу, но кое-чему я всё же научился: единственное применение povray-волшебства — это обработка GPS/локации. На соревнованиях в которых участвую — оживляю ландшафт.

Код:
$ pkg install povray
$ povray data.pov #data pov конфиг/данные, которые содержат GPS-координаты; координаты затенения/осветления; srtm-высоты и другие параметры.

Termux root repo что это
Примечание — изображение пришлось ужать, потеряв качество, чтобы Хабра-редактор принял его.
Примечание — изображение пришлось ужать, потеряв качество, чтобы Хабра-редактор принял его.

Povray «оживил» osm-ландшафт (3D): низменности и высоты теперь видны на основе реальных srtm-данных, зеленным – наложен GPS-маршрут (старт и финиш), синим – контрольные точки (пункты питания на соревнованиях). А уж какой это «импресионанте»: петлять GPS-треком среди 3D-гор, воодушевляет автора на созидание отдельной статьи для спорт-сообщества. Ещё больше крутой визуализации, созданной мной в Termux в т.ч. при помощи povray, по ссылке.

Дорогой Иисус скоро встретимся. Твоя подружка, Америка.

Wordcloud — это одновременно и CLI-утилита и питоничная библиотека для построения облака слов от специалиста мирового класса в области машинного обучения & data science, и за плечами которого преподавательская деятельность; работа в Amazon и Microsoft. Проблема wordcloud в том, что её предназначение двойственно: для эстетики и для математики. С помощью ключей пользователь смещает баланс либо в сторону математики, жертвуя красотой и размером выходного изображения, либо в сторону эстетики, жертвуя статистикой и реальным положением вещей. И всё же я поместил эту подтему в своей работе в раздел «визуализация данных», а не «data science» т.к., ИМХО, утилита не требует от пользователя навыков программирования/вышмата и доступна любому юзеру по способностям созидать эффектную графику, что также является заслугой молодого учёного.

Немного про математику. Например, если слово «А» употребляется в 10 раз чаще слова «Б», то и размер его должен быть 10:1. На практике же, при наименьшем кегле 4 слова «Б», слово «А» кеглем 40 может не уместиться в контуре изображения или в целом размере изображения (когда в задаче оказывается много слов с такой условной разницей: 10:1). И тут у пользователя появляется выбор: всё уместить, сделать красиво, но на выходе получить изображение в десятки или сотни Мб, которое не годится для печати; либо маневрировать. Например, отношения слов 10:1 визуально увеличивать не пропорционально, а с меньшим коэффициентом масштабирования, жертвуя реальным положением вещей, т.е. математикой, чем, кстати, по умолчанию и занимается wordcloud. Прибегать к стоп-словам.

Мой вариант

Termux root repo что этобиографию С. Кинга и цветное изображение; понуждаю утилиту раскрашивать текст по цвету исходника; указываю «литературный» шрифт (уважил Кинга, но существенно пожертвовал нелишним пространством/размером); выбираю пороховой фон с сильными оттенками лакрицы и маслины (#222222); пренебрегаю математикой в пользу красоты заполнения пространства (—relative_scaling 0); увеличиваю выходное изображение в несколько раз (—scale 3); жертвую некоторыми частыми словами, которые уже присутствуют, но имеют лишь различные окончания — «романов«, «Кинга«, а также выбрасываю союзы, местоимения, предлоги, числа*, спецсимволы* (—stopwords) и заставляю утилиту визуализировать весь текст т.к. по умолчанию обрабатывается лишь 200 слов. Документация по всем ключам утилиты.

Результат: облако слов. Если не все слова различаются в макс.масштабе, то для просмотра скачать картинку на гаджет.
Результат: облако слов. Если не все слова различаются в макс.масштабе, то для просмотра скачать картинку на гаджет.

ИМХО, для статьи получилось красиво, приглушённые цвета и их расположения близки к оригиналу. Однако удавалось генерировать ещё более презентабельное облако слов, но с выходным размером в ~20 Мб, где можно было проследить на руке Кинга и чёрные часы. Увы, overkill image size/no svg. Для ещё большей гармонии я использовал цвета по входной картинке, а обычно применяют один цвет или что-то разноцветно-ограниченное по дефолту (исключение — выбор цветовых карт, используя библиотеку, а не утилиту). В таком случае перед созданием облака слов необходимо жёстко обесцвечивать входное изображение в ЧБ с помощью «Imagemagick», который описан здесь же, в статье.

Недостатки утилиты перед библиотекой: не смотря на авторитетность разработчика и популярность проекта, в утилите не работает заявленный функционал/ключ выбор цветовых карт --colormap для текста; отсутствует возможность сохранять выходное изображение в .svg формате (сохранение в .png), преимущества которого — это меньший размер с колоссальной детализацией, для web. В библиотеке такие недостатки отсутствуют, и кроме того, если использовать WC в качестве lib, то стоит и пощупать pymorphy2 — библиотека, которая приводит RU-слова к начальной форме, например, «романов», «романы» —> «роман».

Одним из любимых инструментов у аналитиков для работы с графиками, который не требует навыков программирования, является ПО gnuplot.

pkg install gnuplot
gnuplot #откроем среду
set terminal png size 1440, 720 #настроим будущее разрешение графика под смартфон
set output "storage/downloads/graph.png" #сохраним будущий график в общедоступном каталоге
plot sin(x) #простейший пример построения графика.

В каталоге «Download» появится картинка синус: graph.png.

Termux root repo что это

В начале статьи я приложил блок-схему «Код доступа Termux» с описанием данной статьи и известил, что она была создана в Termux. Приложенная блок-схема была сотворена в Plantuml.

Код блок-схемы
# Habr
@startmindmap
skin rose
scale 1480*740
title Создано в Termux ©https://habr.com/ru/users/ne555/
*[#lightgreen] **Termux**
** <&audio-spectrum>Мультимедиа
***_ mp3splt
***_ cmus
***_ cava
***_ ffmpeg
***_ imagemagick
***_ chafa
***_ <s>youtubedr</s> => yt-dlp
** <&data-transfer-download>Парсинг данных
***_ curl..wget
***_ примеры
** <&cloud-upload>Автобэкап данных
***_ rclone
***_ 7-zip
***_ cronie
** <&bar-chart>Data Science
***_ numpy
***_ scipy
***_ pandas
***_ matplotlib
***_ jupyter
***_ wordcloud
***_ visidata
** <&envelope-closed>Работа с письмами
***_ mutt
** <&magnifying-glass>OSINT
***_ check_email(s)
***_ check_account(s)
left side
** <&terminal>Программирование на Android
***_ python..brainfuck
** <&layers>Сравнение пакетов
***_ html2text*
***_ links
** <&lock-unlocked>Пентест
***_ сниффинг
***_ скан
***_ брутфорс
***_ дамп
***_ фишинг
** <&shield>Системное администрирование
***_ chattr..nethogs
** <&document>Пользовательское ПО
***_ yaspeller
***_ povray
***_ gnuplot
***_ plantuml
***_ steghide
***_ gpg
***_ tor
** <&wrench>Установка и настройка среды
***_ widget..proot-distro
@endmindmap
Termux root repo что это

Руководство Plantuml частично переведённое на RU.

Создание gif в Termux

В статье читатели видели GIF созданные в Termux. Вот как легко создавать анимацию в CLI:

pkg install ffmpeg #установка популярнейшей кроссплатформенной библиотеки для редактирования/работы с аудиовизуальными данными
ffmpeg -i "/storage/emulated/0/Movies/chess.mp4" -r 15 -vf scale=480:-1 "/storage/emulated/0/Movies/chess.gif" #указываем входной видео-файл, выбираем качество 15 кадров/с, понижаем разрешение по ширине до 480p, а по вертикали автоподгон, сохраняем в gif. chess.gif — gif из статьи.
Termux root repo что это

Удаление пакетов из Termux

С помощью следующей команды, вы можете удалить пакеты из Termux.

Пакет будет удален, но останутся файлы конфигурации. Если нужно их удалить, используйте команду
.

Команда List отобразит все установленный пакеты.

Бесследная проверка существования email

Давайте ощутим азартные эмоции нетсталкеров/владыки OSINT-a: проверив за 50 секунд существует ли у Habr-a почта, например, на Яндексе и Protonmail без отправки писем и лишних следов активности относительно Habr-a.

Для анализа разведданных нам понадобятся два инструмента: Dig в связке с Netcat, которые присутствуют в репозитории Termux.

Дополнительно:  Причины и виды неисправностей ⌨ USB-портов на ноутбуке 💻

Код:
$ pkg install dig netcat-openbsd
$ dig protonmail.com MX

<<>> DiG 9.16.11 <<>> protonmail.com MX;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35040;; flags: qr rd ra ad; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;protonmail.com. IN MX

;; ANSWER SECTION:​
protonmail.com. 315 IN MX 10 mailsec.protonmail.ch.protonmail.com. 315 IN MX 5 mail.protonmail.ch.

Нас интересует ANSWER SECTION MX 5: «mail.protonmail.ch».

Как видим из скриншота: у меня и у Habr-a имеется почта на Protonmail, а вот hosebarero ещё не обзавелся защищённой почтой на Швейцарских мощностях.
Как видим из скриншота: у меня и у Habr-a имеется почта на Protonmail, а вот hosebarero ещё не обзавелся защищённой почтой на Швейцарских мощностях.

Аналогично осинтим ящики на Яндексе без жертв и выкрутасов.

Обновление пакетов в Termux

Перед установкой нового пакета настоятельно рекомендуется обновить установленные пакеты. Обновить пакеты можно с помощью команды:

Я рекомендую проверять наличие обновлений минимум раз в месяц или перед установкой новых пакетов.

[Отредактировано]

~Longread statistics

О подготовке материала

  • 🌶️Ради единственного скриншота «gnuchess» разыгрывал на своём Android в Termux несколько десятков шахматных партий, пока не получил обоюдоострую (угрозы в обе стороны форсированного мата), красивейшую, ничейную позицию.

  • 🌶️Для создания скриншота «программирование» требовалось написать код на 11 ЯП.

  • 🌶️Во имя «imagemagick» я выискивал брак и баги в изображениях от авторитетных источников и нашёл их на Wikipedia.

  • 🌶️Для подготовки скриншота «yaspeller» периодически пинговал Хабр на предмет публикации низкокачественного во всех отношениях материала, чтобы взять его за живой и реалистичный пример.

 А вот до следующего орфографического примера с момента публикации статьи прошло несколько месяцев.
А вот до следующего орфографического примера с момента публикации статьи прошло несколько месяцев.
  • 🌶️Для создания информативного изображения: «описание update/проблемы», содержащей пять скриншотов, мне пришлось прошерстить всю ветку «Termux» на 4pda и всю Wiki на Github-e, а также погрузиться в internet censorship для формирования проблематичной ситуации.

  • 🌶️Ради скринкаста/скриншота «ssh/nmap» я специально арендовал сервер, где развернул дистрибутив OS для пентеста.

  • 🌶️Шесть дефектов до полуночи. При подготовке скриншота «html2text» репортил о баге по утилите разработчику на Github. При обновлении обложки статьи (блок-схема в «Plantuml») тоже репортил баг-репорт разработчикам ПО на Github. Оформлена тройка issues по утилите «visidata». Даже при обновлении превью этой статьи Хабр менял абзацы местами, и им я тоже зарепортил (HABR: CQD-SMNKG-152).

  • 🌶️А для примера «брутфорс/wifi-рукопожатия» я запрашивал разрешение у студентов (пока гостил, как хакер сновидений) на непродолжительное вмешательство в сетевую конфигурацию роутера в образовательных целях. В тех же целях использовал и их современные гаджеты, чтобы развернуть на них Termux и зафиксировать снижение функциональности/ограничения с увеличением версии OS Android.

  • 🌶️Немалая доля времени уходила на изучение биографий, следов и послужных списков мэтров ПО. Например, при описании «wordcloud» исследовал всю доступную на разных площадках активность программиста (вплоть до совместных трудов с ru-коллегой), чтобы смело заявить в статье об авторитетности его персоны. Напротив, влияние разработчика инструмента «dirb» я не смог ни подтвердить ни опровергнуть, шифропанк под ником «Темный Рейвер» оказался явно непубличной личностью.

  • 🌶️Для разнообразия подачи материала, и усиления эмоциональной составляющей читателя, предисловия некоторых утилит начинаются с увлекательных цитат, тесно связанных с ПО. Например, эту цитату для «взломщика паролей JtR» я генерировал всю ночную поездку в стрессовой ситуации: «Её пароль — девичья фамилия и дата дня журналистики в Украине: шестое, шестое. И ещё одна шестёрка было бы совсем смешно, но всё равно не серьёзно.«

  • 🌶️Elephant in the room 2022, пришлось отказаться от некоторых изначально задуманных и ярких примеров в пользу нейтрально-бледных парадигм.

Доркнул в интернете информацию о своём материале:

Коллаж технического эха.
Коллаж технического эха.

Шаг 2

Облегчи себе жизнь

Чтобы не мучить себя без нужды вводом команд с экранной клавиатуры (в «полевых» условиях, конечно, от этого не уйти) есть два пути:

  1. Подключить к Android устройству полноценную клавиатуру любым удобным способом.
  2. Воспользоваться ssh. Проще говоря, у вас на компьютере будет открыта консоль Termux’а запущенного на вашем Android устройстве.

Я пошел по второму пути, хотя он и немного сложен в настройке, но все окупится удобством использования.

На компьютере необходимо установить программу ssh клиент, я пользуюсь Bitvise SSH Client, и все дальнейшие действия совершаются в этой программе.

Termux root repo что это

Поскольку мы будем подключаться по методу Publickey с использованием файла-ключа, необходимо этот файл создать. Для этого в программе Bitvise SSH Client на вкладке Login щелкаем по Client  key manager в открывшемся окне генерируем новый публичный ключ и экспортируем его в OpenSSH формате в файл с названием termux.pub (на самом деле можно любое название). Созданный файл помещаем во внутреннюю память вашего Android устройства в папку Downloads (к этой папке, и еще к нескольким, Termux имеет упрощенный доступ без root).

Во вкладке Login в поле Host вводим IP вашего Android устройства (узнать можно введя в Termux команду ifconfig) в поле Port должно быть 8022.

Теперь переходим к установке OpenSSH в Termux, для этого вводим следующие команды:

apt install openssh # в процессе, если потребуется, вводим ‘y’
pkill sshd # этой командой останавливаем OpenSSH)
termux-setup-storage # подключить внутреннюю память
cat ~/storage/downloads/termux.pub>>~/.ssh/authorized_keys # копируем файл-ключ
sshd # запускаем ssh хост

Возвращаемся к Bitvise SSH Client и нажимаем кнопку Log in. В процессе подключения появится окно, в котором выбираем Method – publickey, Client key это Passphrase (если вы ее указали при генерации файла-ключа).

В случае успешного подключения (если все сделали, как написано, то должно подключиться без проблем) откроется окно.

Termux root repo что это

Теперь мы можем вводить команды с ПК а выполняться они будут на вашем Android устройстве. Не сложно догадаться какие это дает преимущества.

Metasploit

Одним из самых популярных true_инструментов у безопасников является — Metasploit, но в местном репозитории он всё: false, кстати, как и sqlmap.

Вот скрин с избитой Termux-wiki страницы посвящённой инструменту.

Termux root repo что это

Нет, это не wiki-вандализм, вот официальная позиция лиц, сопровождающих основной репозиторий, цитирую переводом:

Не обслуживаем функции взлома, фишинга, рассылки спама, шпионажа и DDoS. Мы не принимаем пакеты, которые служат исключительно деструктивным целям или целям нарушения конфиденциальности, включая, помимо прочего, пентестинг, фишинг, брутфорс, sms/звонки, DdoS-атаки, OSINT.

Немного обидно и за Компьютерная программа, также библиотека функций, позволяющая выполнять операции шифрования и цифровой подписи сообщений, файлов и другой информации, представленной в электронном виде.

» data-abbr=»pgp»>pgp в далёкие времена, когда на западе криптография приравнивалась к оружию, а шифропанки испытывали давление властей:

Двери сарая открыты, и свиньи сбежали.

Metasploit for Termux is running, no problem.
Metasploit for Termux is running, no problem.

Packages command errors

E: The repository 'https://termux.org/packages stable Release' does no longer have a Release file.
N: Metadata integrity can't be verified, repository is disabled now.
N: Possible cause: repository is under maintenance or down (wrong sources.list URL?).

If that is the case, then run termux-change-repo command and change your mirror for the main repository to a different Termux Mirror. If you have installed other package repositories, like sciencegames and unstable, then you must select and change those mirrors as well. You can check your current mirrors by running termux-info.

If for some reason termux-change-repo is not available, you can manually edit the source.list to replace the main URL with a value obtained from Termux Mirrors List. Run nano $PREFIX/etc/apt/sources.list to edit it. This will not change the URLs of other package repositories, to change those run pkg install termux-tools afterwards and use termux-change-repo or manually edit their files under $PREFIX/etc/apt/sources.list directory.

Termux official repositories

Termux is having one official repository, and also some additional repositories. Those repositories provide content on a specific topic and can be enabled by installing packages with names ending in -repo.

The main repository of termux can be found on this link: https://packages.termux.org/apt/termux-main/. Also, all packages for termux official repositories are built from scripts located in github.com/termux/ and are maintained and signed by members of the Termux developer team. And, the public keys for verifying signatures are provided in the package termux-keyring.

You may like also to know what are the differences between termux and Linux

Other Termux repositories

Dirb

Dirb — это простенький, но чертовски популярный сканер, который почему-то ещё не изгнан из основного репозитория Termux. Dirb брутфорсит web-каталоги/файлы на true/false указанного ресурса по словарю, что найдёт, то и выведет или сохранит в файл. Автор старой школы разработал инструмент для единомышленников почти 20 лет назад, сам же не замечен в проявлении своей онлайн публичности/активности.

Код:
$ pkg install dirb #установка сканера
$ dirb --help #изучить справку по функциям
$ dirb url #самый простой вариант натравить сканер на какой-либо ресурс.

Termux root repo что это

Using Termux package management

termux package

As you might know, Termux uses apt and dpkg for package management. We strongly recommend using a pkg utility instead of apt directly. It is a wrapper that performs a number of tasks:

  • Provides command shortcuts. Use “pkg in” instead of “pkg install” or “apt install”.
  • Automatically runs “apt update” before installing a package if necessary.
  • Performs some client side repository load-balancing by automatically switching mirrors on a regular basis. That is important to prevent termux hitting quota limit on hosting.

Install Termux package

Installing a package in termux is simple than you might think. It is highly recommended to upgrade existing packages before installing the new one. You can install updates by running this command:

pkg update
pkg install "package-name" 

Additionally, it’s better to check for updates at least once a week or when you want to install a new package. Otherwise, there is a certain risk that during package installation or upgrade you will encounter issues.

You may also like to know why you should avoid using termux for hacking

Then, when it comes to removing an installed package, make sure you know the name of that package then, use the command:

pkg uninstall "package name"

The package will be removed but modified configuration files will be left intact. If you want to remove them, use apt purge instead.

there are other additional commands which you can use with pkg.

Проверка цифровых gpg/pgp подписей в CLI & export privat_key

Для проверки цифровых подписей пользователю необходимо иметь установленный gnupg пакет; data (данные, которые требуется проверить); data.sig (подпись data-данных) и публичный ключ того, чьи данные мы проверяем.

pkg install gpgv gnupg
curl -s https://raw.githubusercontent.com/snooppr/snoop/master/PublicKey.asc | gpg --import - #импортируем публичный ключ «PublicKey»
gpg --output .gnupg/test-key --export 076DB9A00B583FFB606964322F1154A0203EAE9D #сохраняем ключ по отпечатку именно в каталог «.gnupg», это особенность Termux ссылаться на ключи в этом месте
gpgv --keyring test-key storage/downloads/file.sig storage/downloads/file #проверяем подписанные данные, сначала указываем ключ, далее подпись и данные.
Аллилу е-е-еа, из скриншота видим, что подпись успешно прошла проверку/валидная, данные не повреждены и не скомпрометированы.

Аллилу е-е-еа, из скриншота видим, что подпись успешно прошла проверку/валидная, данные не повреждены и не скомпрометированы.

Еще одно важное преимущество утилиты ‘gpg’ перед GUI ‘OpenKeychain’ в Android — экспорт приватного ключа.

Для примера, создадим нашу пару ключей шифрования в gpg утилите и экспортируем наш приватный ключ для дальнейшей работы (например, для импорта privat_key.gpg в OpenKeychain, или для проверки криптостойкости privat_key.gpg в JtR и т.д.).

$ gpg --full-generate-key #создали пару ключей
$ gpg --export-secret-key -a "ne555" > storage/downloads/gpg_key.asc #экспортируем приватный gpg-ключ.

Сам приватный ключ находится в криптоконтейнере, поэтому для его экспорта требуется ввести, указанную при генерации, парольную фразу. После чего, приватный ключ будет успешно экспортирован для дальнейшей работы с ним. В GUI OpenKeychain все гораздо удобнее: не нужно расчехлять черновик gpg-команд (почти). Но! Одна функция OpenKeychain перечеркивает его преимущество: функция 'экспорт/резервирование приватного ключа'. При экспорте приватного ключа OpenKeychain также, как gpg в CLI требует пароль от ключа. Подстава! Ключ экспортируется только в формате криптоконтейнера, а не чистый 'key.gpg'. И чтобы поработать с таким ключом (импорт в другое ПО, проверка его на криптостойкость и т.д) необходимо изучить инструкцию OpenKeychain, с которой не каждый пользователь справится, а также задействовать CLI для команд.
Сам приватный ключ находится в криптоконтейнере, поэтому для его экспорта требуется ввести, указанную при генерации, парольную фразу. После чего, приватный ключ будет успешно экспортирован для дальнейшей работы с ним.

В GUI OpenKeychain все гораздо удобнее: не нужно расчехлять черновик gpg-команд (почти). Но! Одна функция OpenKeychain перечеркивает его преимущество: функция ‘экспорт/резервирование приватного ключа’. При экспорте приватного ключа OpenKeychain также, как gpg в CLI требует пароль от ключа. Подстава! Ключ экспортируется только в формате криптоконтейнера, а не чистый ‘key.gpg’. И чтобы поработать с таким ключом (импорт в другое ПО, проверка его на криптостойкость и т.д) необходимо изучить инструкцию OpenKeychain, с которой не каждый пользователь справится, а также задействовать CLI для команд.

OSINT в Termux

Ваша жизнь слайдшоу? Спросите Снуп.

#установка инструмента Snoop
pkg install python libcrypt libxml2 libxslt git 
pip install --upgrade pip
git clone https://github.com/snooppr/snoop -b snoop_termux
cd ~/snoop
python -m pip install -r requirements.txt && cd

#выше я писал, что JtR в т.ч. умеет генерировать словари (альтернатива crunch)
#генерирую словарь из 111 к-аккаунтов (почему не 100, первые 10 аккаунтов имеют вид (k0...k09)
john/run/john -min-len=1 -max-len=3 --mask=k?d?d --stdout | sort -n -t "k" -k2 > k-аккаунты 
john/run/john -min-len=1 -max-len=3 --mask=b?d?d --stdout | sort -n -t "b" -k2 > b-аккаунты

#прошу snoop прочекать все 111-аккаунтов на порталах «Habr» и «Codeby»
python snoop.py -s habr -u k-аккаунты
python snoop.py -s habr -u b-аккаунты
python snoop.py -s codeby -u k-аккаунты
(Первые верхние два скрина слева) из полученных данных видим преобладание k-аккаунтов над b-аккаунтами ~в 2 раза! Третий скрин — k-аккаунты на Codeby, как русские на Мариенплац. Нижние два скрина — отображение последовательного скопления k-аккаунтов в основном в диапазоне от 10-40. Если отбросить все теории заговора, предполагаю, что популярность k-аккаунтов над другими подобными аккаунтами (я прочекал и другие алфавит-аккаунты) связана у пользователей с фильмами про вертолёты и субмарины.

(Первые верхние два скрина слева) из полученных данных видим преобладание k-аккаунтов над b-аккаунтами ~в 2 раза! Третий скрин — k-аккаунты на Codeby, как русские на Мариенплац. Нижние два скрина — отображение последовательного скопления k-аккаунтов в основном в диапазоне от 10-40. Если отбросить все теории заговора, предполагаю, что популярность k-аккаунтов над другими подобными аккаунтами (я прочекал и другие алфавит-аккаунты) связана у пользователей с фильмами про вертолёты и субмарины.

Хакерский смартфон с помощью Termux и Kali Linux

Первое, о чем следует позаботиться, — это права root. Без них некоторые функции установленных нами утилит могут не поддерживаться или работать некорректно. Поэтому настоятельно рекомендую их заполучить. Особенно это касается пользователей с Android 10 и более поздних версий.

Дополнительно:  Kak ustanovit root

Получение root в каждом случае уникально, ведь оно напрямую зависит от конкретной модели устройства и версии Android. Я в этой статье буду использовать свой старенький Samsung Galaxy S6 (SM-G920F) на Android 7.0 Nougat, для рута в котором уже есть специальный инструмент. В остальных случаях придется погуглить и узнать, как получить рут конкретно на вашем устройстве.

Также нам понадобится Termux — простой и удобный терминал, дающий многие возможности среды Linux, который и позволит исполнять наши команды в подходящей среде и не возиться с предварительной настройкой окружения.

Рекомендую также установить утилиту tsu, которая предоставит вам возможность выполнять команды от рута. Если она не работает должным образом, загляните в GitHub-репозиторий, который настраивает работу рута в Termux. Это нужно, чтобы Termux сразу имел рут-доступ, который может понадобиться для дальнейших операций.


Важный момент: при использовании в качестве рута Magisk (а на большинстве современных устройств альтернатив нет и не предвидится) не забудьте в его настройках разрешить Termux рут-доступ, а также добавить в исключения для Magisk Hide, иначе все наши действия будут бесполезны.

Также рекомендую обновить список пакетов, как мы обычно делаем это в десктопе Kali LInux:

Кратко про Kali NetHunter

Если вы один из тех счастливчиков, чье устройство оказалось в списке поддерживаемых, рекомендую обратить внимание на проект Kali NetHunter. Это платформа, созданная разработчиками Kali Linux специально для телефонов на Android. В NetHunter сразу доступно много рабочего софта из десктопной версии Kali. Образы можно найти на официальном сайте. Это более мощный набор, чем тот, что вы можете получить с помощью Termux.

Подробнее о Kali NetHunter в статьях:

Полное описание Metasploit — тема для отдельной статьи (Использование Metasploit Framework), поэтому пройдемся по нему вкратце. Metasploit Framework — фреймворк, предназначенный для создания, отладки и, конечно, применения эксплоитов.

Установить Metasploit Framework (MSF) на Android 7 или выше можно в две команды:

На Android 5.x.x–6.x.x MSF устанавливают несколько другим методом:


Все эти команды следует выполнять с правами обычного пользователя, если не оговорено иное. При выполнении от рута могут возникать трудноисправимые проблемы. В частности, при запуске apt от рута мы получим сбитые контексты SELinux, что потом помешает нам устанавливать пакеты.

Установка может затянуться. Не закрывайте сессию Termux до конца установки MSF!


Не стоит обновлять MSF вручную редактированием $PREFIX/opt/metasploit, так как это может привести к проблемам с зависимостями.

Теперь, чтобы убедиться, что у нас все работает, запустим Metasploit:

Metasploit Framework

Как видите, все отлично и в вашем распоряжении 2014 эксплоитов.

Ngrok — это кросс-платформенный софт для создания защищенных сетевых туннелей от общедоступной конечной точки до локально работающей сетевой службы. Также утилита собирает весь трафик и логирует его для анализа.

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

Для начала обновляемся и ставим Python 2:

Теперь нам нужно зарегистрировать свой аккаунт ngrok.

Как только зарегистрируетесь, вас перебросит на страницу личного кабинета, где нужно будет найти и скопировать свой токен аутентификации, как показано на скриншоте.

AuthToken for ngrok
AuthToken for ngrok
Скачать ngrok
Загрузка ngrok

Дальше заходи в Termux и идем в ту директорию, куда скачали архив с ngrok. К примеру:

И переместите исполняемый файл в домашний каталог Termux:

Посмотрите, куда был перемещен файл, и отправляйтесь туда с помощью команд cd и ls.

Теперь вам нужно установить флаг исполнимости файла:

И сделать первый запуск:

Помните, вы копировали свой токен для аутентификации? Впишите эту команду, чтобы ngrok знал, кто его использует:

И запускайте сервер:

Вы увидите экран как на скриншоте.

Хакерский телефон. Ngrok
Ngrok

Отлично, теперь вы готовы атаковать любые цели!

Цитата с официального сайта: «Sqlmap — это инструмент для тестирования на проникновение с открытым исходным кодом, который автоматизирует обнаружение и использование недостатков SQL-инъекций и захват серверов баз данных».


С установкой все элементарно. Перед вами есть выбор: поставить стабильную версию 1.4.3 или самую новую 1.4.5.34. Первая ставится проще некуда:

И все. Чтобы запустить утилиту, пропишите команду

Хакерский смартфон. Sqlmap 1.4.3

Или же вы можете поставить себе более новую версию, которая еще находится в разработке. Для этого нужно клонировать официальный проект sqlmap с GitHub:

Далее переходите в папку с sqlmap:

И, используя python2, запускайте sqlmap с таким же обязательным параметром:

Sqlmap 1.4.5.34
Sqlmap 1.4.5.34

Теперь больше половины баз данных интернета могут оказаться в вашем смартфоне! Но не забывайте, что, применяя этот мощный инструмент, вы рискуете нажить проблемы с законом.

Aircrack-ng — набор утилит, предназначенных для обнаружения беспроводных сетей, перехвата их трафика и аудита ключей шифрования WEP и WPA/WPA2-PSK.

Здесь уже все далеко не так просто. Думаю, вы слышали, насколько трудно перевести WiFi-адаптер смартфона в режим мониторинга. В официальных репозиториях Termux на этот случай есть пакет утилиты iwconfig, которая управляет беспроводными сетями. Нам надо ее установить.

Для начала нужны вспомогательные утилиты:

Теперь можно ставить iwconfig с остальными инструментами для работы с беспроводными сетями:

И еще поставить отдельно iw:

Теперь вам надо будет зайти как рут и создать экземпляр монитора. Для этого мы сделаем так:

Проверим наши адаптеры и их статусы:

Если что-то отображается не так, проверьте, работает ли WiFi, и убедитесь, что он не подключен к каким-либо сетям.

Далее нам нужно поднять наш монитор:

Конечно, не все устройства с Android поддерживают режим мониторинга. Проверить это можно приложением bcmon, которое среди прочего умеет включать режим мониторинга на совместимых чипах Broadcom (это устройства Nexus и некоторые другие). Для всех остальных придется купить переходник USB — OTG, в который воткнуть один из поддерживаемых десктопной Kali адаптеров. Для этого понадобится пересобрать ядро с нужными драйверами. Если у вас нет опыта пересборки ядра, рекомендую обратиться в тему своего устройства на XDA-developers. Часто там есть сборки Kali с уже готовым ядром.

Теперь можем ставить aircrack-ng:

Смотрим короткий man:

Установка Aircrack-ng на хакерский смартфон

И можем запустить airodump-ng:

Теперь можно перехватывать трафик открытых точек, спамить deauth-фреймами, отключая посторонние устройства от интернета, ловить хендшейки для взлома паролей.

Nmap — утилита, предназначенная для сканирования сетей. Может находить открытые порты, делать трассировку, проверять на уязвимости с помощью NSE-скриптинга. Чтобы лучше ознакомиться с этим приложением, стоит прочитать статьи:

В нашем случае возможности Nmap могут быть немного урезаны, ведь используем портированную на Android версию. Однако она есть в официальных репозиториях Termux, что упрощает нам жизнь:

Посмотрим короткий man:

Для интенсивного сканирования я использую такие параметры:

Установка Kali Linux на хакерский смартфон

На некоторые телефоны можно установить Kali NetHunter, но речь сейчас пойдет не о нем. Мы будем ставить образ полноценной Kali на наш телефон и подключаться к его десктопу через VNC. У вас будет образ именно Kali Linux, что позволит пользоваться теми прогами, которые не удается завести на Termux (к примеру, BeEF-XSS).

Теперь нужно уделить внимание BusyBox. Сейчас в Google Play очень много вариантов разных производителей. Дело в том, что некоторым устройствам приходится подыскивать нужный BusyBox, чтобы все утилиты поставились корректно. В моем случае подошел самый популярный пакет BusyBox Free, файлы которого я установил в /su/xbin. Запомните эту директорию, она важна при обновлении среды установщика.

Теперь заходим в Linux Deploy и справа внизу нажимаем на иконку настроек дистрибутива. Выбираем дистрибутив Kali Linux. Нужная архитектура выставится автоматически, но, если не получится, попробуйте armhf.

Установка Kali Linux на хакерский телефон
Настройки

Далее измени пароль пользователя, он находится ниже.

Если же вам все же нужна графическая среда, то включите соответствующий пункт, и дальше я покажу, как подключиться к десктопу Kali по VNC.

SSH и VNC
SSH и VNC

Теперь нужно настроить рабочее окружение. В настройках переменной PATH укажите тот путь, куда BusyBox устанавливал пакеты.

SSH и VNC
SSH и VNC

И обновите рабочее окружение (кнопка ниже).

Далее нужно настроить наш контейнер. Выйдите на главную страницу, в правом верхнем углу нажмите на иконку меню и выберите пункт «Сконфигурировать».

Осталось только запустить наш контейнер. Жмите кнопку Start внизу. Проверьте, нет ли при запуске контейнера строчек с пометкой fail. Если есть, убедитесь, что вы правильно указали PATH рабочего окружения и сконфигурировали контейнер. Если все так, то попробуйте сменить архитектуру на armhf и сделать все заново.

Теперь заходите в VNC Viewer или другой клиент VNC, добавляйте соединение по локалхосту (127.0.0.1) и называйте его. Далее подключайтесь, подтверждайте, что хотите продолжить пользоваться незашифрованным соединением, и вводите пароль пользователя, который вы указывали в Linux Deploy.

Kali и Nmap на телефоне
Kali и Nmap

Конечно, дистрибутив старый, но весь софт рабочий, и, как видите, тот же Nmap функционирует без ошибок.

Для теста я использую команду

Вывод результатов сканирования вы можете видеть на скриншоте ниже.

Результат Nmap
Результат Nmap

Шаг 1

Буду банален и чертовски логичен одновременно

Ставим Termux c Google Play Market:

image

Открываем установленное приложение и видим:

image

Далее стоит обновить предустановленные пакеты. Для этого по порядку вводим две команды, по ходу выполнения которых со всем соглашаемся, вводя Y:

apt update
apt upgrade

Первой командой мы проверяем список установленных пакетов и ищем те, которые можно обновить, а второй обновляем их. По этой причине команды нужно писать именно в такой последовательности.

Теперь у нас наиболее свежая версия Termux.

Еще несколько нужных команд

ls # – отображает список файлов и директорий в текущей директории

cd # – перемещает в указанную директорию, например:
Важно понимать: если путь не указан прямо (~/storage/downloads/1.txt) он будет от текущей директории
    cd dir1 # – переместит в dir1 если в текущей директории она есть
    cd ~/dir1 # – переместит в dir1 по указанному пути от корневой папки
    cd #  или cd ~ # - переместить в корневую папку

clear # – очищаем консоль

ifconfig # – можно посмотреть IP, а можно и сеть настроить

cat # – позволяет работать с файлами/устройствами (в рамках одного потока) например:
    cat 1.txt # – просмотрим содержимое файла 1.txt
    cat 1.txt>>2.txt # – копируем файл 1.txt в файл 2.txt  (файл 1.txt останется)

rm # - используемая для удаления файлов из файловой системы. Ключи, использующиеся с rm:
    -r # – обрабатывать все вложенные директории. Данный ключ необходим, если удаляемый файл является директорией. Если удаляемый файл не является директорией, то ключ -r не влияет на команду rm.
    -i # – выводить запрос на подтверждение каждой операции удаления.
    -f # – не возвращать код ошибочного завершения, если ошибки были вызваны несуществующими файлами; не запрашивать подтверждения операций.
    Например:
    rm -rf mydir # – удалить без подтверждения и кода ошибочного завершения файл (или каталог) mydir.

mkdir <путь> # – создает директорию по указанному пути

echo # – может служить для записи строки в файл, если используется ‘>’ файл будет перезаписан, если ‘>>’ строка будет дописана в конец файла:
    echo "string" > filename

Более подробно по командам UNIX ищем в интернете (саморазвитие никто не отменял).
Сочетание клавиш Ctrl + C и Ctrl + Z прерывает и прекращает выполнение команд соответственно.

Оцените статью
Master Hi-technology
Добавить комментарий