Hacking web-applications, Kali Linux, Kali Linux для продвинутого тестирования на проникновение

#59 Kali Linux для продвинутого тестирования на проникновение. Обнаружение брандмауэра веб-приложений и балансировщиков нагрузки.

Здравствуйте, дорогие друзья.

Следующим шагом является определение наличия сетевых защитных устройств, таких как брандмауэры и IDS/IPS, для того, чтобы выявлять любые мошеннические технологии (honeypots). Все более распространенное защитное устройство — это брандмауэр веб-приложений (WAF) и сеть доставки содержимого DNS (CDN). Если используется WAF, тестировщики должны убедиться, что атаки, особенно те, которые полагаются на созданный ввод, кодируются для обхода WAF.

WAF можно определить, проверив файлы cookie вручную (некоторые WAF помечают или изменяют файлы cookie, которые передаются между веб-сервером и клиентом) или изменениями в информации заголовка (определяется, когда тестер подключается к порту 80 с помощью инструмента командной строки, такого как Telnet). Процесс обнаружения WAF можно автоматизировать с помощью скрипта nmap http-waf-detect.nse, как показано на рисунке ниже:

nmap script detecting the WAF on port 80

Сценарий nmap определяет наличие WAF; однако тестирование скрипта показало, что он не всегда точен в своих выводах, и что возвращаемые данные могут быть слишком общими для вырабатывания эффективной стратегии обхода брандмауэра. Сценарий wafw00f представляет собой автоматизированный инструмент для идентификации сетевых брандмауэров и снятия fingerprint; где тестирование определяет, что это наиболее точный инструмент для данной цели. Скрипт легко вызвать из Kali, и достаточный вывод показан на рисунке ниже:

wafw00f tool identifying the Cloudflare WAF on the target website

Детектор балансировки нагрузки (lbd) — это сценарий оболочки Bash, который определяет, использует ли данный домен балансировку нагрузки DNS и/или HTTP. Это важная информация, с точки зрения тестировщика, поскольку это может объяснить кажущиеся аномальными результаты, возникающие при тестировании одного сервера, а затем балансировщик нагрузки переключает запросы на другой сервер. lbd использует различные проверки для идентификации наличия балансировки нагрузки. Пример вывода показан на рисунке ниже:

Load balancer detection using DNS HTTP diff

Fingerprinting веб-приложения и CMS

Снятие fingerprints веб-приложений — первая задача пентестера, чтобы узнать версию типа работающего веб-сервера и реализованные веб-технологии. Они позволяют злоумышленникам определять известные уязвимости и соответствующие эксплойты.

Злоумышленники могут использовать любой инструмент командной строки, который может подключаться к удаленному узлу. Например, мы использовали команду netcat на рисунке ниже, для подключения к жертве. Хост на порту 80 выполнил команду HTTP HEAD, чтобы определить, что выполняется на сервере:

Banner grabbing through netcat and HTTP request headers

Далее возвращается ответ HTTP-сервера, который включает тип веб-сервера, на котором приложение выполняется, а раздел сервера содержит подробную информацию об используемой технологии, для создания приложения — в данном случае PHP 7.1.30. Теперь злоумышленники могут определять известные уязвимости, используя такие источники, как CVE Details (см. https://www.cvedetails.com/vulnerability-list/vendor_id-74/product_id-128/PHP-PHP.html).

Конечной целью тестирования на проникновение является получение конфиденциальной информации. Сайт должен быть проверен для определения CMS, которая использовалась для его создания и обслуживания. CMS-приложения, такие как Drupal, Joomla и WordPress, могут быть настроены с уязвимым административным интерфейсом, который позволяет получить доступ к повышенным привилегиям или может содержать уязвимости. Kali включает в себя автоматический сканер wpscan, который снимает fingerprints CMS WordPress, чтобы определить информацию о версии, как показано ниже:

Пример вывода показан на рисунке ниже:

Fingerprinting WordPress and scanning using wpscan

Для проверки информации, которая уже собрана, а также определена существующая структура каталогов и файлов конкретного сайта. Типичные находки поисковых роботов включают административные порталы, файлы конфигурации (текущая и предыдущая версии), которые могут содержать жестко закодированные учетные данные и информацию для доступа о внутренней структуре, резервных копиях сайта, заметках администратора, конфиденциальной личной информации и исходный код.

Kali поддерживает несколько поисковых роботов, включая Burp Suite Community Edition, DirBuster, ZAP, dirb, wfuzz и CutyCapt. Наиболее часто используемым инструментом является DirBuster.

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

Ниже приведены шаги, чтобы открыть DirBuster в графическом интерфейсе и начать сканирование:

1. Откройте приложение, запустив sudo dirbuster в терминале или перейдя из Applications > 03 web application analysis > Web crawlers and directory bruteforce > dirbuster.

2. Введите адрес нашего целевого веб-сайта в поле URL.

3. Выберите список слов, нажав кнопку Обзор; его можно настроить, или Вы можете использовать известные списки слов, хранящиеся в /usr/share/dirbuster/wordlists/.

4. Введите расширение файла и нажмите «Пуск»:

Running OWASP DirBuster to enumerate valid files on the target web
application

На этом все. Всем хорошего дня!

#1 Kali Linux для продвинутого тестирования на проникновение. Целевое тестирование.

#2 Kali Linux для продвинутого тестирования на проникновение. Методология тестирования.

#3 Kali Linux для продвинутого тестирования на проникновение. Введение в возможности Kali Linux.

#4 Kali Linux для продвинутого тестирования на проникновение. Установка на Raspberry Pi 4, VMware Workstation Player, VirtualBox, Docker.

#5 Kali Linux для продвинутого тестирования на проникновение. Kali в облаке Amazon Web Services (AWS).

#6 Kali Linux для продвинутого тестирования на проникновение. Kali на облачной платформе Google (GCP).

#7 Kali Linux для продвинутого тестирования на проникновение. Kali на Android (телефоны без рута).

#8 Kali Linux для продвинутого тестирования на проникновение. Настройка и кастомизация Kali Linux.

#9 Kali Linux для продвинутого тестирования на проникновение. Создание тестовой лаборатории. Active Directory и контроллер домена.

#10 Kali Linux для продвинутого тестирования на проникновение. Создание тестовой лаборатории. Установка Microsoft Exchange Server 2016.

#11 Kali Linux для продвинутого тестирования на проникновение. Создание тестовой лаборатории. Metasploitable3.

#12 Kali Linux для продвинутого тестирования на проникновение. Создание тестовой лаборатории. Mutillidae.

#13 Kali Linux для продвинутого тестирования на проникновение. Создание тестовой лаборатории. CloudGoat.

#14 Kali Linux для продвинутого тестирования на проникновение. OSINT и Пассивная разведка.

#15 Kali Linux для продвинутого тестирования на проникновение. Наступательный OSINT. Maltego.

#16 Kali Linux для продвинутого тестирования на проникновение. Наступательный OSINT. OSRFramework. theHarvester.

#17 Kali Linux для продвинутого тестирования на проникновение. Наступательный OSINT. TinEye. Shodan. SpiderFoot.

#18 Kali Linux для продвинутого тестирования на проникновение. Наступательный OSINT. Гугл Дорки.

#19 Kali Linux для продвинутого тестирования на проникновение. Защитный OSINT. Даркнет. Аналитика угроз.

#20 Kali Linux для продвинутого тестирования на проникновение. Защитный OSINT. CUPP. CeWL. Twofi.

#21 Kali Linux для продвинутого тестирования на проникновение. Активная разведка внешней и внутренней сети.

#22 Kali Linux для продвинутого тестирования на проникновение. Использование прокси с анонимными сетями. Tor. ProxyChains. 

#23 Kali Linux для продвинутого тестирования на проникновение. Разведка DNS и сопоставление маршрутов. Recon-ng framework.

#24 Kali Linux для продвинутого тестирования на проникновение. IPv4. IPv6. Инструменты IPv6.

#25 Kali Linux для продвинутого тестирования на проникновение. Идентификация внешней сетевой инфраструктуры.

#26 Kali Linux для продвинутого тестирования на проникновение. Сканирование портов. Nmap. Masscan.

#27 Kali Linux для продвинутого тестирования на проникновение. Информация DHCP. ARP-broadcasting.

#28 Kali Linux для продвинутого тестирования на проникновение. Использование SNMP. Разведка серверов домена Active Directory.

#29 Kali Linux для продвинутого тестирования на проникновение. Перечисление среды Microsoft Azure. Legion. Машинное обучение для разведки.

#30 Kali Linux для продвинутого тестирования на проникновение. Оценка уязвимости. Эксплойты.

#31 Kali Linux для продвинутого тестирования на проникновение. Сканирование уязвимостей с помощью Nmap. Кастомизация сценариев NSE.

#32 Kali Linux для продвинутого тестирования на проникновение. Сканеры уязвимостей веб-приложений. Nikto.

#33 Kali Linux для продвинутого тестирования на проникновение. OWASP ZAP.

#34 Kali Linux для продвинутого тестирования на проникновение. Сканеры уязвимостей для мобильных приложений.

#35 Kali Linux для продвинутого тестирования на проникновение. Сканер сетевых уязвимостей OpenVAS.

#36 Kali Linux для продвинутого тестирования на проникновение. Коммерческие сканеры уязвимостей. Nessus. Qualys.

#37 Kali Linux для продвинутого тестирования на проникновение. Специализированные сканеры.

#38 Kali Linux для продвинутого тестирования на проникновение. Продвинутая социальная инженерия и физическая безопасность.

#39 Kali Linux для продвинутого тестирования на проникновение. Социальная инженерия в компьютерных и мобильных атаках.

#40 Kali Linux для продвинутого тестирования на проникновение. Физические атаки на консоли. Samdump2 и chntpw.

#41 Kali Linux для продвинутого тестирования на проникновение. Создание мошеннического физического устройства. Raspberry Pi. MalDuino: BadUSB.

#42 Kali Linux для продвинутого тестирования на проникновение. The Social Engineering Toolkit (SET).

#43 Kali Linux для продвинутого тестирования на проникновение. The Social Engineering Toolkit (SET). Социально-инженерные атаки.

#44 Kali Linux для продвинутого тестирования на проникновение. The Social Engineering Toolkit (SET). Метод веб-атаки с несколькими атаками.

#45 Kali Linux для продвинутого тестирования на проникновение. Скрытие исполняемых файлов и запутывание URL-адреса злоумышленника.

#46 Kali Linux для продвинутого тестирования на проникновение. Фишинг по электронной почте с помощью Gophish.

#47 Kali Linux для продвинутого тестирования на проникновение. Запуск фишинговой атаки с помощью Gophish.

#48 Kali Linux для продвинутого тестирования на проникновение. Беспроводные и Bluetooth-атаки.

#49 Kali Linux для продвинутого тестирования на проникновение. Беспроводная разведка.

#50 Kali Linux для продвинутого тестирования на проникновение. Обход скрытого SSID.

#51 Kali Linux для продвинутого тестирования на проникновение. Обход проверки подлинности MAC-адреса и открытой аутентификации.

#52 Kali Linux для продвинутого тестирования на проникновение. Атака на WPA и WPA2. Брут-форс атака.

#53 Kali Linux для продвинутого тестирования на проникновение. Атака на беспроводные маршрутизаторы с помощью Reaver.

#54 Kali Linux для продвинутого тестирования на проникновение. Атаки типа «отказ в обслуживании» (DoS) против беспроводных сетей.

#55 Kali Linux для продвинутого тестирования на проникновение. Работа с Bettercap. Атака Evil Twin с использованием Wifiphisher.

#56 Kali Linux для продвинутого тестирования на проникновение. WPA3. Bluetooth-атаки.

#57 Kali Linux для продвинутого тестирования на проникновение. Эксплуатация веб-приложений. Методология взлома веб-приложений.

#58 Kali Linux для продвинутого тестирования на проникновение. Интеллект-карта хакера. Разведка веб-приложений.