X-TOOLS #197. Софт для взлома и анализа безопасности

J2EEScan

Автор: Enrico M.
URL: https://github.com/ilmila/J2EEScan
Система: Windows/Linux

J2EEScan — это плагин для известного Burp Suite. Цель данного плагина — улучшить покрытие тестов при пентестинге J2EE-приложений. Реализовано это все достаточно просто в виде новых тест-кейсов и новых подходов к обнаружению уязвимостей для J2EE-приложений. Плагин способен детектировать как общие уязвимости:

  • Expression Language Injection,
  • Local File include,
  • Incorrect Error Handling,
  • XML External Entity,
  • Information Disclosure,
  • Compliance Checks (HTTP Verb Tampering, Invoker Servlet и так далее),

так и уязвимости конкретных серверов приложений, в том числе:

  • Apache Struts;
  • Grails;
  • Apache Wicket;
  • Java Server Faces;
  • JBoss SEAM;
  • JBoss;
  • Tomcat;
  • Oracle Application Server;
  • Jetty;
  • Apache Axis.

Плагин активно развивается и время от времени пополняется новыми тест-кейсами на появившиеся уязвимости.

Dylib Hijack Scanner

Автор: Patrick Wardle
URL: https://objective-see.com/products/dhs.html
Система: Mac

Про DLL hijack на ОС Windows, я уверен, все знают и даже находили и использовали. Но напомню: заключается она в том, что из-за неправильной последовательности поиска программой DLL-библиотек атакующий может подложить свою DLL с вредоносным функционалом (Microsoft Security Advisory 2269637). Как оказалось, данная проблема существует и в Mac, только для dylib-библиотек. Все это может быть из-за нескольких вещей:

  • LC_LOAD_WEAK_DYLIB;
  • @RPATHS;
  • LC_LOAD_DYLIB + LC_RPATH.

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

Dylib hijack scanner (DHS) — это достаточно простенькая утилита, которая сканирует компьютер на наличие приложений, подверженных dylib hijacking или уже были hijacked.

Во время своего исследования автор идентифицировал уязвимости таких приложений под Mac, как iCloud Photos, Xcode, Word, Excel, Dropbox и другие.

За более детальным описанием данной уязвимости советуем обратиться к презентации автора «„DLL Hijacking“ on OS X? #@%& Yeah!» с конференции CanSecWest 2015.

rop-tool

Автор: t00sh
URL: https://github.com/t00sh/rop-tool
Система: Linux

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

Инструмент имеет четыре основные команды:

  • gadget — отвечает за поиск ROP-гаджетов;
  • patch — помогает патчить бинарный исполняемый файл;
  • info — отображает основную информацию о бинарном исполняемом файле;
  • search — производит поиск по бинарному исполняемому файлу.

Особенности:

  • поиск строк, поиск гаджетов, патчинг;
  • подсветка вывода;
  • Intel и AT&T синтаксис;
  • поддержка форматов ELF, PE и MACH-O;
  • поддержка big и little endian;
  • поддержка архитектур x86 и x86_64.

В качестве движка дизассемблера используется библиотека Capstone.

Примеры использования:

# Поиск гаджета
rop-tool g ./program
# Поиск строки в бинарнике
rop-tool s ./program -s "/bin/sh"
# Поиск всех строк в бинарнике
rop-tool s ./program -a
# Пропатчить бинарник по смещению 0х1000 байтами \xaa\xbb\xcc\xdd и сохранить как patched
rop-tool p ./program -o 0x1000 -b "\xaa\xbb\xcc\xdd" -O patched

LFI как семечки

Авторы: P0cL4bs Team
URL: https://github.com/P0cL4bs/Kadimus
Система: Linux

Kadimus — это инструмент на си для проверки сайтов на наличие LFI (Local File Inclusion) уязвимости и ее эксплуатации.

Особенности:

  • проверка всех URL-параметров;
  • /var/log/auth.log RCE;
  • /proc/self/environ RCE;
  • php://input RCE;
  • data://text RCE;
  • раскрытие исходного кода;
  • мультипоточность;
  • командный shell-интерфейс через HTTP-запросы;
  • поддержка прокси (socks4://, socks4a://, socks5:// ,socks5h:// и http://);
  • прокси socks5 для bind connections.

Пример сканирования:

./kadimus -U url_list.txt --threads 10 --connect-timeout 10 --retry-times 0

Пример получения исходного кода файла:

./kadimus -t localhost/?pg=contact -G -f "index.php%00" -O local_output.php --inject-at pg

Пример выполнения PHP-кода:

./kadimus -t localhost/?pg=php://input%00 -C '<?php echo "pwned"; ?>' -X input

При этом стоит также отметить появление возможности проверять сайты и на RFI (Remote File Inclusion) уязвимость.

ViDi Visual Disassembler

Автор: hasherezade
URL: http://hasherezade.net/ViDi/
Система: Windows

ViDi — это Visual Disassembler, инструмент для статического анализа исполняемых бинарных файлов, базирующийся на bearparser (библиотека для парсинга PE-формата) и Capstone. Последняя библиотека дала в последнее время большой толчок для активного развития подобных инструментов.

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

Текущие возможности:

  • PE/PE+, DOS MZ;
  • x86, x64.

В ближайших планах появление поддержки ELF-файлов. А так как в основе лежит дизассемблер Capstone, то можно сказать, что автор не ограничивается только этими архитектурами и, скорее всего, пойдет дальше.

Хоть проект и молодой и находится в бета-стадии, он все равно активно развивается.

victims version search

Автор: Антон Дедов
URL: https://github.com/adedov/victims-version-search
Система: Windows/Linux

При анализе защищенности Java-приложения часто встает задача определить, не присутствуют ли в анализируемом программном обеспечении сторонние библиотеки с уже известными уязвимостями. И конечно, делать это вручную очень муторно.

Victims-version-search — это Python-скрипт, который ищет уязвимости в конкретных версиях JAR-пакетов. Для выполнения своего функционала скрипт обращается к базе данных victims-cve-db. Эта база данных поддерживается и обновляется, последнее обновление датировано текущим годом.

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

  1. Maven manifest (pom.xml), если он присутствует.
  2. Версия из имени файла и имя файла как artifactId.
  3. Версия из META-INF/MANIFEST.MF с именем файла как artifactId.

Из сторонних зависимостей:

  • Python 2.6+;
  • PyYAML;
  • SQLite 3;
  • локальная копия victims-cve-db базы данных.

При достаточно простом подходе к решению данной задачи инструмент показывает очень хорошие результаты и практическую пригодность в деле. И как обычно, наличие исходного кода позволяет улучшать и настраивать инструмент под себя и внутренние проекты. Например, команда безопасности может заточить инструмент под проекты и для ОС Android.

MitM Pentesting Opensource T00lkit

Автор: peterubuntu10
URL: http://sourceforge.net/projects/netoolsh/
Система: Linux

Наверное, никогда не наступят те времена, когда атака «человек посередине» (MITM) потеряет свою актуальность и уйдет в учебники истории. Атака продолжает работать, активно использоваться и в некоторых направлениях даже расцветать. Автоматизировать ее — одна из задач.

Netool — это toolkit на bash, Python, Ruby, который позволяет автоматизировать работу с такими фреймворками, как Nmap, Driftnet, SSLstrip, Metasploit и Ettercap MITM-атаки. Инструмент призван упростить снифинг TCP/UDP-трафика, атаки man-in-the-middle, SSL sniff, DNS spoofing, DOS-атаки в сетях WAN/LAN, манипуляцию пакетами TCP/UDP с использованием etter-filters. Он дает возможность захватывать картинки из браузерных сессий, а также использовать macchanger для смены MAC-адреса.

Ключевые модули позволяют автоматизировать также некоторые атаки через DNS Spoof + MITM (фишинг — социальная инженерия) с помощью Metasploit, Apache 2 и Ettercap.

Недавно был введен веб-сканер inurlbr, который позволяет искать SQL-уязвимости, используя несколько поисковых движков, также он может быть использован в сочетании с другими фреймворками, например Nmap.

Пример:

inurlbr.php -q 1,2,10 --dork 'inurl:index.php?id=' --exploit-get ??0x27 -s report.log --comand-vul 'nmap -Pn -p 1-8080 --script http-enum --open _TARGET_'
d1g1: Редактор рубрики «X-TOOLS», известный white hat, специалист компании Digital Security
Похожие материалы