Kali linux для айфона

Запускаем командную строку Linux на iOS

А вы знали, что можно запустить командную строку Linux на устройстве iOS? Возможно, вы спросите: «Зачем мне пользоваться текстовыми приложениями на iPhone?» Справедливый вопрос. Но если вы читаете Opensource.com, то, вероятно, знаете на него ответ: пользователи Linux хотят иметь возможность работать с ним на любом устройстве и хотят пользоваться собственными настройками.

Но больше всего они жаждут решения сложных задач.

У меня есть семилетний iPad 2 Mini, который по-прежнему неплохо подходит для чтения электронных книг и других задач. Однако я хочу использовать его и для доступа к командной строке приложений с моим набором программ и скриптов, без которых не могу работать. Мне нужно окружение, к которому я привык, а также моя стандартная среда разработки. И вот как мне удалось этого добиться.

Подключение к клавиатуре

Работать с командной строкой для программирования через экранную клавиатуру телефона или планшета довольно неудобно. Я рекомендую подключить внешнюю клавиатуру, или через Bluetooth, или воспользовавшись адаптером подключения камеры, чтобы подключить проводную клавиатуру (я выбрал второе). При подключении разделённой клавиатуры Kinesis Advantage к iPhone 6 получается странное устройство, напоминающее корпоративный кибердек из классической ролевой игры Shadowrun.

Устанавливаем оболочку на iOS

Для запуска полнофункциональной системы Linux на iOS есть два варианта:

  • Secure shell (SSH), подключаемая к компьютеру с Linux
  • Запуск виртуальной системы с помощью Alpine Linux с iSH, который является open source, но должен устанавливаться с помощью проприетарного приложения TestFlight компании Apple

В качестве альтернативы существуют два приложения-эмулятора терминала в open source, предоставляющие возможность работы с open-source-инструментами в ограниченном окружении. Это самый урезанный вариант — на самом деле так вы запускаете не Linux, а инструменты Linux. При работе с этими приложениями существуют жёсткие ограничения возможностей, однако вы получаете частичную функциональность командной строки.

Прежде чем перейти к сложным решениями, я рассмотрю простейший способ.

Вариант 1: оболочка в «песочнице»

Один из самых простых способов — установить приложение для iOS LibTerm. Это опенсорсная командная оболочка в «песочнице» с поддержкой более 80 команд по цене в ноль долларов. В комплекте с ней поставляются Python 2.7, Python 3.7, Lua, C, Clang и многое другое.

Примерно такой же функциональностью обладает a-Shell, описываемая разработчиками как «тестовый интерфейс пользователя для платформы с экранным вводом». Исходники a-Shell выложены open source, она находится в активной разработке, предоставляет доступ к файловой системе и поставляется с Lua, Python, Tex, Vim, JavaScript, C и C++, а также с Clang и Clang++. Она даже позволяет устанавливать с помощью pip пакеты Python.

Вариант 2: SSH

Ещё одним шагом вперёд по сравнению со скачиванием приложения является настройка SSH-клиента. Уже долгое время мы могли использовать любое из множества приложений SSH-клиентов для iOS, чтобы подключаться к серверу, на котором запущен Linux или BSD. Преимущество использования SSH заключается в том, что на сервере может работать любой дистрибутив с любым программным обеспечением. Вы работаете удалённо и результаты работы просто передаются в эмулятор терминала на устройстве iOS.

Blink shell — это популярное платное SSH-приложение в open source. Если не обращать внимания на маленький экран устройства, то использование этого ПО похоже на подключение к серверу через любую другую командную строку. Терминал Blink замечательно выглядит, имеет множество готовых тем и функцию создания собственных, в том числе возможность настройки и добавления новых шрифтов.

Вариант 3: запуск Linux

Использование SSH для подключения к серверу под Linux — это отличный способ доступа к командной строке, но для него требуется внешний сервер и сетевое подключение. Это не самая большая преграда, но её нельзя полностью игнорировать, поэтому вам может потребоваться работать с Linux без сервера.

Если это ваш случай, то вам нужно будет сделать ещё один шаг вперёд. TestFlight — это проприетарный сервис для установки разрабатываемых приложений ещё до того, как они были выложены в Apple App Store. Приложение TestFlight можно установить из App Store, а затем пользоваться тестовыми приложениями. Приложения в TestFlight позволяют в течение ограниченного времени работать с ними ограниченному количеству бета-тестеров (обычно до 10 000). Чтобы скачать тестовое приложение, нужно перейти со своего устройства по ссылке, которая обычно находится на веб-сайте разработчика тестового приложения.

Читайте также:  Другие приложения для windows phone

Запуск Alpine Linux с iSH

iSH — это open-source-приложение TestFlight, запускающее виртуальную машину с готовым дистрибутивом Alpine Linux (немного потрудившись, можно запускать и другие дистрибутивы).

Важная особенность: приложение экспериментальное. Так как iSH сейчас пока являются тестовым приложением, не ожидайте постоянной и надёжной работы. Приложения TestFlight ограничены по времени. Моя текущая сборка будет работать всего 60 дней. Это означает, что через 60 дней меня исключат и придётся снова присоединяться к следующему этапу тестирования iSH. Более того, я потеряю все свои файлы, если не экспортирую их с помощью Files на iOS или не скопирую их на Git-хост или через SSH. Иными словами: Не надейтесь, что всё это будет продолжать работать! Не помещайте в систему ничего важного для вас! Выполняйте резервное копирование в отдельное место!

Установка iSH

Начните с установки TestFlight из App Store. Затем установите iSH, получив ссылку на установку с веб-сайта приложения. Есть ещё один способ установки с использованием AltStore, но я его не пробовал. Или, если у вас есть платный аккаунт разработчика, можете скачать репозиторий iSH с GitHub и установить его самостоятельно.

При помощи ссылки TestFlight установит приложение iSH на ваше устройство. Как и в случае с любым другим приложением, на экране появится значок.

Управление пакетами

iSH выполняет эмулятор x86 с Alpine Linux. Alpine — это крошечный дистрибутив размером меньше 5 МБ. Я впервые работал с Alpine, поэтому думал, что такой минимализм будет раздражать, но на самом деле он мне очень понравился.

В Alpine используется менеджер пакетов apk, который проще, чем даже apt или pacman.

Как установить пакет:

Как удалить пакет:

Как узнать другие команды и информацию:

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

Установка текстового редактора

Стандартным текстовым редактором Alpine является Vi, но я предпочитаю Vim, поэтому установил его:

При желании можно установить Nano или Emacs.

Смена оболочки

Не знаю, как насчёт вас, а мне нужна была fish shell. Другие люди предпочитают Bash или Zsh. Однако в Alpine используется ash! Ash — это форк оболочки Dash, которая сама является форком оригинального ash, или Almquist shell. Её приоритетом является скорость. Я решил обменять скорость на встроенное автодополнение, цвета, управление клавишами Vim и подсветку синтаксиса, которые я люблю и знаю по fish shell.

Если вам нужна Bash с её автодополнением и man-страницами, то установите их:

Минималистичная идеология Alpine обычно означает, что некоторые программы, которые в других дистрибутивах являются одним пакетом, будут разделены на несколько пакетов поменьше. Также это означает, что вы можете настраивать и уменьшать размер системы ровно так, как вам этого хочется.

Подробнее об установке Bash можно узнать из этого туториала.

Смена оболочки по умолчанию

После установки fish можно временно переключиться на неё, введя fish и перейдя в оболочку. Но я хочу сделать fish оболочкой по умолчанию, а команда chsh , которую я использовал в других дистрибутивах, не работала.

Сначала узнаем, куда установилась fish:

Вот, что получилось у меня:

Далее изменим login shell на fish. Можете использовать любой удобный вам редактор. Если в новичок, то установите Nano (командой apk add nano ), чтобы можно было отредактировать файлы конфигурации и сохранить их через CTRL+X, подтвердить и выйти.

Но я использовал Vim:

У меня первая строка была такой:

Чтобы сделать fish оболочкой по умолчанию, изменим эту строку на следующую:

Затем сохраним файл и выйдем.

Я уверен, что существует хороший способ изменить путь к оболочке, чтобы её можно было использовать сразу. Но я его не знаю, поэтому рекомендую вернутся в браузер приложений, принудительно выполнить выход из оболочки и для надёжности выключить и перезагрузить iPad или iPhone. Снова откройте iSH и теперь кроме сообщения «Welcome to Alpine!» и информации о запуске с apk вы увидите стандартное приветственное сообщение логина fish: Welcome to fish, the friendly interactive shell. Ура!

Настройка Python и pip

Я решил добавить Python (версию 3.x), не только для того, чтобы писать код, но и потому, что я пользуюсь несколькими программами на Python. Установим его:

Хотя Python 2.x устарел, можно установить и его:

Установим менеджер пакетов Python под названием pip и setuptools:

Для установки и настройки менеджера пакетов понадобится какое-то время, поэтому просто подождите.

Затем можно будет скачать инструмент для передачи файлов по сети curl:

Читаем мануалы

Fish использует встроенное автодополнение на основе man-страниц. Как и другие пользователи командной строки, я пользуюсь мануалом man , а в Alpine он не установлен. Поэтому я установил его с терминальным пейджером less:

В дополнение к man я использую великолепный проект tldr pages, предоставляющий упрощённые и управляемые сообществом man-страницы.

Я установил его с помощью pip:

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

Читайте также:  Usb serial port driver windows 10 64 bit

Разумеется, всю эту работу по установке можно автоматизировать с помощью dotfiles или скрипта установки, но на самом деле это не очень соответствует идеологии Alpine — настройке минимальной установки чётко под свои потребности. Кроме того, это ведь заняло так много времени, правда?

Дополнительная информация

В Вики iSH есть страница «what works» с отчётами о том, какие пакеты сейчас работают. Кстати, похоже, что npm сейчас не работает.

На ещё одной вики-странице объясняется, как получить доступ к файлам iSH из приложения iOS Files. Это один из способов, которым можно перемещать и копировать файлы.

Можно также установить Git (да! apk add git ) и пушить свою работу в удалённый репозиторий или передавать его на сервер через SSH. И, разумеется, можно скачивать и запускать любое количество замечательных open-source-проектов с GitHub.

Подробнее об iSH можно узнать по этим ссылкам:

На правах рекламы

Вдсина предлагает виртуальные серверы на Linux или Windows. Используем исключительно брендовое оборудование, лучшую в своём роде панель управления серверами собственной разработки и одни из лучших дата-центров в России и ЕС. Поспешите заказать!

Источник

Обзор Kali Linux 2021.2

В начале июня состоялся релиз дистрибутива для цифровой криминалистики и тестирования систем безопасности Kali Linux 2021.2. Эта операционная система является клоном Debian, используя репозиторий Testing с наиболее свежими пакетами. Новые iso образы становятся доступными для загрузки каждые три месяца, предыдущим релизом был 2021.1, а следующим будет 2021.3. Собственные наработки, созданные в рамках проекта, выложены на Гитлабе.

Kali Linux вобрал в себя солидный опыт разработки операционных систем для проверки возможностей несанкционированного доступа к ресурсам ИТ. Начало было положено в августе 2004-го с выходом WhiteHat Knoppix. Затем было несколько выпусков WHAX и BackTrack, под капотом SlackWare Live CD. С марта 2013 г․ под руководством Мати Ахарони и Девона Кернса из Offensive Security выходит Kali Linux v1.0, уже на базе Debian.

Установка

Kali Linux предоставляет множество вариантов для установки, начиная простой рабочей станцией и заканчивая мобильными и встроенными устройствами. Рабочим столом по-умолчанию является Xfce, однако можно выбрать и другие DE:

▍ Обычное железо и Live boot

Имеются iso образы и торренты для платформ:

  • AMD64 ;
  • Intel 386 ;
  • ARM64 iso образ для чипов Apple M1 .

Все образы доступны в трех вариантах:

  • weekly, самые свежие и в то же время нестабильные пакеты;
  • installer, стандартный оффлайновый набор ПО;
  • netinstaller, все пакеты скачиваются во время установки. Не доступен для установки с Live USB;

▍ Виртуальные машины

Можно скачать 64-битные образы и торренты для VMWare и Virtualbox . Для беглого ознакомления с возможностями Kali Linux это пожалуй самый оптимальный вариант. Образ для VMWare имеет размер в 2.6 GiB, для Virtualbox — чуть побольше, 3.8 GiB. Кроме того доступны образы VM для Vagrant.

На данный момент имеются образы для следующих устройств на чипах ARM:

  • 1 (Original);
  • 2, 3, 4 и 400 (32-бит);
  • 2 (v1.2), 3, 4 и 400 (64-бит);
  • Zero;
  • Zero W.

Pine64

▍ Мобильные средства

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

  • Точка доступа Mana Evil в один клик.
  • BadUSB атака типа MITM через эмуляцию работы USB устройства. Подключив NetHunter к компьютеру жертвы, тот перенаправляет сетевой трафик через себя.
  • Взлом Bluetooth;

Рис. 1 Kali NetHunter.

Кали NetHunter может быть установлен на эти мобильные устройства:

Gemini PDA (Nougat 5.x)

Nexus, все модели начиная с 5-й модели и заканчивая 10-й (Lollipop)

  • OnePlus One (11);
  • OnePlus 2 (Nougat 5.x);
  • OnePlus 2 (Pie 9.0);
  • OnePlus (AnyKernel Pie 9.0);
  • OnePlus (AnyKernel 10);
  • OnePlus (OxygenOS 10);
  • OnePlus 7;
  • OnePlus 7 Pro (OxygenOS 10);
  • OnePlus Nord (11).

Samsung

  • Galaxy Tab S4 (LTE)(Oreo 8.0);
  • Galaxy Tab S4 (WiFi)(Oreo 8.0).

Sony XPeria Z1

  • Davinci Miui (10);
  • Xiaomi Mi A3 (LineageOS 18.1).

ZTE

▍ Контейнеры

Есть сборки для Docker и LXC/LXD, установка производится штатными средствами контейнерного ПО.

Kali-docker образы доступны для платформ arm64 , armhf и amd64 .

▍ Облако

Образы Kali Cloud можно по-быстрому развернуть в инфраструктуре различных облачных провайдеров:

Особенности и характеристики Kali 2021.2

Главная особенность Kali Linux — наличие полноценной подборки специальных приложений для проверки взлома и проникновения. Их общее количество превышает 600 и они разнесены по следующим категориям:

  • Сбор информации: nmap и его разновидности, goofile, p0f и пр․;
  • Анализ уязвимости: cisco-torch, BED, DotDotPwn и пр․;
  • Атаки на беспроводное соединение: Aircrack-ng, Kismet, Pyrit и пр․;
  • Веб-приложения: Blind Elephant, hURL, Nikto, Paros, и пр․;
  • Инструментарий эксплуатации: commix, routersploit, Social-Engineer Toolkit и пр․;
  • Стресс-тесты: DHCPig, t50, Reaver и пр․;
  • Аналитический инструментарий: ddrescue, pdf-parser, iPhone-Backup-Analyzer и пр․;
  • Охота на пароль: Hashcat, THC-Hydra, John the Ripper, wordlists и пр․;
  • Прослушивание и подделка: _hexinject, mitmproxy, Wireshark и пр․;
  • Обратная разработка: apktool, javasnoop, Valgrind и пр․;
  • Поддержание доступа: dns2tcp, HTTPTunnel, pwnat и пр․;
  • Аппаратный взлом: Arduino, dex2jar, smali и пр․;
  • Средства для отчетности: cherrytree, dos2unix, Metagoofil и пр.
Читайте также:  Разблокировка windows с помощью флешки

Одно из новых впечатлений, еще на этапе установки ОС, это замена супер-пользователя root с паролем tor на kali / kali. Объективности ради надо заметить, что изменение произошло в предыдущем релизе Kali. Это не так просто, как кажется, так как многие серверные приложения крепко привязаны к привилегиям root-а. Некоторые операционные системы давно уже отказались от root, в частности Ubuntu Linux обесточила супер пользователя с незапамятных времен.

▍Kaboxer

Представлен Kaboxer 1.0, (от Kali Application Boxeri), с помощью которого громоздкие приложения можно упаковать в контейнер и далее интегрировать с ОС и штатным менеджером пакетов. Вся прелесть в том, что для пользователя всё прозрачно, программа скомпонованная таким образом устанавливается точно так же из aptitude install package-name . На данный момент с помощью Kaboxer распространяются лишь эти приложения:

  • Covenant — клиент-серверная сетевая служба;
  • Firefox Developer Edition — тяжелое графическое приложение для веб-разработчиков;
  • Zenmap — приложение использует Python 2.

▍ Kali-Tweaks v1.0

Анонсирована утилита Kali-Tweaks в помощь пользователям дистрибутива для легкой и корректной настройки операционной системы под свои нужды. Это вполне согласуется с философией Kali Linux — полностью отдавать себе отчет в своих действиях. С помощью Kali-Tweaks можно задать конфигурацию для компонент:

Рис 2. Kali-Tweaks.

  • мета-пакеты;
  • сетевые репозитории, это позволяет добавить, или удалить установку новейших и экспериментальных пакетов из древа;
  • командная строка и консоль, например выбрать между Bash и Zsh;
  • виртуализация.

▍ Bleeding-Edge

Ветка репозитория Bleeding Edge существует с марта 2013 г. В дословном переводе это означает кровоточащий край, смысл термина в обозначении самого острого края (острие науки передовой край), отдаленной границы, там где опасно. Соответственно, пакеты из этой ветки никак нельзя назвать стабильными. В текущем выпуске Kali Linux полностью переработан бэкенд репозитория.

Рис. 3 В kali-tweaks можно подключить репозиторий bleeding-edge.

▍ Привилегированные порты

В Unix/Linux системах по умолчанию только root имеет доступ на открытие TCP/IP портов в интервале 1-1024, их еще называют привилегированными. Можно по-разному обходить это ограничение, например перенаправлять привилегированный порт на обычный.

Но этот способ плохо масштабируем и может привести к путанице. Благо, теперь не надо перебрасывать порты, так как обычный пользователь может запускать приложения, которые открывают сокет на привилегированных TCP/IP портах. Это стало возможным благодаря специальному патчу на ядро Linux, без него функционал не будет доступен.

▍ Kali NetHunter

В новой версии были такие обновления:

  • поддержка Android 11;
  • улучшение в работе Magisk root;
  • повышена совместимость благодаря динамическим партициям;
  • улучшения в модуле Bluetooth;
  • включены патчи rtl88xxau для более старых версий ядра.

▍ Новые приложения

Вот список новинок текущего релиза:

  • CloudBrute — Разузнать об инфраструктуре компании, найти файлы и приложения в облачной среде.
  • Dirsearch — Обнаружить файлы и директории на веб-серверах.
  • Feroxbuster — Простое, быстрое, рекурсивное обнаружение содержимого интернет ресурса.
  • Ghidra — Платформа обратной разработки.
  • Pacu — Платформа для эксплойтов AWS.
  • Peirates — Проникновение в среду Kubernetes.
  • Quark-Engine — Рейтинговая система оценки вредоносных программ для Android.
  • VSCode a.k.a. Visual Studio Code Open Source, редактор кода с открытыми исходниками.

▍ Графика и рабочий экран

В терминале появилось возможность быстрого переключения по горячей клавише Ctrl+p между однострочным и двустрочным приглашением PS1.

Рис 4. Переключение режимов PS1 терминала Xfce.

Переработана панель быстрого запуска Xfce, из нее убрали экранный рекордер kazam, добавив текстовый редактор и веб-браузер. Появились новые обои рабочего стола и экрана входа в DE. Для приложений терминала Xfce и файлового менеджера Thunar появилась опция запуска с правами root.

Рис 5. Root терминал Xfce.

▍ Raspberry Pi

  • kalipi-config — своего рода raspi-config на стероидах для облегчения начальной настройки Kali Linux на Raspberry Pi.
  • kalipi-tft-config — для облегчения начальной настройки TFT дисплеев на Rapberry Pi.
  • Заявлено повышение производительности на 1500%.
  • Ядро Linux обновилось до версии 5.4.83.
  • На Raspberry Pi 4 и Raspberry Pi 400 полноценно заработал Bluetooth.
  • Время первой загрузки сократилось с 20 до 15 с.

▍ Разное

Помимо этого были и другие изменения и исправления в разных местах. Устранены дефекты в приложении терминала и pkexec. Помимо этого:

  • Wireshark теперь могут запускать и непривилегированные пользователи;
  • новый Win-Kex v2.10 теперь поддерживает многоэкранный режим;
  • пакет Parallels Tools вышел из Technical Preview для устройств на чипах Apple M1.

Источник

Оцените статью