
vigolium v0.3.10
Vigolium — высокоточный сканер уязвимостей, объединяющий агентный ИИ с нативной скоростью, модульностью и точностью
Vigolium — высокоточный сканер уязвимостей, сочетающий агентный ИИ с нативной скоростью, модульностью и точностью
Vigolium предоставляет два дополняющих друг друга режима сканирования:
-
Нативное сканирование (
vigolium scan): быстро, мощно и гибко. Детерминированное многофазное сканирование с 317 модулями, охватывающими поиск контента, обход приложений/SPA и активный/пассивный аудит, включая классы уязвимостей инъекций, контроля доступа, файлов/путей, API/протоколов, специфичных для фреймворков, облака/инфраструктуры и внеполосные (OAST) проверки. -
Агентное сканирование (
vigolium agent): тщательно проверяет вашу кодовую базу. Сканирование на основе ИИ, которое автономно планирует атаки, выбирает модули, генерирует пользовательские расширения и сортирует результаты, сочетая глубокий аудит исходного кода с автономным и целенаправленным сканированием уязвимостей.
Установка
Быстрая установка (рекомендуется)```bash
curl -fsSL https://vigolium.com/install.sh | bash
### [npm](https://www.npmjs.com/package/@vigolium/vigolium)```bash
npm install -g @vigolium/vigolium
Другой метод, например Docker или сборка из исходников
Docker```bash
docker pull j3ssie/vigolium:latest docker run --rm j3ssie/vigolium:latest scan -h
### Сборка из исходного кода```bash
git clone https://github.com/vigolium/vigolium.git
cd vigolium
make build # build and install to $GOPATH/bin
Требуются Go 1.26+ и bun 1.3.11+. См. HACKING.md с предварительными требованиями и деталями сборки.
| Дашборд UI | Дашборд трафика |
|---|---|
![]() | ![]() |
| Статические отчеты | Статические отчеты |
|---|---|
![]() | ![]() |
| Нативное сканирование | Агентное сканирование |
|---|---|
![]() | ![]() |
Ключевые возможности
Нативное сканирование
- 323 модуля сканера: 207 активных (фаззинг) + 116 пассивных (сопоставление по шаблону), покрывающих OWASP Top 10 и не только
- Out-of-band тестирование (OAST): слепые XSS/SSRF/инъекции команд через колбэки interactsh с автоматической корреляцией полезных нагрузок
- Мутация с учётом типа значений: классифицирует параметры по семантическому типу (целое число, UUID, JWT, email) и мутирует в соответствии с намерением
- Многофазный конвейер: внешний сбор данных, обнаружение контента (Deparos), обход браузерных/SPA-приложений (Spitolas) и аудит, управляемый пресетами стратегий и профилями сканирования
- Гибкие входные данные: URL-адреса, OpenAPI/Swagger, Postman, Burp Suite, cURL, Nuclei JSONL
- Многосеансовая аутентификация: встроенные сессии, файлы сессий или полные конфигурации аутентификации с потоками входа, извлечением токенов и тестированием IDOR/BOLA
- Расширения на JavaScript: пользовательские модули и хуки через встроенный JS-движок с HTTP API, учитывающим состояние сессий
- Масштабируемость и отчётность: параллельный пул воркеров с ограничением скорости на хост, гибридная очередь в памяти/на диске/Redis и автономные HTML-отчёты
Агентное сканирование
- Внутрипроцессный рантайм olium: каждый режим агента работает на нативном Go-движке
pkg/olium: пошаговый цикл, встроенный реестр инструментов, поддержка навыков и подключаемые драйверы провайдеров (без пулов SDK в подпроцессах) - Автопилот: агент самостоятельно обнаруживает конечные точки, запускает сканирование и сортирует находки, с опциональным конвейером из нескольких специалистов и возобновлением сессии
- Swarm: главный агент выбирает модули, генерирует пользовательские JS-расширения для атак, запускает аудит кода + SAST, выполняет сканирование и сортирует результаты; точечно или в полном объёме (
--discover), с--diff/--last-commitsдля запусков, сфокусированных на изменениях - Драйверы аудита исходного кода:
audit,pioliumи унифицированный диспетчерauditвыполняют аудит исходного кода в основном потоке, используя общую схему находок и тегирование в БД - Режим запросов: одноразовые промпты для ревью кода, обнаружения конечных точек и поиска секретов
- Подключаемые провайдеры:
openai-compatible(по умолчанию),openai-codex-oauth,openai-api-key,openai-responses,anthropic-api-key,anthropic-oauth,anthropic-cli,anthropic-compatible,anthropic-vertex,google-vertex. Те же режимы доступны через REST API с потоковой передачей SSE и OpenAI-совместимой chat-эндпоинтом
Быстрый старт: нативное сканирование```bash
Scan a single target (default: balanced strategy)
vigolium scan -t https://example.com
Scan with a strategy preset
vigolium scan -t https://example.com --strategy deep
Scan specific modules only
vigolium scan -t https://example.com -m xss-reflected,sqli-error
Scan from an OpenAPI spec
vigolium scan -T openapi.yaml -I openapi
Pipe URLs from stdin
cat urls.txt | vigolium scan
Run a single phase directly
vigolium run discovery -t https://example.com
Generate an HTML report
vigolium scan -t https://example.com --only discovery --format html -o report.html
Полное описание конвейера см. в [обзоре архитектуры](https://docs.vigolium.com/architecture/overview), а стратегии, профили и конфигурацию темпа — в [руководстве по стратегиям](https://docs.vigolium.com/native-scan/strategies). Краткую справку по командам см. на странице [docs.vigolium.com/getting-started/cheat-sheet](https://docs.vigolium.com/getting-started/cheat-sheet).
## Серверный режим```bash
# Start API server with authentication
vigolium server -k my-secret-key
# Enable transparent HTTP proxy for traffic recording
vigolium server -k my-key --ingest-proxy-port 9003
# Auto-scan ingested traffic
vigolium server -k my-key --scan-on-receive
См. https://github.com/xtiankisutsa/awesome-mobile-CTF/pulls. Приоритет будет отдаваться инструментам, которые легко установить, хорошо поддерживаются и имеют понятные инструкции по сборке. \end{description}
Main
\begin{itemize} \item \textbf{Android Tamer} - \cve{https://androidtamer.com/}{Android Tamer} представляет собой виртуальную / живую платформу для специалистов по безопасности Android. \item \textbf{Appie} - \cve{https://manifestsecurity.com/appie/}{Appie} это предварительно настроенный пакет программ, функционирующий как среда для пентеста Android.Это полностью портативное решение, которое можно носить на USB-накопителе или смартфоне. Это единый ответ на все инструменты, необходимые для оценки безопасности приложений Android и анализа вредоносного ПО Android, и служит мгновенной средой безопасности Android. \item \textbf{AppUse} - \cve{https://appsec-labs.com/AppUse/}{AppUse} это виртуальная машина, разработанная AppSec Labs. Это уникальная бесплатная платформа для тестирования безопасности мобильных приложений в среде Android, включающая уникальные инструменты, созданные AppSec Labs. \item \textbf{Mobexler} - \cve{https://mobexler.com/}{Mobexler} это настроенная виртуальная машина, предназначенная для помощи в тестировании на проникновение приложений Android и iOS. \end{itemize}
Tools
\begin{itemize} \item \textbf{androguard} - \cve{https://github.com/androguard/androguard}{androguard} это полноценный инструмент на Python для работы с файлами Android. \begin{itemize} \item \textbf{Droidlysis} - \cve{https://github.com/cryptax/droidlysis}{Droidlysis} это экстрактор свойств для приложений Android. Он автоматически дизассемблирует набор приложений Android и выводит набор свойств в удобном формате. \end{itemize} \item \textbf{APKTool} - \cve{https://ibotpeaches.github.io/Apktool/}{APKTool} это инструмент для обратной разработки закрытых бинарных Android-приложений от третьих лиц. Он может декодировать ресурсы почти до первоначального вида и пересобирать их после внесения изменений.```bash
Ingest traffic to a running server
cat urls.txt | vigolium ingest -s http://localhost:9002
Ingest an OpenAPI spec
vigolium ingest -s http://localhost:9002 -i api.yaml -I openapi
См. [запуск сервера](https://docs.vigolium.com/server-mode/running-the-server) для настройки сервера, [приём данных](https://docs.vigolium.com/server-mode/ingestion) для рабочих процессов приёма данных и [обзор API](https://docs.vigolium.com/api-overview) для полной справки по REST API.
> **Интеграция с Burp Suite**: пересылайте живой трафик Burp Suite на работающий сервер Vigolium с помощью расширения [burp-vigolium](https://github.com/vigolium/burp-vigolium).
## Аутентифицированное сканирование
Vigolium поддерживает многосеансовое аутентифицированное сканирование для тестирования IDOR/BOLA и проверок повышения привилегий:```bash
# Inline session via CLI flag (name:Header:value)
vigolium scan -t https://example.com \
--auth "admin:Cookie:session_id=abc123" \
--auth "user:Cookie:session_id=xyz789"
# Load session(s) from a YAML/JSON file
vigolium scan -t https://example.com --auth-file ./admin-session.yaml
# Auth file with an automated login flow (token extraction, etc.)
vigolium scan -t https://example.com --auth-file ./login-flow.yaml
# Add custom headers (works with sessions)
vigolium scan -t https://example.com -H "Authorization: Bearer token123"
Файлы аутентификации поддерживают статические заголовки, bearer-токены и автоматизированные потоки входа с извлечением токенов из cookie, JSON-ответов или заголовков. Готовые примеры доступны в public/presets/sessions/. Полное руководство см. в руководстве по аутентификации.
Флаги
--auth/--auth-fileранее назывались--session/--session-file. Старые имена по-прежнему работают как устаревшие псевдонимы.
Агентное сканирование
Сканирование на основе ИИ, при котором агенты автономно планируют, выполняют и сортируют оценки уязвимостей, используя в основе собственный движок сканирования:```bash
Autopilot: autonomous AI-driven scanning (in-process olium engine)
vigolium agent autopilot -t https://example.com vigolium agent autopilot -t https://example.com --source ./src --prompt "focus on auth bypass" vigolium agent autopilot -t https://example.com --diff main...feature/auth # diff-focused vigolium agent autopilot -t https://example.com --intensity deep # preset bundle
Swarm: AI-guided targeted or full-scope vulnerability scanning
vigolium agent swarm -t https://example.com/api/users --vuln-type sqli vigolium agent swarm -t https://example.com --discover # full-scope vigolium agent swarm -t https://example.com --source ./src --discover # source-aware full-scope vigolium agent swarm --input "curl -X POST https://example.com/api/login -d '{"user":"admin"}'"
Source-audit drivers (separate harness, do not route through olium)
vigolium agent audit --source ./src # default: auto (audit, fall back to piolium) vigolium agent audit --source ./src --driver audit --mode deep # vigolium-audit only (claude/codex) vigolium agent audit --source ./src --driver piolium --mode balanced # Pi-native (pi extension) only vigolium agent audit --source ./src --driver both # audit then piolium, back-to-back vigolium agent audit --source ./src --modes deep,confirm # chain modes (same as --intensity deep) vigolium agent audit --source ./src -S --output-dir ./audit-out # throwaway DB + bundled HTML report vigolium audit --source ./src # top-level alias
Direct olium access (TUI or headless)
vigolium ol # launch the olium TUI vigolium ol --prompt "..." # one-shot prompt (-p implies headless)
Режимы агентного сканирования:
- **Autopilot**: автономное сканирование. CLI напрямую вызывает `pkg/olium/autopilot.Run`; сервер добавляет подготовку vigolium-audit, настройку аутентификации и замороженный пакет контекста вокруг того же цикла
- **Swarm**: сканирование уязвимостей под управлением ИИ, поддерживающее точечные одиночные запросы и полный охват (`--discover`). Мастер-агент анализирует входные данные, выбирает модули, генерирует пользовательские JS-расширения, запускает аудит кода и SAST, выполняет сканирования и сортирует результаты
- **Audit**: аудит исходного кода через `vigolium agent audit` — единый диспетчер, который запускает встроенные обвязки **vigolium-audit** (claude/codex) и/или **piolium** (Pi-native), выбираемые с помощью `--driver {auto|both|audit|piolium}` (по умолчанию `auto`: запускается аудит, возврат к piolium только в случае сбоя аудита). Раздельные обвязки; **не** направляйте через olium. Дочерние строки для каждого драйвера внутри одного родительского AgenticScan с дедупликацией результатов после прохода. Отдельной подкоманды `agent piolium` не существует — piolium запускается через `--driver=piolium`
> **Автономные CLI для аудита**: агентный аудит безопасности также поставляется в виде автономных CLI, которые можно запускать независимо от Vigolium: [vigolium-audit](https://github.com/vigolium/vigolium-audit) (инструмент, лежащий в основе `vigolium agent audit`) и [piolium](https://github.com/vigolium/piolium) (Pi-native драйвер, лежащий в основе `vigolium agent audit --driver=piolium`).
Полное руководство см. в [руководстве по агентному режиму](https://docs.vigolium.com/agentic-scan/agent-mode).
## ⚡ Облачная консоль Vigolium
Облачное решение для команд, которые хотят получить мощь Vigolium без управления инфраструктурой. Консоль — это **обновлённая, полнофункциональная версия Vigolium**: управляемое сканирование, централизованная отчётность, совместная работа команды и дополнительные функции поверх открытого ядра, так что вы можете сосредоточиться на исправлении уязвимостей, а не на поддержке инструментов.
> Ознакомьтесь с облачной консолью на [console.vigolium.com](https://console.vigolium.com/).
## Нативные слои сканирования
Конвейер нативного сканирования состоит из модульных слоёв, каждый из которых описан отдельно:
| Слой | Описание | Документация |
|-------|-------------|------|
| **Content Discovery (Deparos)** | Адаптивное перечисление каталогов/файлов с обнаружением мягких 404 на основе отпечатков | [docs.vigolium.com/native-scan/phases/discovery](https://docs.vigolium.com/native-scan/phases/discovery) |
| **Browser Spider (Spitolas)** | Краулер на основе Chromium с конечным автоматом и захватом трафика CDP | [docs.vigolium.com/native-scan/phases/spidering](https://docs.vigolium.com/native-scan/phases/spidering) |
| **Audit** | Активное/пассивное сканирование уязвимостей с извлечением точек вставки и фреймворком DiffScan | [docs.vigolium.com/native-scan/phases/audit](https://docs.vigolium.com/native-scan/phases/audit) |
| **Scanner Modules** | 207 активных и 116 пассивных модулей, покрывающих OWASP Top 10 и не только | [docs.vigolium.com/native-scan/modules-reference](https://docs.vigolium.com/native-scan/modules-reference) |
## Документация
Полная документация находится на [docs.vigolium.com](https://docs.vigolium.com/). Примечания к выпускам и история версий — в [CHANGELOG](https://github.com/vigolium/vigolium/blob/HEAD/CHANGELOG.md). Быстрые ссылки:
| Тема | Ссылка |
|-------|------|
| Настройка агентов | [docs.vigolium.com/getting-started/setup-agent](https://docs.vigolium.com/getting-started/setup-agent) |
| Запуск нативного сканирования | [docs.vigolium.com/getting-started/native-scan](https://docs.vigolium.com/getting-started/native-scan) |
| Запуск агентного сканирования | [docs.vigolium.com/getting-started/agentic-scan](https://docs.vigolium.com/getting-started/agentic-scan) |
| Запуск агентного аудита | [docs.vigolium.com/getting-started/agentic-security-audit](https://docs.vigolium.com/getting-started/agentic-security-audit) |
| Быстрый старт | [docs.vigolium.com/getting-started/quickstart](https://docs.vigolium.com/getting-started/quickstart) |
| Шпаргалка | [docs.vigolium.com/getting-started/cheat-sheet](https://docs.vigolium.com/getting-started/cheat-sheet) |
| Сервер и приём данных | [docs.vigolium.com/getting-started/server-and-ingestion](https://docs.vigolium.com/getting-started/server-and-ingestion) |
| Написание расширений | [docs.vigolium.com/customization/writing-extensions](https://docs.vigolium.com/customization/writing-extensions) |
## JavaScript-движок
Запускайте код JavaScript/TypeScript напрямую или создавайте собственные модули сканирования и хуки без перекомпиляции:```bash
# Execute inline JavaScript
vigolium js --code 'let r = vigolium.http.get(TARGET); console.log(r.status)' -t https://example.com
# Run a JS file with timeout
vigolium js --code-file ./my-script.js -t https://example.com --timeout 60s
# Manage extensions
vigolium ext ls # list loaded extensions
vigolium ext docs --example # browse API with code examples
vigolium ext preset # install starter scripts
JS-движок предоставляет учитывающие сеанс HTTP API для аутентифицированного тестирования:```javascript // Create a persistent session with shared cookie jar. // post() takes a string body — serialize objects yourself. let session = vigolium.http.session(); session.post( "https://app.example.com/login", JSON.stringify({ user: "admin", pass: "secret" }), { headers: { "Content-Type": "application/json" } } ); session.get("https://app.example.com/dashboard"); // cookies auto-sent
// Automated login flow with token extraction let authed = vigolium.http.login({ url: "https://app.example.com/api/auth", method: "POST", body: JSON.stringify({ username: "admin", password: "pass" }), extract: [{ source: "json", path: "$.token", apply_as: "Authorization: Bearer {value}" }] });
// IDOR/BOLA testing across multiple sessions let results = vigolium.http.authTest({ sessions: { admin: adminSession, user: userSession }, requests: [{ method: "GET", url: "https://app.example.com/api/users/1" }] });
// Multi-step authentication sequences let result = vigolium.http.sequence([ { url: "/csrf", extract: [{ source: "cookie", name: "csrf_token", as: "token" }] }, { url: "/login", method: "POST", body: "csrf={token}&user=admin" } ]);
// Parallel request batching (race conditions, IDOR) let responses = vigolium.http.batch([req1, req2, req3], { concurrency: 10 });
// CSRF token extraction let csrf = vigolium.http.csrf("https://app.example.com/form");
// HTTP request replay with variations let varied = vigolium.http.replay(rawRequest, [ { headers: { "Authorization": "Bearer admin_token" } }, { headers: { "Authorization": "Bearer user_token" } } ]);
См. [создание расширений](https://docs.vigolium.com/customization/writing-extensions) — руководство для авторов расширений — и `pkg/jsext/vigolium.d.ts` для полных определений TypeScript API.
## Справочник CLI
<details>
<summary>Развернуть полный справочник команд и флагов</summary>
### Команды```
Scanning:
vigolium scan Run a native scan (deterministic multi-phase vulnerability scanning)
vigolium run <phase> Run a single native scan phase (alias for scan --only <phase>)
vigolium scan-url <url> Quick native scan of a single URL
vigolium scan-request Native scan from a raw HTTP request
Agentic scan (in-process olium engine):
vigolium agent autopilot Autonomous AI-driven vulnerability scanning
vigolium agent swarm AI-guided targeted or full-scope vulnerability scanning
vigolium agent query Single-shot prompt (code review, endpoint discovery)
vigolium agent olium Direct olium TUI (or one-shot non-interactive via -p)
vigolium agent audit Unified driver dispatcher (vigolium-audit and/or piolium, --driver=auto|both|audit|piolium)
vigolium agent session Browse/replay agent session artifacts
vigolium olium | vigolium ol Top-level alias for `vigolium agent olium`
Server & ingestion:
vigolium server Start the API server with traffic ingestion
vigolium ingest Ingest traffic to a running server
vigolium storage Interact with cloud object storage (uploads, downloads)
Data & projects:
vigolium db Database operations (list, stats, export, clean, seed)
vigolium finding Browse and manage findings (load, tui)
vigolium traffic Browse and replay HTTP records (tui, replay)
vigolium replay Mutate a stored/supplied HTTP request and diff baseline vs replay
vigolium project Manage projects (create, list, use, config)
vigolium scope Manage scope rules
vigolium import Import findings/data from external sources
vigolium export Export scan results
Extensions & auth:
vigolium js Execute JavaScript/TypeScript code
vigolium ext Manage JavaScript extensions (eval, lint)
vigolium auth Manage authentication sessions (list, load, lint, totp)
Setup & introspection:
vigolium init Initialize a Vigolium workspace
vigolium config Manage configuration (ls, set, path, clean)
vigolium strategy Inspect scanning strategies and phases
vigolium module Inspect/enable scanner modules
vigolium doctor Diagnose environment & dependencies
vigolium version Show version info
Флаги```
Native Scan (vigolium scan / run): -t, --target Target URL -T, --target-file File containing target URLs -i, --input Input file path (- for stdin) -I, --input-mode Input format: urls, openapi, swagger, burp, curl, nuclei, har -m, --modules Modules to run (comma-separated or 'all') --strategy Strategy preset: lite, balanced, deep --scanning-profile Scanning profile name or YAML path --only Phases to run (comma-separated): ingestion, discovery (deparos), external-harvest, spidering (spitolas), known-issue-scan, dynamic-assessment, extension --skip Phases to skip (repeatable, same names as --only) -S, --stateless Use a throwaway temp database, discarded after the scan --fail-on Exit non-zero when a finding at/above this severity is present
Authentication: --auth Inline session definition (name:Header:value, repeatable) --auth-file Session YAML/JSON file path, supports login flows (repeatable) -H, --header Custom HTTP header (repeatable)
Performance: -c, --concurrency Concurrent workers (default: 50) -r, --rate-limit Max requests/sec (default: 0 = unlimited) --max-per-host Per-host concurrency cap (default: 2) --proxy HTTP/SOCKS5 proxy URL --timeout HTTP request timeout (default: 15s)
Agentic Scan (vigolium agent autopilot / swarm / query):
--source Path to source code for source-aware scanning
--files Specific files to include relative to --source
--source-label Label for source code ingestion
--provider Olium provider: openai-compatible (default), openai-codex-oauth,
openai-api-key, openai-responses, anthropic-api-key,
anthropic-oauth, anthropic-cli, anthropic-compatible,
anthropic-claude-sdk-bridge, anthropic-vertex, google-vertex
--model Model ID override
--oauth-token OAuth bearer token (anthropic-oauth)
--oauth-cred OAuth/SA file path (openai-codex-oauth, anthropic-vertex,
google-vertex)
--llm-api-key API key (anthropic-api-key, openai-api-key)
--vuln-type Vulnerability type focus (sqli, xss, ssrf, ...)
--prompt Free-text task guidance (same as the positional [prompt])
--plan-file Plan file mixing guidance + raw seed HTTP request(s)
--knowledge-base File/dir describing the app; prose is distilled, traffic
exports (HAR/Burp/curl/OpenAPI/Postman) are ingested
--prior-context Front-load existing project traffic/findings: auto, summary, off
--intensity Preset bundle: quick, balanced, deep
--diff Diff range / PR URL / HEADN for change-focused scans
--last-commits Shorthand for --diff HEADN
--code-audit Enable AI code audit (default: on with --source)
--discover Run discovery+spidering before planning (swarm)
--audit vigolium-audit mode: lite, balanced, deep, mock, off
--piolium Piolium audit mode (empty = auto-pick)
--resume Resume a durable-autopilot run by agentic-scan UUID
--session-dir Pin the session dir for this run's debug artifacts
--transcript Copy transcript.jsonl out after the run
--max-iterations Max triage-rescan iterations
--max-commands Cap on agent tool calls
--token-budget Cap on aggregate tokens
--max-duration Max agent wall-clock time (0 = no limit)
--only / --skip / --start-from Phase control (swarm)
Source audit (vigolium agent audit / vigolium audit): --driver auto (default), both, audit, piolium --intensity Preset: quick, balanced, deep (deep = modes deep,confirm) --mode Mode override: lite, balanced, deep, revisit, confirm, merge, ... --modes Chain modes back-to-back (e.g. deep,confirm) --list-modes Print the audit mode graph and exit --agent Coding agent for the audit leg: claude or codex --keep-raw Keep raw output under /vigolium-results/ (on by default) --clean-raw Remove the source-tree raw copy after the run -S, --stateless Run into a throwaway DB and auto-render an HTML report --output-dir Bundle the HTML report + raw results into one folder (needs -S) --no-dedup Skip the post-pass project-wide findings dedup --no-preflight Skip the pre-audit auth/model roundtrip checks -i, --interactive Drive the audit yourself in the coding agent (audit driver only)
JavaScript: --code Inline JavaScript to execute --code-file Path to JS/TS file to execute --timeout Execution timeout (default: 30s)
Output: -j, --json Compact, token-aware JSON output (read/query commands) --format Output format (comma-separated for multiple): console, jsonl, html, sqlite (needs -S), fs (flat traffic/finding tree) -o, --output Output file path --silent Suppress all output except findings -v, --verbose Verbose logging
</details>
## Структура репозитория
Каталог `platform/` содержит внешние инструменты и UI-дашборд и не является частью основного сканера. В него не следует вносить изменения.
## Бенчмарки
Vigolium постоянно проходит бенчмарки на намеренно уязвимых приложениях, а также активно проверяется на реальных целях в рамках программ bug bounty и ответственного раскрытия уязвимостей.
- **Самостоятельно размещаемые (Docker):** [DVWA](https://github.com/digininja/DVWA), [OWASP Juice Shop](https://github.com/juice-shop/juice-shop), [VAmPI](https://github.com/erev0s/VAmPI), [crAPI](https://github.com/OWASP/crAPI), [Vulnerable Java App](https://github.com/DataDog/vulnerable-java-application), [Vulnerable Nginx](https://github.com/detectify/vulnerable-nginx), [OopsSec Store](https://github.com/kOaDT/oss-oopssec-store) (собственное приложение Next.js)
- **Внешние (онлайн):** [Acunetix TestPHP](http://testphp.vulnweb.com), [Gin & Juice Shop](https://ginandjuice.shop), [Testfire](http://demo.testfire.net)
- **XSS и множественные уязвимости:** [BruteLogic XSS](https://github.com/vigolium/vigolium/blob/HEAD/test/benchmark/xss_scanner/), [XBOW](https://github.com/vigolium/vigolium/blob/HEAD/test/benchmark/definitions/xbow/) (XSS, SQLi, SSTI, LFI, SSRF, XXE, command injection)
Запускайте бенчмарки с помощью `make test-canary` (Docker-приложения) или `make test-integration` (XSS).
## Разработка```bash
make build # build and install
make test # run all tests (auto-installs gotestsum)
make test-unit # fast unit tests (-short, no external deps)
make test-e2e # E2E tests (requires Docker)
make lint # run linter
make fmt # format code
Полное руководство по сборке, карта кодовой базы и руководство по разработке модулей приведены в HACKING.md.
Безопасность
Vigolium — это инструмент наступательной безопасности, и две его части намеренно лишены ограничений: режим агента работает без песочницы (LLM имеет полный доступ к shell, файлам и сети на хосте), а расширения могут выполнять произвольные команды. Запускайте режим агента в одноразовом контейнере/ВМ в рамках задания и относитесь к недоверенным расширениям как к недоверенному коду. Изучите SECURITY.md перед началом работы и сообщайте об уязвимостях в самом Vigolium приватно по адресу [email protected].
Лицензия
Vigolium распространяется под лицензией GNU Affero General Public License v3.0. Производные работы должны оставаться открытыми на тех же условиях.
Сделано с ♥ @j3ssie, при участии @theblackturtle в качестве ключевого соавтора на начальном этапе.





