
Высокоскоростной Go CLI для картирования поверхности атаки WordPress, фингерпринтинга плагинов и офлайн-корреляции CVE
Высокоскоростной Go CLI для картирования поверхности атаки WordPress, фингерпринтинга плагинов и офлайн-корреляции CVE.
FenrirLVX — это сфокусированная, малозаметная утилита безопасности на Go, созданная для авторизованных наступательных операций в сфере безопасности, триажа программ bug bounty и аудита периметра. Она выполняет фингерпринтинг целей WordPress, перечисляет плагины и темы, сопоставляет обнаруженные версии с локальной базой уязвимостей (vuln_db.json) и выдаёт детерминированные результаты триажа без зависимостей от внешних API.
[!IMPORTANT] Используйте FenrirLVX только против активов, которыми вы владеете или на оценку которых у вас есть явное письменное разрешение.
vuln_db.json).amd64, arm64, 386).brew install leviathan-offsec/tap/fenrir
fenrir --help
Скачайте архив для вашей платформы со страницы
releases. Каждый архив
содержит бинарный файл, vuln_db.json и файл SHA256SUMS. Проверьте его:
sha256sum -c SHA256SUMS --ignore-missing
./fenrir-v0.1.0-linux-amd64 --help
Запускайте его из каталога, содержащего vuln_db.json. База данных ищется
по относительному пути, поэтому бинарный файл и JSON-файл должны находиться вместе.
git clone https://github.com/leviathan-offsec/FenrirLVX.git
cd FenrirLVX
go build -o fenrir .
./fenrir --help
vuln_db.json включён в репозиторий, поэтому сборка из исходников полностью работает офлайн без
дополнительной настройки. Требуется Go 1.27 или новее.
vuln_db.json создаётся из экспорта Wordfence, который не включён в репозиторий
из-за его размера. Чтобы пересобрать его из собственного фида:
# needs the Wordfence API key and an export
cp wordfence_production.json .
go run ./tools/convertor.go
Преобразователь разбирает ленту и перезаписывает vuln_db.json на месте. Это
инструмент сопровождения, а не часть обычной сборки.
Сканируйте авторизованный целевой URL напрямую, без сторонних сервисов:
fenrir scan -t https://staging.example.com
Сканирование выводит обнаруженные CMS-технологии, активные плагины, обнаруженные темы и корреляции с локальными определениями уязвимостей с оценкой достоверности.
export SHODAN_API_KEY="your-api-key"
fenrir wordpress -t staging.example.com -k $SHODAN_API_KEY
Ключ Shodan необязателен; функции прямого сканирования работают полностью офлайн.
fenrir mass -k $SHODAN_API_KEY -q 'http.component:"WordPress" org:"TargetOrg"' -p 1 -d 5
| Флаг | Поддерживаемые команды | Описание |
|---|---|---|
-t | scan, wordpress | Целевой URL или домен |
-k | wordpress, mass | API-ключ Shodan (необязательно) |
-q | mass | Фильтр поискового запроса Shodan |
-p | mass | Общее количество страниц результатов для получения (по умолчанию: 1) |
-d | mass | Задержка опроса в секундах между запросами (по умолчанию: 5) |
-P | mass | Включить строгое/точное сопоставление версий |
FenrirLVX использует детерминированную сигнализацию уровней серьёзности в своём терминальном выводе:
[+] Clean No matching vulnerability signature in local database
[!] Low or medium-severity signal / unverified version match
[!!] High-severity vulnerability signature detected
[!!!] Critical CVSS / exploit-confirmed vulnerability signature
[SKIP] Honeypot, WAF canary, or synthetic response filtered
Чистый вердикт также сообщает о покрытии базы данных:
[+] staging.example.com Clean
database coverage 3/7 plugins matched 4 with no advisory data
[!IMPORTANT]
Cleanозначает, что не найдено совпадений с локальной сигнатурой, а не что цель свободна от известных проблем. Для четырёх плагинов в этой базе данных не было данных рекомендаций, и этот пробел указан, а не скрыт. Офлайн-сканер не может доказать отсутствие. Он может лишь сообщить о том, что покрывают его данные.
[!NOTE] Плагины с неограниченной рекомендацией (
*на любой из границ версии) будут совпадать с любой обнаруженной версией. Такие совпадения помечаются, чтобы вы могли их не учитывать.
cmd/ Cobra command wiring and CLI interface
pkg/banner/ Console branding and output telemetry
pkg/engine/ Fingerprinting, asset enumeration, and CVE correlation
pkg/shodan/ Shodan host discovery client
tools/ Database convertor and release build script
build.ps1 Cross-platform release build (Windows)
vuln_db.json Local vulnerability definitions and signatures
go build ./...
go test ./...
go vet ./...
Тесты pkg/engine охватывают обработку границ диапазонов, разбор версий,
учёт покрытия и раскрытие информации о чистом пути. Они служат регрессионной сетью
для двух важных здесь режимов отказа: плагин молча отсутствует в
базе данных, и совпадение срабатывает по рекомендации без верхней границы.
Лицензия MIT. Разработано @cyeezy08 для Leviathan OffSec.