Содержание статьи
Анализируем автомобиль
Автор: Алексей Синцов
URL: https://github.com/eik00d/CANToolz
Система: Windows / Linux / OS Х
CANToolz — это фреймворк для анализа CAN-шины автомобиля. С его помощью можно изучать внутреннюю сеть автомобиля и, кроме того, манипулировать действиями самого автомобиля. Это решение пригодится как разработчикам нестандартных «расширений» для авто, так и просто хакерам, которым интересно разобраться в устройстве своего четырехколесного друга. В Сети есть множество утилит для работы с CAN-трафиком, но CANToolz — это модульный фреймворк с открытым исходным кодом, с веб-интерфейсом, тестовыми сценариями и атаками, то есть что-то наподобие Burp Suit, только для CAN-сети. В составе есть базовые примеры: снифинг сети, MITM, сканирование ECU-устройств и другие. Все эти примеры легко расширяются и адаптируются под собственные нужды (если ты немного знаком с питоном).
Один из основных акцентов Алексей делает именно на методиках изучения формата сообщений и поиска основных команд автомобиля. Например, мы хотим научиться автоматизированно открывать двери, используя только CAN-сообщения, и в этом нам поможет именно CANToolz, в котором есть (кроме известных техник вроде sniff and replay) более эффективные методы, основанные на разнице множеств и статистическом анализе.
Для запуска набираем:
# python cantoolz.py -g w -c examples/can_sniff.py
Затем открываем в браузере http://localhost:4444.
Для установки необходимо иметь Python 3.4 и pySerial. Также есть версия под Python 2.7.
RouterSploit
Автор: Reverse Shell Security
URL: https://github.com/reverse-shell/routersploit
Система: Linux/Windows
RouterSploit — это атакующий фреймворк с открытым исходным кодом на Python, специально нацеленный на встраиваемые устройства типа роутеров.
Для установки достаточно трех команд:
# git clone https://github.com/reverse-shell/routersploit
# cd routersploit
# pip install -r requirements.txt
Состоит он из трех типов модулей для пентеста:
- exploits — модули, которые эксплуатируют уязвимости;
- creds — модули для проверки аутентификационных данных на сервисах (FTP, SSH, Telnet, HTTP basic auth, HTTP form auth, SNMP);
- scanners — модули для проверки цели на уязвимости.
Эксплоиты есть для оборудования от таких вендоров, как 2Wire, Asmax, ASUS, Belkin, Cisco, Comtrend, D-Link, Fortinet, Juniper, Linksys, NETGEAR, Technicolor.
Модулей сканирования сейчас два. Один для обнаружения в сети всех устройств от компании D-Link, а второй модуль для autopwn.
Модуль проверки аутентификационных данных для каждого сервиса может работать в одном из двух режимов: в режиме проверки паролей по умолчанию и в режиме перебора.
Сам интерфейс сделан в духе Metasploit, так что разобраться с RouterSploit не составит труда.
DSCompromised
Авторы: Matt Hastings, Ryan Kazanciyan
URL: https://github.com/matthastings/DSCompromised
Система: Windows
DSCompromised — это фреймворк на PowerShell для управления системами и их заражения через Windows Desired State Configuration (DSC). DSC — это новая технология в Windows Management Framework 4.0 (PowerShell версии 4), установленная по умолчанию на операционных системах Windows начиная с Server 2012 R2 и Windows 8.1.
Если коротко, то DSC — это новая платформа управления конфигурациями для Windows, которая управляется из PowerShell и использует стандартные Managed Object Format (MOF) файлы. При этом нет необходимости в Active Directory (в отличие от SCCM). Чем-то данная платформа похожа на Puppet и Chef — хотя она и не заменяет их, а, скорее, дополняет.
Данная платформа умеет: загружать и создавать файлы и директории, запускать процессы, выполнять скрипты, создавать пользователей, управлять сервисами, устанавливать ПО и много чего еще.
DSCompromised как раз позволяет использовать все это для закрепления на системе после ее захвата и держаться там при помощи стандартных средств.
Впервые инструмент был представлен на конференции Black Hat Asia 2016, и подробнее о нем можно узнать из слайдов DSCompromised: A Windows DSC Attack Framework.
Мультиплатформенный RAT
Автор: n1nj4sec
URL: https://github.com/n1nj4sec/pupy
Система: Windows / Linux / OS Х / Android
Pupy — это проект с открытым исходным кодом, поддерживающий большое число операционных систем, со встроенным интерпретатором Python, что позволяет использовать его модули для загрузки Python-пакетов из памяти и прозрачно получать доступ к Python-объектам. Программа может обмениваться данными по различным транспортам и имеет большое количество интересных модулей. При работе на ОС Windows инструмент использует reflective DLL injection и не оставляет никаких следов на диске.
Модули:
- миграция из процесса в процесс (также x86 -> x64 и x64 -> x86);
- выполнение команд;
- интерактивный шелл (cmd.exe, /bin/sh, /bin/bash, ...);
- интерактивный Python-шелл;
- загрузка и выгрузка файлов;
- создание скриншотов;
- снимок с веб-камеры (Windows и Android);
- выполнение в памяти PE exe для x86 и x64;
- SOCKS5-прокси;
- локальное и удаленное перенаправление портов;
- выполнение шелл-кода;
- кейлоггер;
- мауслоггер — снимок возле области, где было нажатие.
Anti-Sandbox и Anti-VM
Автор: AlicanAkyol
URL: https://github.com/AlicanAkyol/sems
Система: Windows
Данный проект позволяет детектировать выполнение кода под различными песочницами, виртуальными машинами и под средствами анализа. Для обнаружения каждого сценария используется множество признаков:
- обнаружение VirtualBox: файлы, реестр, папки, сервисы, BIOS и так далее;
- обнаружение VMware: файлы, реестр, папки, сервисы, BIOS, память, IDTR, LDTR, TR, SMSW, I/O Port и так далее;
- обнаружение QEMU: реестр, BIOS, CPU;
- обнаружение Cuckoo Sandbox: файлы, папки, порты, перехваченные функции, пайпы, модули и так далее;
- обнаружение Sandboxes (Anubis, Thread Expert, Cuckoo, Sandboxie, CWSandbox): имя компьютера, модули, наличие интернета, пространство на жестком диске, файлы и так далее;
- обнаружение инструментов анализа: Immunity Debugger, OllyDbg, IDA Pro, Regshot, Fiddler, Wireshark, Process Monitor, Process Hacker, Process Explorer.
Естественно, данный код может использоваться как для благих целей — тестирования собственного окружения на качественное скрытие от вредоносного кода, так и наоборот — внутри вредоносного кода для избегания анализа. Игра в кошки-мышки продолжается.
Pazuzu
Автор: Borja Merino
URL: https://github.com/BorjaMerino/Pazuzu
Система: Windows
Pazuzu — это Python-скрипт, который позволяет встраивать один исполняемый файл в собранную DLL с помощью reflective DLL injection. Это позволит запускать собственный исполняемый файл напрямую из памяти.
Есть множество сценариев, когда это может пригодиться. Например, если ты хочешь проэксплуатировать уязвимость и запустить свой собственный исполняемый файл вместо сторонней reflective DLL. В таком случае ты просто выбираешь предпочитаемую нагрузку (reverse TCP, HTTP, HTTPS...) и устанавливаешь DLL, сгенерированную Pazuzu. Pazuzu будет выполнять твой исполняемый код в пределах адресного пространства уязвимого процесса до тех пор, пока есть раздел .reloc.
Более наглядно этот процесс представлен на картинке:
Есть ряд ограничений:
- обязательно присутствие .reloc-секции;
- нет поддержки .NET CLR;
- поддержка только 32-битных исполняемых файлов.
Пентест Modbus
Автор: enddo
URL: https://github.com/enddo/smod
Система: Linux / OS X
Smod — это модульный фреймворк с разными диагностическими и оффенсив-возможностями, которые могут тебе пригодиться при пентесте протокола Modbus, наиболее часто встречающегося в технологических сетях. Это полная реализация Modbus-протокола на Python с помощью библиотеки Scapy.
Интерфейс и принцип работы похож на всем известный Metasploit, так что освоить инструмент очень быстро и просто. На данный момент в фреймворке присутствует 14 модулей, среди которых:
- несколько досов;
- несколько модулей для фаззинга;
- модуль обнаружения Modbus-протокола;
- модуль перечисления функций в Modbus;
- модуль переборов UID;
- модуль для атаки ARP-спуфинг.
Для запуска фреймворка набираем:
# python smod.py
Для вызова справки:
SMOD >help
Для использования фреймворка ничего особенного не требуется, только наличие Python 2.7 и библиотека Scapy.