⚡ ffuf: Гоночный болид для самых сложных трасс
Кратко: ffuf (Fuzz Faster U Fool) — это веб-фаззер на Go, который умеет подставлять слова из словаря в любую часть HTTP-запроса: URL, заголовки, тело POST, параметры, JSON . Если Gobuster — надёжный внедорожник для поиска папок, то ffuf — универсальный болид для API, параметров и сложных атак. Написан в 2018 году, чтобы стать «швейцарским ножом» для пентестера.
▫️ Как устроен (FUZZ-кит) В ffuf нет режимов (dir, dns). Вместо них — магическое слово FUZZ. Вы ставите его туда, куда хотите вставить слова из словаря.
# Ищем папки ffuf -w wordlist.txt -u https://target.com/FUZZ
# Ищем поддомены через Host-заголовок ffuf -w subdomains.txt -u https://target.com -H "Host: FUZZ.target.com"
# Фаззим POST-параметр (логин) ffuf -w passwords.txt -X POST -d "user=admin&pass=FUZZ" \ -u https://target.com/login -fc 401
▫️ Главное оружие: мощные фильтры Это сильная сторона ffuf. Там, где Gobuster шумит 404-ми ошибками, ffuf их отсекает. · -fc — фильтр по коду ответа (-fc 404,403) · -fs — фильтр по размеру (например, страница 404 весит 4242 байта — скрываем) · -fr — фильтр по регулярному выражению (-fr "Not Found") · -fw — фильтр по количеству слов
▫️ Автокалибровка (AI-помощник) Современные сайты — это динамические фреймворки. Шаблон страницы одинаков, а размер ответа может плавать . Флаг -ac анализирует базовый ответ и сам подбирает фильтры. Если лень писать -fs — включайте -ac.
▫️ Режимы: clusterbomb (атака грубой силой) По умолчанию — все комбинации из нескольких словарей.
ffuf -w users.txt:USER -w passes.txt:PASS \ -d "username=USER&password=PASS" \ -u https://target.com/login -mode clusterbomb
Перебирает все комбинации USER x PASS. 1000 логинов × 1000 паролей = миллион запросов. pitchfork — параллельный перебор (1-й логин + 1-й пароль, 2-й + 2-й…). Нужно, когда словари синхронизированы.
▫️ Raw Request (Король аутентификации) Самый мощный режим. Вместо ручного формирования команд вставляем сырой скопированный запрос.
Workflow: Логинимся через браузер → Копируем из Burp Suite как cURL → Сохраняем в req.txt → Ставим FUZZ на место атаки .
ffuf --request req.txt -w wordlist.txt -ac
Файл req.txt: POST /api/user/FUZZ HTTP/1.1 Host: target.com Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... Content-Type: application/json {"action":"view"}
Зачем это нужно? Тестирование IDOR на аутентифицированных эндпоинтах. JWT-токен в реквесте не нужно выдирать — он сам подставится.
▫️ Культурный феномен · Название — Fuzz Faster U Fool (оскорбительно-дружелюбное), идеально отражает дерзость инструмента. · Флаг -ac — «волшебная кнопка», которую включают, когда лень разбираться с фильтрацией. · Raw Request — убийца Burp Intruder (бесплатно и быстрее). · ffuf.me — тренировочный полигон для отработки навыков .
▫️ Современное положение (2026) ffuf — стандарт для профессионалов. В Kali Linux он есть, фаззинг API, поиск параметров и IDOR — его стихия.