
Использование полезных нагрузок (пейлоадов) позволяет проводить фаззинг веб-приложения, для выявления аномалий/признаков уязвимостей. В этой статье я рассмотрю несколько вариантов пейлоадов для тестирования веб-приложений.
Полезные нагрузки
Полезные нагрузки представляют из себя список последовательностей символов, служебных команд, имен файлов, т.н. полиглотов и т.д. и служат для полуавтоматизированного исследования веб-приложений. Если говорить простыми словами — исследователь выявляет точки входа (инпут формы, аргументы, динамически поля) и подает в качестве значений полезные нагрузки.
Большинство современных инструментов безопасности содержит предустановленные списки полезных нагрузок, представленных обычно в виде текстовых файлов.
Например для выявления критичных файлов инструментами типа 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.
Данные пейлоады помогут составить основу для применения тех или иных атак, включая обфускацию пейлоадов, их модификацию и комбинирование.

