Взлом веб-приложений: введение в OWASP-ZAP

  • Автор темы Автор темы LeSh1y777
  • Дата начала Дата начала

LeSh1y777

Пользователь
Регистрация
25/9/25
Сообщения
5,682
Репутация
49
Лайки
153
Депозит
-8.95$
Добро пожаловать обратно, начинающие хакеры!

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

OWASP ZAP — это бесплатный сканер безопасности веб-приложений с открытым исходным кодом, предназначенный для поиска уязвимостей в них. Он работает как перехватывающий прокси-сервер, располагаясь между браузером и тестируемым веб-приложением, позволяя перехватывать, проверять и изменять HTTP/HTTPS-трафик в режиме реального времени.

В этом уроке мы рассмотрим этот мощный и универсальный инструмент.

Шаг

Начнём как обычно — с запуска Kali. В этом руководстве я буду использовать Kali 2025.2. В более ранних версиях Kali установлен OWASP ZAP, но в текущей версии его нет. Его можно легко установить через APT из репозитория Kali:

<strong>kali&gt;</strong> <strong>sudo apt install zaproxy -y</strong>

zap_installation.webp

Шаг

Если вы хотите запустить OWASP ZAP из командной строки, вы можете просто ввести:

kali&gt; zaproxy

Сначала вы увидите экран, как показано ниже. После того, как вы решите, сохранять ли сеанс ZAP, нажмите «Старт».

zap_main_screen.webp

В самом верху находится панель инструментов. Хочу обратить ваше внимание на несколько важных моментов:

  1. Выбор режима— позволяет переключаться между различными режимами работы в ZAP:
    • Безопасный режим : запрещены потенциально опасные действия (например, сканирование или атаки). Идеально подходит для пассивного анализа.
    • Защищенный режим : сканирование и атака разрешены, но только в отношении целей, которые вы явно отметили как находящиеся под контролем.
    • Стандартный режим : включен полный функционал без ограничений.
    • Режим атаки : ZAP активно сканирует новые цели по мере вашего перемещения. Полезно для автоматизированного исследования и тестирования.
  2. Параметры — обеспечивает доступ к параметрам конфигурации инструментов ZAP, интерфейса, поведения сканирования и многому другому.
  3. Дополнения — позволяют управлять и устанавливать дополнительные компоненты или плагины для расширения функциональности ZAP.
  4. Дерево сайта — отображает иерархическое представление приложения по мере его исследования или сканирования, показывая все обнаруженные страницы и конечные точки.
  5. Вкладки (Оповещения, История и т. д.)– представляют подробную информацию:
    • Оповещения : результаты проверок безопасности, полученные в ходе пассивного и активного сканирования.
    • История : Журнал всех HTTP-запросов и ответов.
    • Другие вкладки могут включать точки останова, скрипты и многое другое в зависимости от ваших настроек.
  6. Окно запроса/ответа — позволяет проверять, изменять, повторно отправлять или перехватывать HTTP-запросы и ответы.
zap_main_tools.webp

Шаг

Рекомендую вам, начав работу с ZAP, установить несколько полезных дополнений для расширения его возможностей. Нажмите «Дополнения» на панели инструментов, затем перейдите на вкладку «Маркет». После проверки обновлений вы сможете найти и установить следующие полезные дополнения:

  • Обнаружение технологий — помогает определить технологии, используемые целевым приложением (например, фреймворки, серверы, библиотеки).
  • Расширенный сканер SQL-инъекций — расширяет возможности ZAP по обнаружению сложных уязвимостей SQL-инъекций (аналогично SQLmap).
  • Скрипты Python — позволяет использовать скрипты Python для пользовательского сканирования, обработки или автоматизации.
  • Поддержка SAML — добавляет функциональность для работы с механизмами аутентификации на основе SAML.
zap_addons.webp

Шаг 4: Установите прокси в браузер

Чтобы упростить использование прокси, я установлю расширение для браузера Proxy SwitchyOmega .

zap_proxy_addon.webp


С помощью этого расширения мы можем создать специальный профиль для ZAP, установив прокси-сервер на
localhost и порт на 8080 .

zap_proxy_setup.webp

После этого мы сможем перенаправлять трафик через ZAP на целевые сайты, просто нажав на расширение и выбрав профиль ZAP. Однако при первой попытке открыть сайт мы столкнёмся с ошибкой SSL. Это происходит из-за того, что ZAP использует собственный сертификат для перехвата HTTPS-трафика.

Чтобы решить эту проблему, нам необходимо установить SSL-сертификат ZAP в браузере.

zap_cert_error.webp

Нам нужно открыть «Параметры» в ZAP и загрузить сертификат, как показано на снимке экрана ниже.

zap_cert.webp

После этого нам необходимо открыть настройки браузера и импортировать сертификат.

zap_import_cert.webp

Если все настроено правильно, сайт откроется без ошибки SSL.

zap_correct_cert.webp

Шаг

Допустим, наша цель — сайт vesti.ru. При открытии в браузере ZAP отобразит множество записей, включая различные CDN и сторонние домены. Чтобы сохранить чистоту и целенаправленность нашей тестовой среды, рекомендуется добавить целевой сайт в контекст. Это поможет отфильтровать нерелевантный трафик, не представляющий ценности для текущего тестирования.

zap_context.webp

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

Теперь, используя контекст, мы можем запустить Spider для сбора страниц, представленных на веб-сайте.

zap_spyder.webp

Теперь в дереве сайтов мы видим гораздо больше информации. Поверхность тестирования значительно расширилась. Кроме того, на вкладке «Оповещения» мы можем просмотреть проблемы, выявленные в ходе пассивного сканирования.

zap_alerts.webp

Далее, если мы находим ценный запрос, которым хотим манипулировать, мы можем открыть его в редакторе запросов, щелкнув по нему правой кнопкой мыши и выбрав «Открыть/Отправить повторно с помощью редактора запросов».

zap_request_editor.png
zap_request_editor_page.png

Заключение

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

В будущих уроках мы подробнее рассмотрим возможности этого мощного приложения для тестирования веб-приложений, так что заходите еще, опытные хакеры!
 
Назад
Сверху Снизу