
Многопоточный валидатор уязвимостей для Apache Struts 2 (CVE-2017-5638), сканирующий тысячи конечных точек через инъекцию HTTP-заголовков для обнаружения Struts-Shock без вредоносных нагрузок.
Этот скрипт предназначен для проверки уязвимости Apache Struts 2 (CVE-2017-5638), также известной как Struts-Shock. Он абсолютно безвреден, так как не внедряет вредоносную нагрузку, а только добавляет HTTP-заголовок с именем 'STRUTS2-VALIDATION', чтобы можно было определить, уязвима ли система.
Благодаря многопоточности, он может обработать более 2500 приложений, разбросанных по всему миру, менее чем за 10 минут. Таким образом, он может быть очень полезен для проверки корпоративных приложений в больших масштабах.
Существует два способа запуска этого скрипта: с многопоточностью и без неё. Разница только во времени выполнения. Чтобы включить многопоточность, нужно передать параметр thread.
Первый параметр должен быть TXT-файлом, содержащим все целевые URL, по одному на строку. Обратите внимание, что URL должны быть полными, например, https://target.com/admin/myStrutsPage.action
Вот пример использования без многопоточности:
struts-shock-validation.py target_urls.txt
Теперь с использованием многопоточности:
struts-shock-validation.py target_urls.txt thread
Он автоматически создаёт папку с именем results, и при каждом запуске создаёт папку, названную по дате, содержащую результат выполнения. Если включена многопоточность, будет создаваться по одному файлу на поток с именем thread_, которые можно игнорировать, так как после завершения он объединит результаты всех потоков в один TXT-файл с тем же именем (дата/временная метка), что и его папка выполнения.