Главная » Хабрахабр » Полезные нагрузки для тестирования веб-приложений

Полезные нагрузки для тестирования веб-приложений

image
 
Использование полезных нагрузок (пейлоадов) позволяет проводить фаззинг веб-приложения, для выявления аномалий/признаков уязвимостей. В этой статье я рассмотрю несколько вариантов пейлоадов для тестирования веб-приложений.

Полезные нагрузки

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

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

Например для выявления критичных файлов инструментами типа wfuzz или dirb можно воспользоваться неплохим списком от Bo0oM.

Пример пейлоадов:

.ftpquota
.gem
.gfclient/
.gfclient/pass
.git
.git-credentials
.git-rewrite/
.git/
.git/config
.git/HEAD
.git/index
.git/logs/

После того, как веб-приложение было исследовано, составлена карта сайта, выявлены веб-формы, инпуты, параметры и аргументы — можно приступать к тестированию. Для этого необходимо выбрать позицию применения пейлоада (на примере Burp Suite):

После выбора позиции необходимо выбрать список пейлоадов для применения, при необходимости установить признаки отбора (для фильтрации результатов) и запустить атаку:

Для выявления различных уязвимостей используются различные наборы пейлоадов, собранные в те или иные «сборки» и распределенные по типам.

Payloads All The Things

Payloads All The Things — один из наиболее популярных репозиториев полезных нагрузок, содержит следующие категории (которых хватит практически на «все случаи жизни» тестирования веб-приложений):

CRLF injection;
Methodology and Resources;
Remote commands execution;
Web cache deception;
CSV injection;
NoSQL injection;
Server Side Template injections;
XPATH injection;
CVE Exploits;
OAuth;
SQL injection;
XSS injection
File Inclusion - Path Traversal;
Open redirect;
SSRF injection;
XXE injections;
Insecured source code management;
PHP juggling type;
Tar commands execution;
Java Deserialization;
PHP serialization;
Traversal directory.

SecLists

SecLists — еще одна популярная «сборка» пейлоадов, предназначенная как для тестирования веб-приложений, так и сетевой инфраструктуры.

Данная сборка примечательна более «узкой» специализацией пейлоадов под конкретные виды уязвимостей. Например содержит специализированные пейлоады для XSS:

XSS-BYPASS-STRINGS-BRUTELOGIC.txt;
XSS-BruteLogic.txt;
XSS-JHADDIX.txt;
XSS-RSNAKE.txt;
XSS-Vectors-Mario.txt;
XSS-WITH-CONTEXT-JHADDIX.txt.

Специализированные пейлоады для SQL/NoSQL-инъекций:

MSSQL-Enumeration.fuzzdb.txt;
MSSQL.fuzzdb.txt;
MYSQL.fuzzdb.txt;
Metacharacters.fuzzdb.txt;
MySQL-Read-Local-Files.fuzzdb.txt;
MySQL-SQLi-Login-Bypass.fuzzdb.txt;
NoSQL.txt.

Intruder Payloads

Intruder Payloads — репозиторий пейлодов от автора BruteX, Sn1per и Findsploit. Помимо листов фаззинга содержит атакующие пейлоды для различных инструментов (repeater, intruder) утилиты BurpSuite:

01_burpattack_basic_methods;
01_burpattack_dirbuster;
01_burpattack_fast_fuzz;
02_burpattack_vulnerabilities_all;
03_burpattack_find_inject;
03_burpattack_find_injectx;
04_burpattack_basic_fuzz;
04_burpattack_sqli_quick_fuzz;
05_burpattack_full_fuzz;
burpattack_basic_auth_brute;
burpattack_brute_force;
burpattack_command_exec;
burpattack_find_injectx;
burpattack_nums_1-100;
burpattack_overflow;
burpattack_server_side_include;
burpattack_shellshock;
burpattack_sqli_authbypass;
burpattack_sqli_error_based;
burpattack_sqli_quick_fuzz;
burpattack_sqli_time_based;
burpattack_url_attacks;
burpattack_wordpress;
burpattack_xmlrpc_dos;
burpattack_xpath_injection;
burpattack_xss;
burpattack_xss_stored;
burpattack_xxe;
burpconfig_default;
burprepeater_xxe;
shellshock_attack.

Fuzzdb project

Fuzzdb содержит списки различных пейлоадов. Для тестирования веб-приложений полезным будет список «attack»:

business-logic;
control-chars;
disclosure-directory;
disclosure-localpaths/unix;
disclosure-source;
email;
file-upload;
format-strings;
html_js_fuzz;
http-protocol;
integer-overflow;
ip;
json;
ldap;
lfi;
mimetypes;
no-sql-injection;
os-cmd-execution;
os-dir-indexing;
path-traversal;
redirect;
rfi;
server-side-include;
sql-injection;
string-expansion;
unicode;
xml;
xpath;
xss.

Foospidy

Репозиторий Foospidy содержит список пейлодов для выявления критичных файлов и папок на веб-сервере:

apache-user-enum-1.0.txt;
apache-user-enum-2.0.txt;
directory-list-1.0.txt;
directory-list-2.3-big.txt;
directory-list-2.3-medium.txt;
directory-list-2.3-small.txt;
directory-list-lowercase-2.3-big.txt;
directory-list-lowercase-2.3-medium.txt;
directory-list-lowercase-2.3-small.txt.


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


x

Ещё Hi-Tech Интересное!

[Из песочницы] Настройка HTTP/2 на примере Apache 2.4, PHP 7 и Ubuntu 18.04 LTS

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

«Взлетит или нет»: на рынке стриминговых видеосервисов появится новый игрок

Стриминговых видеосервисов сегодня много. Помимо Netflix, есть Amazon Prime, HBO, Starz и множество других. Влиться в этот рынок решили и в Disney. Компания готовит к запуску в 2019 году платформу Disney+. Подписчикам сервиса предложат сериалы во вселенной «Звездных войн», Marvel ...