
Сканер безопасности WordPress с анализом на основе ИИ, фреймворком этического соответствия и профессиональной отчетностью.
Этичный сканер уязвимостей WordPress — корреляция CVE в реальном времени, картографирование OWASP, анализ на базе ИИ и тестирование на основе согласия.
Быстрый старт · Документация · Docker · Возможности ИИ · Поставьте звезду на GitHub
Обзор сканирования · разбивка по серьёзности |
Результаты · значки CVE/OWASP · панель фильтров |
Argus — это готовый к эксплуатации сканер безопасности WordPress, который ставит этику на первое место. Разработанный для тестировщиков на проникновение, исследователей безопасности и администраторов WordPress, он сочетает традиционное сканирование уязвимостей с передовым анализом на основе ИИ для получения практических рекомендаций.
--diff last позволяет сопоставлять сканирования для отслеживания прогресса устраненияpython -m argus --target https://example.com --html
- **Многометодная идентификация**: Обнаруживает WordPress 4.x-6.x с нулевым уровнем ложных срабатываний
- **Соотнесение с CVE в реальном времени**: Проверяет каждый обнаруженный плагин, тему и версию ядра по базе WPVulnerability.net (бесплатно, без API-ключа)
- **Оценка CVSS**: Получает оценки из NVD для каждого CVE (критический ≥9.0, высокий ≥7.0, средний ≥4.0)
- **Определение последней версии**: API WordPress.org показывает текущую стабильную версию рядом с обнаруженной
- **OWASP Top 10 2021**: Каждая находка сопоставлена с категорией OWASP (A01–A10)
- **Параллельное сканирование**: Пул потоков + ограничение скорости для быстрого и корректного сканирования
- **Умное обнаружение**: Досрочное завершение для сайтов не на WordPress (отклонение на 99% быстрее)
- **Сбор доказательств**: Сохраняются HTTP-ответы, заголовки и содержимое файлов
### 📈 Отчёты о различиях сканирования (v0.2.0)
Отслеживайте прогресс устранения уязвимостей между сканированиями:```bash
# Compare this scan against the previous one
python -m argus --target https://example.com --html --diff last
# Or reference a specific scan ID
python -m argus --target https://example.com --html --diff 42
Раздел diff показывает:
Выберите поставщика ИИ в соответствии с вашими потребностями:
Режимы анализа:
--ai-agent): Обогащён данными CVE из NVD в реальном времени и запросами к WPVulnerability.net (бесплатные API)--ai-compare): Параллельный анализ от нескольких поставщиков--ai-stream): Вывод токенов в реальном времени по мере генерации ИИ--ai-budget): Ограничение затрат с настраиваемым порогом прерыванияJSON-отчёты (машиночитаемые)```json { "tool": "argus", "version": "0.2.0", "target": "https://example.com", "summary": {"critical": 3, "high": 5, "medium": 8, "low": 6, "info": 5}, "findings": [ { "id": "ARGUS-WP-012", "title": "Vulnerable plugin: elementor v3.5.0 (31 CVEs)", "severity": "critical", "owasp": {"id": "A06", "name": "Vulnerable and Outdated Components"}, "latest_version": "3.28.1", "cve": ["CVE-2022-1329", "CVE-2022-29455"], "vulnerabilities": [ {"title": "Elementor < 3.4.8 — Authenticated RCE", "cvss": 8.8, "cve_id": "CVE-2022-1329"} ] } ], "diff": {"ref_scan_id": 41, "new": [...], "fixed": [...], "persisting": [...]} }
**HTML-отчеты** (Удобные для человека, v0.2.0)
- 🎨 Адаптивный дизайн с встроенным CSS (без внешних зависимостей)
- 🏷️ Цветные значки уровня опасности + интерактивная панель фильтрации
- 🔴 Значки CVE со ссылками на NVD, фиолетовые значки CWE (без дубликатов)
- 🟣 Значок OWASP Top 10 2021 для каждого результата
- 🟢 Значок последней стабильной версии для уязвимых компонентов
- 📊 Цветной значок оценки CVSS для каждого CVE (красный/оранжевый/желтый/зеленый)
- 📝 Раскрывающиеся панели с деталями CVE, раскрывающиеся рекомендации
- 🔧 Фрагменты конфигурации заголовков безопасности (Apache / Nginx / WordPress)
- 📈 Раздел различий (новые/исправленные/постоянные) с предупреждением о несоответствии режимов
- 🤖 Анализ с помощью ИИ с вкладками (руководство / техника / агент)
- 📱 Мобильная версия
### 🔐 Система токенов согласия
Argus обеспечивает этичный хакинг с помощью технологий. Агрессивное сканирование и анализ с помощью ИИ требуют **подтверждения права собственности**:```bash
# 1. Generate token
python -m argus --gen-consent example.com
# 2. Place token on your server
echo "verify-abc123..." > .well-known/verify-abc123.txt
# 3. Verify ownership
python -m argus --verify-consent http --domain example.com --token verify-abc123
# 4. Now you can use aggressive mode
python -m argus --target https://example.com --aggressive --use-ai
SQLite база данных отслеживает все:
finding_codeai_costs (v0.2.0+)sqlite3 ~/.argos/argos.db "SELECT * FROM v_recent_scans LIMIT 10"
sqlite3 ~/.argos/argos.db "SELECT * FROM v_critical_findings"
---
## 🚀 Быстрый старт
### Предварительные требования
- **Python 3.11+** (рекомендуется 3.12)
- **pip** (менеджер пакетов Python)
- **Docker** (необязательно, для сканирования в контейнерах)
### Установка
**1. Клонируйте репозиторий**```bash
git clone https://github.com/rodhnin/argus-wp-watcher.git
cd argus-wp-watcher
2. (Необязательно) Установите venv, если он еще не установлен```bash
sudo apt update && sudo apt install -y python3-venv
sudo dnf install python3-virtualenv
brew install [email protected]
**3. Создайте и активируйте виртуальное окружение**```bash
python3 -m venv .venv
source .venv/bin/activate
# You should see (.venv) in your terminal prompt
4. Обновление pip```bash python -m pip install --upgrade pip
**5. Установка зависимостей**```bash
python -m pip install -r requirements.txt
6. Настройте ключи API (если используется облачный ИИ)```bash
export OPENAI_API_KEY="sk-..."
export ANTHROPIC_API_KEY="sk-ant-..."
**7. Проверить установку**```bash
python -m argus --version
# Output: Argus v0.2.0
python -m argus --target https://example.com
python -m argus --target https://example.com --html
python -m argus --target https://example.com --use-ai --html
**🎉 Успех!** Проверьте `~/.argos/reports/` на наличие отчетов.
---
## 📘 Руководство по использованию
### Базовое сканирование```bash
# Safe mode (default) - Non-intrusive checks
python -m argus --target https://example.com
# Generate HTML report
python -m argus --target https://example.com --html
# Increase verbosity for debugging
python -m argus --target https://example.com -vv
python -m argus --target https://example.com --rate 10
python -m argus --target https://example.com --threads 8
python -m argus --target https://example.com --timeout 60
python -m argus --target https://example.com --report-dir ./my-reports
### Анализ на основе ИИ
**Шаг 1: Установите ваш API-ключ**```bash
export OPENAI_API_KEY="sk-..."
Шаг 2: Проверьте свою настройку```bash
python -m argus.core.ai openai
**Шаг 3: Запустите сканирование на основе ИИ**```bash
# Both analyses in one scan (~$0.006 with default model)
python -m argus --target https://example.com --use-ai --html
# Technical only (for security teams)
python -m argus --target https://example.com --use-ai --ai-tone technical --html
# Executive only (for management)
python -m argus --target https://example.com --use-ai --ai-tone non_technical --html
# Override model or provider at runtime
python -m argus --target https://example.com --use-ai --ai-model gpt-4o --html
python -m argus --target https://example.com --use-ai --ai-provider anthropic --html
# Stream output in real time
python -m argus --target https://example.com --use-ai --ai-stream
# Agent mode with NVD CVE lookup (free)
python -m argus --target https://example.com --use-ai --ai-agent --html
# Compare two providers side by side
python -m argus --target https://example.com \
--use-ai --ai-compare openai,anthropic --html
# Budget cap ($0.05 max)
python -m argus --target https://example.com --use-ai --ai-budget 0.05
python -m argus --gen-consent example.com
python -m argus --verify-consent http
--domain example.com
--token verify-a3f9b2c1d8e4
python -m argus --target https://example.com --aggressive
---
## 🤖 AI-Powered Analysis
Argus использует **LangChain 1.0.0** с поддержкой нескольких AI-провайдеров, что даёт вам гибкость в зависимости от требований к безопасности, конфиденциальности и бюджету.
### Поддерживаемые провайдеры
#### OpenAI GPT-4 Turbo
**Лучше всего подходит для: использования в production**
- ⭐ Качество: Отличное (5/5)
- ⚡ Скорость: ~35 секунд
- 💰 Стоимость: ~$0.25 за сканирование
- 🔒 Конфиденциальность: Стандартная (данные шифруются при передаче)```bash
export OPENAI_API_KEY="sk-..."
python -m pip install langchain-openai==1.0.0
Лучше всего для: Усиленная конфиденциальность
#### Ollama (Локальные модели)
**Лучше всего для: Полная конфиденциальность**
- ⭐ Качество: Хорошо (3/5)
- 🐢 Скорость: ~28 минут (CPU) или ~75 секунд (GPU)
- 💰 Стоимость: Бесплатно
- 🔐 Конфиденциальность: 100% офлайн (данные никогда не покидают ваш компьютер)```bash
# Install Ollama: https://ollama.ai
ollama pull llama3.2
python -m pip install "langchain-ollama>=0.3.0,<0.4.0"
Автоматическая санитизация Перед отправкой данных провайдерам ИИ, Argus автоматически удаляет:
Только по согласию
--use-aiДля максимальной конфиденциальности Используйте Ollama локально. Хотя это медленнее и менее точно, ваши данные сканирования никогда не покидают вашу машину.
Вариант A — Флаги CLI (переопределение во время выполнения, без редактирования файла)```bash
python -m argus --target https://example.com --use-ai --ai-provider anthropic --ai-model claude-3-5-haiku-20241022
python -m argus --target https://example.com --use-ai --ai-provider ollama --ai-model llama3.2
**Вариант B — `config/defaults.yaml` (изменить постоянное значение по умолчанию)**```yaml
ai:
langchain:
provider: "ollama" # Changed from "openai"
model: "llama3.2" # Ollama model
ollama_base_url: "http://localhost:11434"
Ожидается в v0.3.0: Интерактивное меню конфигурации (в стиле Metasploit)```bash
argus --show-options argus --set ai.provider=anthropic argus --save-profile privacy-mode
---
## 🧪 Безопасная тестовая лаборатория
**⚠️ НИКОГДА не сканируйте производственные сайты без письменного разрешения!**
Используйте наш Docker-лабораторию для безопасной практики:
### Настройка тестовой среды```bash
# Navigate to docker directory
cd docker
# Option 1: Use interactive script
./deploy.sh
# Select option 2 (Testing Lab)
# Option 2: Manual deployment
docker compose -f compose.testing.yml up -d
# Wait for services to start (~60-90 seconds)
docker compose -f compose.testing.yml logs -f wordpress
# Setup WordPress
# Open http://localhost:8080 in your browser
# Complete WordPress installation
# Username: admin
# Password: (choose a strong password)
# Create vulnerable conditions for testing
docker compose -f compose.testing.yml exec wordpress bash -c \
"cp /var/www/html/wp-config.php /var/www/html/wp-config.php.bak"
cd ..
python -m argus --target http://localhost:8080 --html
python -m argus --target http://localhost:8080 --use-ai --html
### Очистка```bash
cd docker
docker compose -f compose.testing.yml down -v # -v removes all data
Для подробных сценариев тестирования см. docs/TESTING_GUIDE.md
Сканируйте только те системы, которыми вы владеете или на тестирование которых у вас есть явное письменное разрешение.
Argus реализует технические средства контроля для предотвращения неправомерного использования:
Несанкционированный доступ к компьютерным системам незаконен в большинстве юрисдикций:
Полные этические рекомендации см. в docs/ETHICS.md
Argus предоставляет три режима развертывания через интерактивный скрипт:
Используйте интерактивный скрипт развертывания:```bash cd docker ./deploy.sh
**Menu options:**
- `1` → Только сканер для продакшена
- `2` → Только тестовая лаборатория (WordPress + MariaDB)
- `3` → Обе среды
- `4` → Остановить все сервисы
- `5` → Удалить все контейнеры и данные (сброс)
---
### Вариант 1: Сканер для продакшена
Развернуть только сканер Argus для сканирования внешних сайтов на WordPress:```bash
cd docker
./deploy.sh
# Select option 1
Или вручную:```bash docker compose up -d
**Сканировать цель:**```bash
docker compose exec argus python -m argus --target https://example.com
С анализом ИИ:```bash docker compose exec argus python -m argus --target https://example.com --use-ai
**Стоп:**```bash
docker compose down
⚠️ ПРЕДУПРЕЖДЕНИЕ: Эта среда НАМЕРЕННО УЯЗВИМА для целей тестирования. НЕ ВЫСТАВЛЯЙТЕ в публичный интернет!
Разверните тестовую лабораторию:```bash cd docker ./deploy.sh
**Или вручную:**```bash
docker compose -f compose.testing.yml up -d
Что развертывается:
Доступ:
Сканируйте тестовую среду:```bash
python -m argus --target http://localhost:8080
**Остановить и удалить:**```bash
docker compose -f compose.testing.yml down -v
Разверните production-сканер + тестовую лабораторию вместе:```bash cd docker ./deploy.sh
**Что разворачивается:**
- ✅ Сканер Argus для production
- ✅ База данных MariaDB
- ✅ WordPress 6.0 (уязвимый)
- ✅ Соединение между production сканером и тестовой сетью
**Сканирование внешних сайтов из production сканера:**```bash
docker compose exec argus python -m argus --target https://example.com
Сканирование тестовой лаборатории из продукционного сканера:```bash docker compose exec argus python -m argus --target http://wordpress
**Остановить всё:**```bash
cd docker
./deploy.sh
# Select option 4
~/.argos/ ├── reports/ │ ├── argus_report_example_20251020_143022.json # Machine-readable │ └── argus_report_example_20251020_143022.html # Human-friendly ├── argos.db # SQLite database └── logs/ └── argus.log # Scan logs
### Схема JSON отчета```json
{
"tool": "argus",
"version": "0.2.0",
"target": "https://example-wp-site.com",
"date": "2026-04-15T18:45:30Z",
"mode": "safe",
"summary": {
"critical": 1,
"high": 2,
"medium": 4,
"low": 3,
"info": 5
},
"findings": [
{
"id": "ARGUS-WP-012",
"title": "Vulnerable plugin: contact-form-7 v5.3.1 (6 CVEs)",
"severity": "critical",
"confidence": "high",
"owasp": { "id": "A06", "name": "Vulnerable and Outdated Components" },
"latest_version": "5.9.8",
"cve": ["CVE-2021-39346", "CVE-2020-35489"],
"vulnerabilities": [
{
"title": "Contact Form 7 < 5.3.2 — Unrestricted File Upload",
"cvss": 9.8,
"cve_id": "CVE-2020-35489",
"cwe": ["CWE-434"]
}
],
"description": "Plugin 'contact-form-7' v5.3.1 has 6 known CVEs. Highest CVSS: 9.8 (Critical).",
"evidence": {
"type": "path",
"value": "https://example-wp-site.com/wp-content/plugins/contact-form-7/readme.txt",
"context": "Version detected via readme.txt"
},
"recommendation": "Update contact-form-7 to 5.9.8 (latest stable). Immediate action required.",
"affected_component": "contact-form-7 5.3.1"
},
{
"id": "ARGUS-WP-030",
"title": "wp-config.php backup exposed",
"severity": "critical",
"confidence": "high",
"owasp": { "id": "A05", "name": "Security Misconfiguration" },
"description": "WordPress configuration file backup is publicly accessible.",
"evidence": {
"type": "url",
"value": "https://example-wp-site.com/wp-config.php.bak",
"context": "HTTP 200, Size: 2847 bytes"
},
"recommendation": "Remove immediately and rotate all credentials.",
"affected_component": "wp-config.php.bak"
},
{
"id": "ARGUS-WP-050",
"title": "Missing security header: HSTS",
"severity": "medium",
"confidence": "high",
"owasp": { "id": "A02", "name": "Cryptographic Failures" },
"description": "HSTS header is not set.",
"evidence": {
"type": "header",
"value": "Strict-Transport-Security: [not set]",
"context": "Header missing in HTTP response"
},
"recommendation": "Add: Strict-Transport-Security: max-age=31536000; includeSubDomains; preload"
}
],
"diff": {
"ref_scan_id": 41,
"ref_date": "2026-04-10T10:00:00Z",
"ref_mode": "safe",
"current_mode": "safe",
"mode_mismatch": false,
"new": [{ "id": "ARGUS-WP-012", "title": "Vulnerable plugin: contact-form-7...", "severity": "critical" }],
"fixed": [],
"persisting": [{ "id": "ARGUS-WP-050", "title": "Missing security header: HSTS", "severity": "medium" }]
},
"notes": {
"scan_duration_seconds": 26.4,
"requests_sent": 312,
"rate_limit_applied": true,
"scope_limitations": "Scan limited to publicly accessible pages.",
"false_positive_disclaimer": "Manual verification recommended before remediation."
}
}
Полную справку по схеме см. в docs/REPORT_FORMAT.md и
schema/report.schema.json.
argus-wp-watcher/ │ ├── argus/ # Main application package │ ├── checks/ # Security check modules │ │ ├── config.py # Configuration auditing (XML-RPC, debug, editor) │ │ ├── crawl.py # Web crawl checks (robots, sitemap, comments) [v0.2.0] │ │ ├── files.py # Sensitive file detection (74 safe / 437 aggressive paths) │ │ ├── fingerprint.py # WordPress detection + CVE check for core │ │ ├── headers.py # Security headers analysis │ │ ├── login.py # Login security checks (2FA, CAPTCHA, brute-force) [v0.2.0] │ │ ├── plugins.py # Plugin/theme enumeration + CVE correlation [v0.2.0] │ │ └── users.py # User enumeration │ │ │ ├── core/ # Core infrastructure │ │ ├── ai.py # AI integration (LangChain, streaming, agent, compare) │ │ ├── config.py # Configuration management │ │ ├── consent.py # Consent token system │ │ ├── db.py # SQLite database interface │ │ ├── diff.py # Scan diff computation (new/fixed/persisting) [v0.2.0] │ │ ├── http_client.py # Rate-limited HTTP client │ │ ├── logging.py # Structured logging │ │ ├── owasp.py # OWASP Top 10 2021 mapping for all finding IDs [v0.2.0] │ │ ├── report.py # Report generation (JSON + HTML) │ │ └── vuln_db.py # CVE lookup (WPVulnerability.net + NVD) [v0.2.0] │ │ │ ├── main.py # Entry point │ ├── cli.py # CLI argument parser │ └── scanner.py # Main scan orchestrator │ ├── config/ # Configuration files │ ├── defaults.yaml # Default settings │ └── prompts/ # AI prompt templates │ ├── technical.txt # Technical analysis prompt │ └── non_technical.txt # Executive summary prompt │ ├── db/ │ └── migrate.sql # Database schema │ ├── assets/ │ └── ascii.txt # ASCII art branding │ ├── docker/ # Docker deployment │ ├── compose.yml # Production scanner compose │ ├── compose.testing.yml # Vulnerable WordPress lab │ ├── deploy.sh # Interactive deployment script │ ├── setup-lab.sh # Automated vulnerable lab setup [v0.2.0] │ └── Dockerfile # Production image │ ├── docs/ # Documentation │ ├── AI_INTEGRATION.md # AI setup guide │ ├── CONSENT.md # Consent system details │ ├── DATABASE_GUIDE.md # Database reference │ ├── ETHICS.md # Ethical guidelines │ ├── REPORT_FORMAT.md # Report specification │ ├── ROADMAP.md # Development roadmap │ └── TESTING_GUIDE.md # Safe testing practices │ ├── schema/ │ └── report.schema.json # JSON report schema │ ├── scripts/ │ └── cli-examples.md # CLI usage examples │ ├── templates/ │ └── report.html.j2 # HTML report template │ ├── CHANGELOG.md # Version history ├── LICENSE # MIT License ├── README.md # This file ├── requirements.txt # Python dependencies └── setup.py # Package installer
---
## 🗺️ Дорожная карта
### v0.1.0 — Первый релиз ✅ (November 2025)
**Статус:** 🎉 **Выпущена**
- ✅ Полный сканер безопасности WordPress (130+ проверок)
- ✅ Анализ на основе ИИ (OpenAI, Anthropic, Ollama)
- ✅ Система токенов согласия (проверка HTTP + DNS)
- ✅ Профессиональная отчетность (JSON + HTML)
- ✅ Постоянство SQLite и история сканирования
- ✅ Поддержка Docker с уязвимой лабораторией
- ✅ Комплексная обработка ошибок и отказоустойчивость
### v0.2.0 — Расширенное обнаружение и ИИ ✅ (May 2026)
**Статус:** 🎉 **Выпущена**
- ✅ **Обнаружение версий плагинов**: каскад из 4 методов (HTML ?ver=, readme.txt, changelog, PHP header)
- ✅ **Корреляция CVE в реальном времени**: WPVulnerability.net (бесплатно, без ключа) для плагинов, тем, ядра WP
- ✅ **Оценка CVSS**: NVD API — цветные значки критический/высокий/средний/низкий для каждого CVE
- ✅ **Последняя версия**: API WordPress.org показывает текущую стабильную версию рядом с обнаруженной
- ✅ **Сопоставление с OWASP Top 10 2021**: Каждый результат сопоставлен с A01–A10 со значком в HTML-отчете
- ✅ **Расширенные HTML-отчеты**: значки CVE/CWE/OWASP/CVSS, панель фильтрации, фрагменты конфигурации, расширяемые панели
- ✅ **Отчеты о различиях сканирования**: `--diff last` / `--diff ID` с новыми/исправленными/постоянными, предупреждение о несоответствии режима
- ✅ **Агрессивный режим**: 447 плагинов, 437 путей, безопасность входа (2FA/CAPTCHA/подбор паролей), обход веб-страниц
- ✅ **Отслеживание затрат ИИ**: контроль бюджета, `~/.argos/costs.json`, записи затрат в БД (таблица `ai_costs`)
- ✅ **Потоковая передача ИИ**: `--ai-stream` для вывода токенов в реальном времени
- ✅ **Сравнение нескольких LLM**: `--ai-compare openai,anthropic` — параллельный анализ бок о бок
- ✅ **AI Agent**: `--ai-agent` с вызовами инструментов NVD и WPVulnerability.net в реальном времени
### v0.3.0 — Корпоративные возможности (Q3 2026)
**Фокус:** Юзабилити, масштаб, интерактивный ИИ
- 🔜 **Интерактивное управление конфигурацией**: интерфейс в стиле Metasploit (`--show-options`, `--set`)
- 🔜 **CLI для базы данных**: SQL не требуется (`argus db scans list`, `argus db findings search`)
- 🔜 **Сканирование нескольких сайтов**: Пакетная обработка из файла
- 🔜 **Интерфейс чата с ИИ**: Диалоговый анализ уязвимостей
- 🔜 **Интеграция с CI/CD**: GitHub Actions, Jenkins, GitLab templates
- 🔜 **REST API сервер**: API на базе FastAPI для автоматизации
**Запланированные улучшения:**
- Интерактивная конфигурация (`--set`, `--show-options`) для динамического переключения провайдеров
- Отслеживание завершения фаз и индикаторы прогресса
- Управление CLI базы данных (SQL не требуется)
### v0.4.0 — Интеллект и автоматизация (Q1 2027)
**Фокус:** ML, автоматизация, продвинутый ИИ
- 🔜 **Автоматическое исправление**: Интеграция с WP-CLI для автоматического исправления
- 🔜 **Обнаружение на основе ML**: Выявление аномалий, снижение ложных срабатываний
- 🔜 **Распределенное сканирование**: Рабочие узлы для крупномасштабных операций
- 🔜 **Продвинутые AI-агенты**: Автономное планирование сканирования, генерация эксплойтов
### Pro Track
**Коммерческий продукт для предприятий**
**В ПРОЦЕССЕ**
Подробные описания функций см. в [ROADMAP.md](https://github.com/rodhnin/argus-wp-watcher/blob/HEAD/ROADMAP.md)
---
## 🤝 Вклад в проект
Мы приветствуем вклад! Будь то:
- 🐛 Отчеты об ошибках
- 💡 Запросы функций
- 📝 Улучшения документации
- 🔧 Вклад в код
### Как внести вклад
1. **Форкните репозиторий**
2. **Создайте ветку функции** (`git checkout -b feature/amazing-feature`)
3. **Внесите свои изменения**
4. **Напишите/обновите тесты** (если применимо)
5. **Закоммитьте изменения** (`git commit -m 'Add amazing feature'`)
6. **Отправьте в ветку** (`git push origin feature/amazing-feature`)
7. **Откройте Pull Request**
### Настройка разработки```bash
# Clone your fork
git clone https://github.com/YOUR-USERNAME/argus-wp-watcher.git
cd argus-wp-watcher
# Install development dependencies
python -m pip install -r requirements.txt
python -m pip install pytest black flake8 mypy
# Run code formatting
black argus/
# Run linting
flake8 argus/
mypy argus/
# Run tests (when available)
pytest tests/
Нашли ошибку? Есть запрос функции?
Откройте issue: https://github.com/rodhnin/argus-wp-watcher/issues
Пожалуйста, укажите:
python -m argus --version)python --version)Полная документация доступна в каталоге docs/:
Этот проект лицензирован по лицензии MIT - подробности в файле LICENSE.``` MIT License
Copyright (c) 2025 Rodney Dhavid Jimenez Chacin
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
---
## ⚠️ Отказ от ответственности
**ВАЖНО:** Этот инструмент предназначен **только для авторизованного тестирования безопасности**.
### Юридическое уведомление
Используя Argus, вы подтверждаете и соглашаетесь с тем, что:
1. ✅ Вы будете **сканировать только те системы, которыми владеете** или на тестирование которых имеете **прямое письменное разрешение**.
2. ✅ Вы будете **соблюдать все применимые законы** и нормативные акты.
3. ✅ Вы понимаете, что **несанкционированный доступ незаконен** (CFAA, Computer Misuse Act и т.д.).
4. ✅ Автор и участники **не несут ответственности** за неправильное использование.
5. ✅ Это программное обеспечение предоставляется **«как есть» без каких-либо гарантий**.
### Ответственное раскрытие
Если вы обнаружили уязвимости с помощью Argus:
- 📧 Сначала свяжитесь с владельцем сайта конфиденциально.
- ⏰ Предоставьте разумное время для исправления (обычно 90 дней).
- 🤝 Согласуйте график раскрытия.
- 📝 Документируйте свои выводы профессионально.
### В случае сомнений
**Не сканируйте.** Если вы не уверены, есть ли у вас разрешение, скорее всего, его нет.
---
## 🙏 Благодарности
Argus стоит на плечах гигантов:
- **WordPress.org** — команда безопасности за документацию и лучшие практики
- **WPScan** — исследование уязвимостей и база данных
- **OWASP** — стандарты безопасности (Top 10, Testing Guide)
- **LangChain** — AI-фреймворк, обеспечивающий интеллектуальный анализ
- **Anthropic & OpenAI** — AI-модели для анализа уязвимостей
- **Ollama** — локальный AI-инференс для приватного сканирования
- **Сообщество Python** — потрясающие библиотеки и инструменты
Особая благодарность всем исследователям безопасности, которые практикуют и продвигают этичный хакинг.
---
## 👤 Автор
**Rodney Dhavid Jimenez Chacin (rodhnin)**
- 🌐 Веб-сайт и контакты: [rodhnin.com](https://rodhnin.com)
- 💼 GitHub: [@rodhnin](https://github.com/rodhnin)
- 🔗 Проект: [argus-wp-watcher](https://github.com/rodhnin/argus-wp-watcher)
По вопросам, отзывам или предложениям о сотрудничестве посетите [rodhnin.com](https://rodhnin.com), чтобы связаться со мной.
---
## 💬 Сообщество
- **Обсуждения**: [GitHub Discussions](https://github.com/rodhnin/argus-wp-watcher/discussions)
- **Проблемы**: [GitHub Issues](https://github.com/rodhnin/argus-wp-watcher/issues)
- **Релизы**: [GitHub Releases](https://github.com/rodhnin/argus-wp-watcher/releases)
---
<div align="center">
**Создано с ❤️ для этичных хакеров и администраторов WordPress по всему миру**
⭐ **Поставьте звёздочку этому репозиторию**, если считаете его полезным! ⭐
[Сообщить об ошибке](https://github.com/rodhnin/argus-wp-watcher/issues) • [Предложить функцию](https://github.com/rodhnin/argus-wp-watcher/issues) • [Документация](https://github.com/rodhnin/argus-wp-watcher/blob/HEAD/docs/)
---
_Argus v0.2.0 — Май 2026_
</div>
| Категория проверки | Безопасный режим | Агрессивный | Подробности |
|---|
| Обнаружение WordPress | ✅ | ✅ | Определение версии по мета-тегам, readme, RSS, ресурсам |
| Плагины и темы | 100 плагинов | 447 плагинов | Определение версий (4 метода) + корреляция CVE/CVSS в реальном времени |
| Чувствительные файлы | 74 пути | 437 путей | Резервные копии wp-config, .env, дампы SQL, .git, отладочные логи, инструменты PHP |
| Перечисление пользователей | 3 метода | 6 методов | Author IDOR, REST API, парсинг HTML + oEmbed, ошибка входа, XML-RPC |
| Заголовки безопасности | ✅ | ✅ | HSTS, CSP, X-Frame-Options, Referrer-Policy, Permissions-Policy |
| Неправильные конфигурации | ✅ | ✅ | XML-RPC, режим отладки, листинг директорий, редактор файлов |
| Безопасность входа | ❌ | ✅ | 2FA, CAPTCHA, защита от перебора, открытая регистрация, политика паролей |
| Веб-обход | ❌ | ✅ | robots.txt, sitemap.xml, HTML-комментарии, обнаружение ссылок (глубина 1) |
| Поставщик | Лучше всего для | Скорость | Стоимость/скан | Конфиденциальность |
|---|
| OpenAI gpt-4o-mini (по умолчанию) | Лучшее соотношение цены и качества | ⚡ ~40 с | 💰 ~$0.006 | 🔒 Стандартная |
| OpenAI gpt-4o | Производственное качество | ⚡ ~40 с | 💰 ~$0.05 | 🔒 Стандартная |
| Anthropic claude-3-5-haiku | Ориентирован на конфиденциальность | ⚡ ~55 с | 💰 ~$0.02 | 🔒 Улучшенная |
| Ollama (Локально) | Полная конфиденциальность | 🐢 ~28 мин | 💰 Бесплатно | 🔐 100% Офлайн |
| Режим | Проверки | Требуется согласие | Лимит запросов |
|---|
| Безопасный | Неинтрузивный | ❌ Нет | 5 запр/с |
| Агрессивный | Глубокое сканирование | ✅ Да | 10 запр/с |
| AI-анализ | Анализ уязвимостей | ✅ Да | Н/Д |
| Документ | Описание |
|---|
| AI_INTEGRATION.md | Полное руководство по настройке ИИ (все 3 провайдера) |
| CONSENT.md | Технические детали системы токенов согласия |
| DATABASE_GUIDE.md | Схема SQLite, запросы, управление |
| ETHICS.md | Правовая основа и этические рекомендации |
| REPORT_FORMAT.md | Схема JSON и спецификации HTML |
| TESTING_GUIDE.md | Безопасное тестирование с Docker лабораторией |
| ROADMAP.md | Будущие функции и планы разработки |