Установка и использование Python в Kali Linux

Python

Python — это самый популярный язык программирования. Для этичных хакеров Python может стать отличным помощником в Kali Linux, позволяя экономить время на многих процессах. Давайте рассмотрим, как установить и использовать Python в Kali Linux.

Еще по теме: Создание бэкдора на Python

Python в Kali Linux

Главные преимущества Python в контексте Kali Linux:

  • Автоматизация рутинных задач вместо ручного выполнения.
  • Возможность создавать сложные цепочки действий, используя условия, циклы и функции.
  • Интеграция с мощными библиотеками для работы с сетью, пакетами и т.д.
  • Относительная простота языка Python и обилие материалов для изучения.

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

Статья в образовательных целях для обучения этичных хакеров.

В Кали Линукс уже предустановлена свежая версия Python со множеством готовых к использованию библиотек. Редактор кода не входит в комплект поставки, но большинство популярных редакторов доступны в репозитории по умолчанию и могут быть легко установлены через APT.

Хотя кодинг на Python, возможно, не является основной целью типичного пользователя Kali Linux, тем не менее в свежей установке уже все настроено для работы. За исключением выбора текстового редактора, делать особо нечего.

Установка Python в Kali Linux

Чтобы проверить наличие Python в Кали Линукс и узнать версию, выполните команду:

Python Kali Linux установить

Это должен быть Python 3, возможно, не самая последняя версия, но достаточно свежая. При желании можно удалить ее и установить последнюю версию вручную, но в большинстве случаев это лишняя возня. Достаточно регулярно обновлять систему через APT, и Python будет обновляться, когда появится новая версия:

Кстати, если по какой-то причине в системе нет Python, его также можно установить через APT:

Как узнать какая версия Python самая последняя

Простейший способ узнать новейшую версию Python — посетить официальный сайт. На странице загрузки будут указаны последние релизы, даты выпуска и статус обновлений.

Новая версия Python

В первой таблице — самые свежие версии Python. Как видно, несмотря на регулярные обновления Kali Linux, моя версия Python отстает от актуальной более чем на 6 месяцев. Для некоторых программ может потребоваться обновление или использование предрелизной версии.

Установка конкретной версии Python

Чтобы установить определенную версию Python в Kali Linux, нужно скачать исходный код с официального сайта и установить самостоятельно:

  1. Зайти на официальный сайт и загрузить нужную версию Python.
  2. Распаковать скачанные файлы.
  3. Настроить систему на использование новой версии Python.

Рассмотрим подробнее эти шаги.

Установка определенной версии Python через менеджер пакетов

В Kali Linux новые версии быстро появляются в репозиториях, поэтому сначала имеет смысл проверить через менеджер пакетов APT.

Выполните поиск, чтобы узнать, доступна ли нужная версия:

Установка определенной версии Python через менеджер пакетов

Эта команда выведет все пакеты, начинающиеся с «python3.12», так что можно быстро понять, есть ли нужная версия.

Как видно на скриншоте, хотя на момент написания статьи последний стабильный релиз — 3.11.4 (и он уже установлен), в репозитории Kali rolling я могу найти Python 3.12 (предрелизную версию).

Чтобы установить ее:

Установка конкретной версии Python в ручную

Если нужная версия недоступна через APT, или вы не хотите заменять текущую установку, можно установить Python вручную, скачав последний архив с официального сайта. Вот как это сделать:

Шаг 1: Перейдите на страницу загрузки Python.

Шаг 2: Прокрутите к таблице Looking for a specific release? (Ищете конкретный релиз?).

Установка конкретной версии Python в ручную

Шаг 3: Нажмите на ссылку Download (в моем случае — Python 3.10.2.).

Шаг 4: Найдите ссылки для скачивания в конце страницы.

Шаг 5: Скопируйте ссылку на исходный архив нажав правым кликом по Gzipped source tarball (Gzip-архив с исходным кодом) и выбрав «Скопируйте ссылку».

Шаг 6: Далее в терминале скачать архив командой wget:

Шаг 7: Распаковать:

Шаг 8: Перейти в папку с исходниками:

Шаг 9: Запустить конфигурирование:

Шаг 10: Установить новую версию:

Команда make altinstall не заменяет версию Python по умолчанию, так что ничего не сломается.

Изменить версию Python по умолчанию

Каждая установленная версия Python создает исполняемый файл в /usr/local/bin, который можно использовать для запуска программ. У меня теперь есть:

  • python3.10 — установленный вручную.
  • python3.11 — установленный через APT.

Но при вызове « python3 --version» по-прежнему используется версия 3.11.

Чтобы выбрать нужную версию, есть два варианта:

Всегда запускать скрипты с указанием конкретной версии:

Это предпочтительно, если вы регулярно переключаетесь между версиями.

Или изменить ссылку в /usr/local/bin, чтобы сделать версию по умолчанию:

Смена версии Python по умолчанию Kali Linux

Команда python3 — это ссылка на одну из установленных версий, ее легко изменить:

Изменить версию Python по умолчанию Kali Linux

Чтобы изменить, надо перейти в /usr/bin:

Удалить текущую ссылку:

Создать ссылку на нужную версию:

Проверить установленную по умолчанию версию:

Теперь будет выводиться установленная версия (3.10.2 в моем случае).

Kali Linux изменение версии Python по умолчанию

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

Использование Python на Kali Linux

Теперь разберемся, как использовать Python.

Как установить PIP в Kali Linux

PIP — это менеджер пакетов для Python. Он подключен к обширной базе данных библиотек, доступных онлайн PyPi (Python Package Index). PIP уже установлен в Kali Linux по умолчанию, так что его можно использовать сразу после установки системы.

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

PIP Kali Linux установить

Подробнее о библиотеках я расскажу в следующей главе, а пока отмечу, что если нужна какая-то библиотека, недоступная через APT и не входящая в дистрибутив Kali Linux, ее можно быстро установить с помощью PIP.

Библиотеки Python, включенные в Kali Linux

Python без библиотек практически бесполезен. Каждая библиотека добавляет новые функции, которые можно использовать в скриптах на Python. Нет нужды писать все с нуля — можно опираться на проекты других разработчиков и просто повторно использовать их код.

В Kali Linux по умолчанию уже установлено несколько десятков библиотек Python (возможно, даже больше сотни). Так что для большинства задач необходимые библиотеки уже будут в наличии.

Вот неполный список некоторых из них:

Kali Linux Python Библиотеки

Этот список можно получить с помощью команды:

Позже я приведу пример, а пока отмечу, что если нужна библиотека, которой нет в системе, её обычно можно установить через APT, используя такой синтаксис:

Или через PIP, как было показано ранее:

Вам также может быть интересны статьи: «Использование библиотеки dnspython» и «Библиотеки Python для работы с местоположением».

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

Редакторы кода на Python для Kali Linux

В Kali Linux из коробки не включено никаких графических текстовых редакторов, кроме блокнота и Nano. Однако, поскольку Kali Linux основана на Debian, большинство популярных редакторов можно установить из репозитория по умолчанию или использовать пакеты от разработчиков.

Странно, что разработчики Kali Linux не включили хотя бы один графический редактор, учитывая, что все остальное настроено. Видимо, они не смогли определиться с выбором :-).

В любом случае, я пробовал установить VS Code и Geany — все прошло гладко.

VS Code не является open source, но открытая версия (code-oss) есть в репозитории по умолчанию. Для тех, кто привык к VS Code, этого будет достаточно. Установка через APT:

Kali Linux Python редакторы кода

Мы подробно рассказали о процессе установки в статье «Как установить VS Code на Kali Linux».

Аналогично для Geany:

Для других редакторов придeтся либо добавить репозиторий, либо использовать пакеты Debian, либо компилировать из исходников вручную. Например, чтобы установить Sublime Text, можно скачать пакет Debian  (есть также репозиторий).

Nano входит в дистрибутив по умолчанию, множество других редакторов есть в репозитории, а некоторые имеют версию для Linux, совместимую с Kali.

Практическое применение Python в Kali Linux

Всe это очень интересно, но Kali Linux в первую очередь ориентирована не на разработчиков на Python. Так зачем же использовать Python в Kali Linux и что конкретно с ним можно делать? Давайте рассмотрим несколько практических примеров.

Сканирование сети и запуск атак

В Kali Linux по умолчанию установлено множество инструментов для работы в терминале. К примеру, Nmap — популярный инструмент для сканирования хостов в сети. Но мало кто знает, что есть библиотека python-nmap, которая позволяет вызывать функции Nmap прямо из Python скриптов.

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

Странно, что библиотека Nmap не входит в Kali Linux по умолчанию, но ее можно легко установить:

Kali Linux python3-nmap

Далее эту библиотеку можно использовать в скриптах для сканирования открытых портов в сети.

Kali Linux python3 nmap

Ниже простой пример скрипта, который сканирует порты на заданном хосте (192.168.222.100) в заданном диапазоне (22-80), а затем с помощью функции has_tcp() проверяет, отвечают ли SSH и HTTP:

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

Обратите внимание: если использовать библиотеку с PyPi, синтаксис может немного отличаться. Всегда ориентируйтесь на документацию к конкретной версии библиотеки.

Перехват и изменение пакетов

Еще один полезный инструмент в Kali Linux — Scapy, который позволяет работать с сетевыми пакетами. У него тоже есть Python библиотека, так что всю работу можно выполнять прямо в скриптах. Scapy и его библиотека входят в состав Кали Линукс.

С помощью функции sniff() можно, например, анализировать пакеты в сети и выполнять определённые действия в зависимости от их содержимого или назначения. Или просто отправлять ping на IP-адрес и что-то делать в случае ответа.

Мы рассказали об использовании Scapy в статье «Создание сканера Wi-Fi сетей на Python и Scapy».

Сканер сетей WiFi Python Scapy

Как видите, подход тот же, что и с Nmap — берем уже готовый инструмент Kali Linux и используем его возможности в Python, чтобы применять циклы, запускать разные действия по результатам и т.д.

Чтобы опробовать на практике, выберите знакомый вам инструмент и почитайте документацию к его Python библиотеке.

Заключение

Итак, мы рассмотрели основы работы с Python в Kali Linux — как установить интерпретатор и менеджер пакетов, какие библиотеки уже включены и как добавить недостающие, как выбрать удобный редактор кода.

Конечно, для решения многих задач взлома и анализа безопасности инструменты командной строки по-прежнему останутся оптимальным выбором. Но даже базовые знания Python позволят сделать работу в Kali Linux более эффективной и удобной.

ПОЛЕЗНЫЕ ССЫЛКИ:

QUASAR

Этичный хакер: компьютерный ниндзя и мастер цифровых тайн.

Добавить комментарий