Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
pythia-sql-clairvoyance — Продвинутый сканер SQL-инъекций с анализом на основе ИИ, фреймворком этического соответствия и профессиональной отчетностью. | Kitploit
Инструменты/GitHubGitHub/rodhnin/pythia-sql-clairvoyance
Сканеры уязвимостейЭксплуатация веб-приложенийОбход WAFТестирование на ПроникновениеDevSecOpsОбучение и ОбразованиеКраулерБезопасность ИИ

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
GitHub
rodhnin/pythia-sql-clairvoyance

pythia-sql-clairvoyance

Продвинутый сканер SQL-инъекций с анализом на основе ИИ, фреймворком этического соответствия и профессиональной отчетностью.

Репозиторий
23 месяцев назадЕщё не проверено
Pythia — SQL Ясновидение

Version Python License Docker OWASP Ethical


Готовый к продакшену сканер SQL-инъекций с 6 методами обнаружения, исправлениями на базе ИИ, выводом в SARIF и интеграцией в CI/CD.


Быстрый старт  ·  Документация  ·  Docker  ·  AI-анализ  ·  Звезда на GitHub


Pythia — SQL Ясновидение герой

В работе

Pythia — реальный вывод сканирования
Живое сканирование · PHP-магазин с уязвимостями · обнаружено 11 находок · безопасный режим · 2265,56 с

Pythia — обзор HTML-отчёта
HTML-отчёт — обзор находок с значками серьёзности и привязкой к OWASP
Pythia — таблица находок
Таблица находок — коды PYTHIA-SQL, определение СУБД, привязка CWE-89

Что такое Pythia?

Pythia — это готовый к продакшену сканер для обнаружения SQL-инъекций, который ставит этику на первое место. Созданный для пентестеров, исследователей безопасности и DevSecOps-инженеров, он выявляет уязвимости SQL-инъекций с помощью 6 методов обнаружения и интегрируется напрямую в пайплайны CI/CD.

Почему Pythia?

  • Этичный по дизайну: система токенов согласия предотвращает несанкционированное сканирование
  • Многометодное обнаружение: 6 методов обнаружения, включая second-order и ORDER BY-инъекции
  • На базе ИИ: GPT, Claude или локальный Ollama для интеллектуальных руководств по исправлению с примерами кода
  • Готов к CI/CD: флаги --fail-on, --sarif, --diff для интеграции в пайплайны
  • Профессиональные отчёты: HTML с панелью фильтрации + значки OWASP/CWE/CVE + JSON с контекстной оценкой CVSS
  • Постоянное отслеживание: база данных SQLite, общая с Argos Suite (~/.argos/argos.db)
  • Высокая точность: снижение ложных срабатываний с помощью оценки схожести и подтверждения множественными полезными нагрузками

Что он обнаруживает


Возможности

Основное обнаружение SQL-инъекций```bash

One command, comprehensive SQLi analysis

python -m pyth --target http://example.com/products?id=1 --html

root@kitploit:~
- **14 Кодов обнаружения**: специфичные для СУБД (MySQL, PostgreSQL, MSSQL, Oracle, SQLite) + специфичные для техники
- **Определение СУБД**: автоматическое определение типа и версии базы данных
- **Обход WAF**: более 170 обходных полезных нагрузок в агрессивном режиме (hex, URL-кодирование, встроенные комментарии, варианты регистра)
- **Обнаружение переменных сессии**: цепочка POST→GET для шаблонов аутентификации в стиле DVWA-high
- **Умный краулер**: поиск в ширину с извлечением всплывающих окон/onclick (`--js`), карта сайта, robots.txt
- **Повышение устойчивости к ложным срабатываниям**: оценка схожести SequenceMatcher + подтверждение с помощью нескольких полезных нагрузок

### Интеграция CI/CD```bash
# Pipeline-friendly: exit 10 if high+ findings found
python -m pyth --target https://staging.app.com --aggressive --fail-on high
echo $?  # 0=clean, 10=findings found, 1=error

# SARIF for GitHub Security / GitLab SAST
python -m pyth --target https://app.com --aggressive --sarif > results.sarif

# Compare vs last scan — show what's new, what's fixed
python -m pyth --target https://app.com --aggressive --diff last --html

Заголовки аутентификации```bash

Scan authenticated endpoints (JWT, API keys, custom cookies)

python -m pyth --target https://api.example.com/v1/users
--auth-header "Authorization: Bearer eyJhbGc..."
--auth-header "X-API-Key: sk-prod-xxx"
--aggressive --html

root@kitploit:~
Передавайте `--auth-header` несколько раз для нескольких заголовков.

### Анализ на основе ИИ

Выберите поставщика ИИ из командной строки:

| Провайдер                         | Лучше всего для                          | Скорость      | Стоимость        | Конфиденциальность      |
| -------------------------------- | --------------------------------- | ---------- | ----------- | ------------ |
| **OpenAI gpt-4o-mini** (по умолчанию) | Качество производства, низкая стоимость      | Быстро       | ~$0.02/scan | Стандартная     |
| **Anthropic Claude**             | Ориентирован на конфиденциальность, исправление кода | Быстро       | ~$0.06/scan | Улучшенная     |
| **Ollama (Local)**               | Полная конфиденциальность                  | Медленно (CPU) | Бесплатно        | 100% Офлайн |```bash
# Standard analysis
python -m pyth --target http://example.com --use-ai --ai-tone technical --html

# Agent mode: AI queries NVD for real CVEs (no API key for NVD)
python -m pyth --target http://example.com --use-ai --ai-agent --html

# Multi-provider comparison
python -m pyth --target http://example.com --use-ai \
  --ai-compare "openai:gpt-4o-mini,anthropic:claude-3-5-haiku-20241022" --html

# With budget cap
python -m pyth --target http://example.com --use-ai --ai-budget 0.05 --html

Профессиональная отчетность

JSON Reports (Машиночитаемый, v0.2.0 schema)```json { "tool": "pythia", "version": "0.2.0", "target": "http://localhost:8081", "mode": "aggressive", "summary": { "total": 26, "critical": 18, "high": 6, "medium": 2 }, "findings": [ { "id": "PYTHIA-SQL-001", "title": "Error-Based SQL Injection (MySQL/MariaDB)", "severity": "critical", "confidence": "high", "parameter": "id", "vector": "GET", "dbms": "MySQL 8.0.32", "cvss": 9.8, "contextual_score": 9.9, "risk_factors": ["no_ssl", "pii_detected"], "payload": "' OR '1'='1' --", "owasp": { "id": "A03", "name": "Injection" }, "cwe": { "id": "CWE-89", "name": "SQL Injection" }, "detection_method": "error-based" } ], "notes": { "scan_duration_seconds": 87.3, "requests_sent": 342, "rate_limit_applied": "5.0 req/s", "false_positive_disclaimer": "..." }, "diff": null }

root@kitploit:~
**HTML-отчеты** (удобные для чтения)

- Панель фильтров: степень серьезности, категория OWASP, метод обнаружения, СУБД
- Значки OWASP/CWE/CVE для каждой находки (кликабельные, ведущие к внешним ссылкам)
- Базовый + контекстуальный баллы CVSS с цветовой кодировкой
- Раскрывающиеся разделы с доказательствами и визуализацией полезной нагрузки
- Вкладки анализа ИИ (стандартный / агент / сравнение)
- Раздел различий (новые / исправленные / постоянные находки)
- Тема Oracle (фиолетовый `#6a11cb`) — готовый к передаче клиентам без редактирования

### Коды находок

Все коды → **OWASP A03 Injection** / **CWE-89 SQL Injection**

| Код               | Тип                    | СУБД / Вектор              | Режим       |
| ----------------- | ---------------------- | ------------------------- | ----------- |
| `PYTHIA-SQL-001`  | Основанный на ошибках  | MySQL / MariaDB           | Безопасный  |
| `PYTHIA-SQL-002`  | Основанный на ошибках  | PostgreSQL                | Безопасный  |
| `PYTHIA-SQL-003`  | Основанный на ошибках  | MSSQL                     | Безопасный  |
| `PYTHIA-SQL-004`  | Основанный на ошибках  | Oracle                    | Безопасный  |
| `PYTHIA-SQL-005`  | Основанный на ошибках  | SQLite                    | Безопасный  |
| `PYTHIA-SQL-010`  | Слепой булевый         | Любая СУБД                | Безопасный  |
| `PYTHIA-SQL-011`  | Слепой булевый         | Через инъекцию в заголовок| Безопасный  |
| `PYTHIA-SQL-020`  | Основанный на времени  | MySQL SLEEP()             | Агрессивный |
| `PYTHIA-SQL-021`  | Основанный на времени  | MSSQL WAITFOR             | Агрессивный |
| `PYTHIA-SQL-022`  | Основанный на времени  | PostgreSQL pg_sleep()     | Агрессивный |
| `PYTHIA-SQL-030`  | Основанный на UNION    | Параметр GET/POST         | Агрессивный |
| `PYTHIA-SQL-031`  | Основанный на UNION    | Через cookie              | Агрессивный |
| `PYTHIA-SQL-040`  | Второго порядка        | Шаблон сохранения → извлечения | Агрессивный |
| `PYTHIA-SQL-050`  | Инъекция ORDER BY      | Числовой параметр сортировки | Агрессивный |

---

## Валидация и тестирование

Pythia v0.2.0 была **эмпирически проверена** с использованием контролируемых уязвимых приложений на Docker.

### Результаты QA (Май 2026)

| Цель                   | Режим                             | Находки          | Примечания                                      |
| ---------------------- | --------------------------------- | ---------------- | ----------------------------------------------- |
| **PHP Lab** (8081)     | `--aggressive`                    | **26 находок**   | Все 4 техники + второй порядок + ORDER BY       |
| **Flask Lab** (8082)   | `--js --aggressive`               | **18 находок**   | Сессионная переменная + второй порядок + ORDER BY|
| **DVWA Low**           | `--no-crawl --aggressive`         | 4/4 техники      | PYTHIA-SQL-001/010/020/030                      |
| **DVWA Medium**        | `--no-crawl --aggressive`         | 4/4 техники      | Форма POST, все техники                          |
| **DVWA High**          | `--js --max-pages 2 --aggressive` | 4/4 техники      | Цепочка сессионная переменная POST→GET          |
| **False Positive Test**| `--aggressive`                    | **0 находок**    | Статический URL — подтверждено отсутствие ложных срабатываний |

**Ключевые проверки:**

- ✅ Все 14 кодов находок работают
- ✅ DVWA высокий (шаблон сессионной переменной) — полное 4/4 соответствие
- ✅ Обнаружение второго порядка (PYTHIA-SQL-040)
- ✅ Обнаружение инъекции ORDER BY (PYTHIA-SQL-050)
- ✅ Ноль ложных срабатываний на статических URL
- ✅ Коды выхода `--fail-on` (0/10/1) корректны
- ✅ Вывод SARIF 2.1.0 валидируется
- ✅ Сравнение `--diff last` работает
- ✅ `--auth-header` передает заголовки через все запросы

---

## Быстрый старт

### Предварительные требования

- **Python 3.11+** (рекомендуется 3.12)
- **pip** (менеджер пакетов Python)
- **Docker** (опционально, для уязвимых лабораторий)

### Установка

**1. Клонируйте репозиторий**```bash
git clone https://github.com/rodhnin/pythia-sql-clairvoyance.git
cd pythia-sql-clairvoyance

2. Создайте и активируйте виртуальное окружение```bash python3 -m venv .venv source .venv/bin/activate

root@kitploit:~
**3. Установка зависимостей**```bash
python -m pip install --upgrade pip
python -m pip install -r requirements.txt

4. Настройте ключи API (если используется облачный ИИ)```bash export OPENAI_API_KEY="sk-..." export ANTHROPIC_API_KEY="sk-ant-..."

root@kitploit:~
**5. Проверка установки**```bash
python -m pyth --version
# Output: Pythia v0.2.0

Ваше первое сканирование```bash

Basic scan (safe mode, no consent required)

python -m pyth --target "http://testphp.vulnweb.com/artists.php?artist=1"

With HTML report

python -m pyth --target "http://testphp.vulnweb.com/artists.php?artist=1" --html

Aggressive mode (requires consent)

python -m pyth --gen-consent example.com python -m pyth --verify-consent http --domain example.com --token verify-abc123 python -m pyth --target http://example.com --aggressive --html

root@kitploit:~
Отчеты сохраняются в `~/.pythia/reports/`.

---

## Руководство по использованию

### Справочник флагов CLI```
Scan Options:
  --target URL          Target URL to scan
  --safe                Safe mode (default): error-based + boolean-blind
  --aggressive          Aggressive mode: all 6 techniques + WAF bypass payloads

Auth:
  --cookie COOKIE       Session cookie string
  --auth-header HEADER  Custom HTTP header (pass multiple times for multiple headers)
  --auto-csrf           Automatically detect and include CSRF tokens

Crawler:
  --max-depth N         Max crawl depth (default: 2)
  --max-pages N         Max pages to crawl (default: 100)
  --no-robots           Ignore robots.txt
  --no-crawl            Skip BFS crawl, test target URL only
  --js                  JS-aware popup/onclick URL extraction

Output:
  --report-dir DIR      Output directory for reports (default: ~/.pythia/reports/)
  --html                Generate HTML report
  --db                  Save findings to database
  --diff SCAN_ID        Compare vs previous scan (use "last" for most recent)
  --sarif               Output SARIF 2.1.0 to stdout (logs redirect to stderr)
  --fail-on SEVERITY    Exit 10 if findings found at this severity or higher

CI/CD:
  --fail-on SEVERITY    Exit codes: 0=clean, 10=findings found, 1=error

Logging:
  -v / -vv / -vvv       Verbosity levels
  -q                    Quiet mode (errors only)
  --log-file FILE       Log to file
  --log-json            Structured JSON logging
  --no-color            Disable colored output

AI:
  --use-ai              Enable AI analysis
  --ai-tone TONE        Analysis tone: technical, non_technical, both
  --api-key-env VAR     Environment variable name for API key
  --ai-provider NAME    AI provider: openai, anthropic, ollama
  --ai-model MODEL      Model name (e.g. gpt-4o-mini, claude-3-5-haiku-20241022)
  --ai-stream           Stream AI output token by token
  --ai-compare LIST     Compare providers (e.g. "openai,anthropic" or "openai:gpt-4o-mini,anthropic:claude-3-5-haiku-20241022")
  --ai-agent            Agent mode: NVD CVE lookup + iterative analysis
  --ai-budget AMOUNT    Cost cap per scan in USD

Consent:
  --gen-consent DOMAIN  Generate consent token for domain
  --verify-consent METHOD  Verify consent: http or dns
  --domain DOMAIN       Domain for consent verification
  --token TOKEN         Consent token value

Advanced:
  --rate N              Request rate limit (default: 2.0 safe, 5.0 aggressive)
  --timeout N           HTTP timeout in seconds (default: 10)
  --user-agent STRING   Custom User-Agent
  --no-verify-ssl       Disable SSL verification
  --threads N           Worker threads (default: 5)
  --version             Show version and exit

Базовое сканирование```bash

Safe mode (default) - error-based + boolean-blind

python -m pyth --target "http://example.com/search?q=test"

Generate HTML report

python -m pyth --target "http://example.com/products?id=1" --html

Increase verbosity

python -m pyth --target "http://example.com/api/users?id=1" -vv

Skip crawler, test target URL directly

python -m pyth --target "http://example.com/api/users?id=1" --no-crawl

root@kitploit:~
### CI/CD Интеграция```bash
# Exit 10 if high or critical findings exist (blocks pipeline)
python -m pyth \
  --target https://staging.myapp.com \
  --aggressive \
  --fail-on high

# SARIF output for GitHub Security tab
python -m pyth \
  --target https://staging.myapp.com \
  --aggressive \
  --sarif > results.sarif

# Compare vs last scan to see what changed
python -m pyth \
  --target https://staging.myapp.com \
  --aggressive \
  --diff last \
  --html

Аутентифицированное сканирование```bash

JWT Bearer token

python -m pyth
--target https://api.example.com/v1/products
--aggressive
--auth-header "Authorization: Bearer eyJhbGc..."
--html

Multiple headers

python -m pyth
--target https://api.example.com/v1/users
--aggressive
--auth-header "Authorization: Bearer eyJhbGc..."
--auth-header "X-API-Key: sk-prod-xxx"
--html

Session cookie (DVWA example)

python -m pyth
--target "http://localhost:8080/vulnerabilities/sqli/?id=1&Submit=Submit"
--no-crawl
--aggressive
--cookie "PHPSESSID=abc123; security=low"

root@kitploit:~
### Обход с учетом JavaScript```bash
# Extract popup/onclick URLs for complex navigation patterns
python -m pyth \
  --target http://localhost:8082 \
  --js \
  --aggressive \
  --html

# DVWA high: session-variable form (needs popup URL extraction)
python -m pyth \
  --target "http://localhost:8080/vulnerabilities/sqli/" \
  --js \
  --max-pages 2 \
  --aggressive \
  --cookie "PHPSESSID=abc123; security=high"

Флаг --js использует извлечение через regex из атрибутов onclick — зависимость от Playwright не требуется.

Агрессивный режим```bash

Step 1: Generate consent token

python -m pyth --gen-consent example.com

Output: Token: verify-a3f9b2c1d8e4...

Step 2: Place token at https://example.com/.well-known/verify-a3f9b2c1d8e4.txt

Step 3: Verify consent

python -m pyth --verify-consent http
--domain example.com
--token verify-a3f9b2c1d8e4

Step 4: Run aggressive scan (all 6 techniques + WAF bypass)

python -m pyth
--target http://example.com
--aggressive
--html -v

root@kitploit:~
---

## Развёртывание Docker

Pythia предоставляет два варианта развёртывания Docker:

1. **Образ сканера**: Сборка Pythia как Docker-образа для одноразового сканирования
2. **Тестовая лаборатория**: Уязвимые приложения (DVWA, PHP, Flask) для безопасного тестирования

### Быстрый старт```bash
cd docker
./deploy.sh

Тестовая лаборатория (Уязвимые приложения)

НИКОГДА не выставляйте тестовую лабораторию в публичный интернет — ТОЛЬКО ДЛЯ ЛОКАЛЬНОГО ТЕСТИРОВАНИЯ!```bash

Start vulnerable applications

sudo docker compose -f docker/compose.testing.yml up -d

Expected targets:

DVWA: http://localhost:8080

PHP Shop: http://localhost:8081

Flask Blog: http://localhost:8082

Scan from host

python -m pyth --target http://localhost:8081 --aggressive --html

Stop lab

sudo docker compose -f docker/compose.testing.yml down

root@kitploit:~
---

## Анализ с помощью ИИ

Pythia использует **LangChain v1.0.0** с поддержкой нескольких провайдеров ИИ.

### Два режима анализа

- **Технический**: Подготовленные запросы, параметризованные запросы, код проверки ввода (PHP/PDO, Python/SQLAlchemy, Node.js/pg, Java/PreparedStatement)
- **Для руководства**: Оценка рисков на простом языке для заинтересованных сторон и менеджмента

### Переключение провайдеров```bash
# CLI flags (v0.2.0) — no YAML editing required
python -m pyth --target http://example.com --use-ai --ai-provider anthropic --ai-model claude-3-5-haiku-20241022 --html
python -m pyth --target http://example.com --use-ai --ai-provider ollama --ai-model llama3.2 --html

YAML config (config/default.yaml) все еще может использоваться как запасной вариант. Флаги CLI имеют приоритет.

Полное руководство по интеграции с ИИ см. в docs/AI_INTEGRATION.md


Понимание отчетов

Файлы отчетов```

~/.pythia/ ├── reports/ │ ├── pythia_sqli_report_localhost_20260318_143022.json │ └── pythia_sqli_report_localhost_20260318_143022.html ~/.argos/ ├── argos.db # Shared Argos Suite database ├── costs.json # AI cost tracking (shared) └── logs/ └── pythia.log # Scan logs

root@kitploit:~
### Карта уровней серьезности

- **КРИТИЧЕСКИЙ (9.0-10.0)**: Основанные на ошибках, временные, UNION, второго порядка с подтвержденной эксплуатацией
- **ВЫСОКИЙ (7.0-8.9)**: Boolean-blind (высокая уверенность), инъекции ORDER BY
- **СРЕДНИЙ (4.0-6.9)**: Boolean-blind (средняя уверенность)
- **НИЗКИЙ (0.1-3.9)**: Потенциальная SQLi с неубедительными доказательствами

### Коды выхода

| Код  | Значение                                                                                    |
| ---- | ------------------------------------------------------------------------------------------- |
| `0`  | Сканирование завершено, находок на уровне `--fail-on` нет (или `--fail-on` не использовался) |
| `1`  | Техническая ошибка (соединение, таймаут, база данных)                                       |
| `10` | Найдены находки на уровне или выше порога серьезности `--fail-on`                            |
| `130`| Пользователь отменил (Ctrl+C)                                                               |

---

## Персистентность базы данных

База данных SQLite **общая с экосистемой Argos** (`~/.argos/argos.db`):

- **История сканирования**: дата, продолжительность, количество находок, методы обнаружения
- **Репозиторий находок**: доступная для поиска база данных уязвимостей SQL-инъекций
- **Проверенные домены**: отслеживание токенов согласия с истечением срока действия
- **Затраты на ИИ**: отслеживание стоимости за сканирование (новое в версии 0.2.0)```bash
# Query recent Pythia scans
sqlite3 ~/.argos/argos.db "SELECT * FROM scans WHERE tool='pythia' ORDER BY scan_id DESC LIMIT 10"

# Find critical SQL injections
sqlite3 ~/.argos/argos.db "SELECT * FROM findings WHERE severity='critical' AND scan_id IN (SELECT scan_id FROM scans WHERE tool='pythia')"

# View AI cost summary
sqlite3 ~/.argos/argos.db "SELECT provider, model, ROUND(SUM(cost_usd),4) FROM ai_costs WHERE tool='pythia' GROUP BY provider, model"

Структура проекта```

pythia-sql-clairvoyance/ ├── pyth/ │ ├── checks/ │ │ ├── crawler.py # BFS web crawler (JS-aware with --js) │ │ ├── error_based.py # PYTHIA-SQL-001..005 │ │ ├── boolean_blind.py # PYTHIA-SQL-010..011 │ │ ├── time_based.py # PYTHIA-SQL-020..022 │ │ ├── union_based.py # PYTHIA-SQL-030..031 │ │ ├── second_order.py # PYTHIA-SQL-040 │ │ ├── order_injection.py # PYTHIA-SQL-050 │ │ ├── waf_bypass.py # WAF bypass payloads (aggressive only) │ │ └── forms.py # Form analysis │ ├── core/ │ │ ├── ai.py # AI integration + AICostTracker │ │ ├── config.py # Config loader │ │ ├── consent.py # Consent token system │ │ ├── cve_lookup.py # NVD CVE API client │ │ ├── db.py # ArgosDB (shared SQLite) │ │ ├── diff.py # Diff reports │ │ ├── http_client.py # Rate-limited HTTP session │ │ ├── logging.py # Structured logging + secret redaction │ │ ├── owasp.py # OWASP/CWE mapper │ │ ├── report.py # Report generation (JSON + HTML + SARIF) │ │ └── risk_scoring.py # Contextual CVSS scoring │ ├── cli.py # CLI argument parser (35+ flags) │ ├── scanner.py # Main scan orchestrator │ └── init.py # version = "0.2.0" ├── config/ │ ├── default.yaml │ └── prompts/ # AI prompt templates ├── db/migrate.sql # Shared DB schema ├── schema/report.schema.json # JSON Schema Draft 2020-12 ├── templates/report.html.j2 # HTML template (oracle purple theme) ├── docker/ # Docker deployment + vulnerable labs └── docs/ ├── AI_INTEGRATION.md ├── CONSENT.md ├── DATABASE_GUIDE.md ├── ETHICS.md ├── REPORT_FORMAT.md ├── ROADMAP.md └── TESTING_GUIDE.md

root@kitploit:~
---

## Дорожная карта

### v0.1.0 — Первый релиз (ноябрь 2025)

**Статус:** Выпущен

- 4 метода обнаружения, AI-исправление, система согласия, отчёты HTML+JSON, постоянное хранение SQLite

### v0.2.0 — Полный паритет и корпоративные функции (май 2026)

**Статус:** Выпущен

- 6 методов обнаружения (добавлены second-order + ORDER BY)
- 14 кодов находок, специфичных для СУБД
- Интеграция CI/CD (`--fail-on`, `--sarif`, `--diff`)
- Заголовки аутентификации, обход JS, полезные нагрузки для обхода WAF
- AI: потоковая передача, сравнение, агент (поиск NVD CVE), отслеживание затрат, флаги `--ai-provider`/`--ai-model`
- Оценка рисков OWASP/CWE/CVSS/контекстная в каждой находке
- Улучшение борьбы с ложными срабатываниями (оценка сходства, подтверждение несколькими полезными нагрузками)
- Паритет с высоким уровнем безопасности DVWA (цепочка переменных сессии)

### v0.3.0 — Набор тестов Pytest и инструменты для разработчиков (3 квартал 2026)

**Запланировано:**

- 40+ тестов pytest, покрывающих все 14 кодов находок
- Интерактивное управление конфигурацией (`python -m pyth config set`)
- CLI базы данных (`python -m pyth db scans list`)
- Обнаружение истечения сессии во время аутентифицированного сканирования
- Пакетное сканирование нескольких сайтов (`--targets targets.txt`)

### v0.4.0 — Интеллект и автоматизация (1 квартал 2027)

**Запланировано:**

- Обнаружение аномалий на основе ML
- Автоматическая эксплуатация только для чтения (доказательство воздействия)
- Интерфейс AI-чата для анализа результатов сканирования

Подробные описания функций см. в [docs/ROADMAP.md](https://github.com/rodhnin/pythia-sql-clairvoyance/blob/HEAD/docs/ROADMAP.md)

---

## Этика и правовые аспекты

### Золотое правило

**Сканируйте только системы, которые вам принадлежат или на которые у вас есть явное письменное разрешение на тестирование.**

### Обеспечение согласия

| Режим            | Тесты                       | Требуется согласие | Лимит запросов |
| --------------- | --------------------------- | ----------------- | -------------- |
| **Безопасный**  | Error-Based, Boolean-Blind  | Нет               | 2.0 req/s      |
| **Агрессивный** | Все 6 техник                | Да                | 5.0 req/s      |
| **AI-анализ**   | Руководство по устранению   | Да                | N/A            |

### Правовая база

- США: Закон о компьютерном мошенничестве и злоупотреблениях (CFAA)
- Великобритания: Закон о компьютерных преступлениях 1990 года
- ЕС: Директива 2013/40/ЕС
- Международные: различные законы о киберпреступлениях

Полные этические руководящие принципы см. в [docs/ETHICS.md](https://github.com/rodhnin/pythia-sql-clairvoyance/blob/HEAD/docs/ETHICS.md)

---

## Вклад в проект

Мы приветствуем вклад — сообщения об ошибках, запросы функций, улучшения документации и вклад в код.

### Как внести вклад

1. Сделайте форк репозитория
2. Создайте ветку функции (`git checkout -b feature/amazing-feature`)
3. Внесите изменения и напишите тесты
4. Зафиксируйте изменения
5. Отправьте изменения в ветку и откройте Pull Request

### Настройка среды разработки```bash
git clone https://github.com/YOUR-USERNAME/pythia-sql-clairvoyance.git
cd pythia-sql-clairvoyance
python -m pip install -r requirements.txt
python -m pip install pytest black flake8 mypy
black pyth/
flake8 pyth/
pytest tests/

Документация


Лицензия

Этот проект распространяется под лицензией MIT — подробнее в файле LICENSE.


Отказ от ответственности

ВАЖНО: Этот инструмент предназначен только для авторизованного тестирования безопасности.

Используя Pythia, вы подтверждаете и соглашаетесь с тем, что:

  1. Вы будете сканировать только те системы, которыми владеете или на тестирование которых имеете явное письменное разрешение
  2. Вы будете соблюдать все применимые законы и нормативные акты
  3. Вы понимаете, что несанкционированный доступ является незаконным (CFAA, Закон о неправомерном использовании компьютеров и т.д.)
  4. Автор и участники не несут ответственности за неправомерное использование

Благодарности

  • OWASP — Руководство по SQL-инъекциям, Руководство по тестированию
  • SQLMap — Вдохновение для методов и техник обнаружения
  • PortSwigger — Ресурсы Web Security Academy
  • LangChain — AI-фреймворк для интеллектуального анализа
  • Anthropic и OpenAI — AI-модели для устранения уязвимостей
  • Ollama — Локальный AI-инференс для сканирования с упором на конфиденциальность
  • NVD/NIST — Данные CVE через бесплатный публичный API

Автор

Rodney Dhavid Jimenez Chacin (rodhnin)

  • Сайт: rodhnin.com
  • GitHub: @rodhnin
  • Проект: pythia-sql-clairvoyance

Создано для этичных хакеров, пентестеров и DevSecOps-инженеров по всему миру

Сообщить об ошибке • Предложить функцию • Документация


Pythia v0.2.0 — Май 2026

Скачать инструмент
Метод обнаруженияОписаниеТребуемый режим
Error-BasedОшибки SQL в ответах (MySQL, PostgreSQL, MSSQL, Oracle, SQLite)Безопасный
Boolean-BlindРазличия в ответах от условий TRUE/FALSEБезопасный
Time-Based BlindЗадержки ответов от полезных нагрузок SLEEP/WAITFORАгрессивный
UNION-BasedИзвлечение данных через UNION SELECTАгрессивный
Second-OrderШаблоны инъекций сохранение→извлечение (цепочка POST→GET)Агрессивный
ORDER BY InjectionИнъекция в числовой параметр сортировкиАгрессивный
ДокументОписание
AI_INTEGRATION.mdПолное руководство по настройке ИИ (провайдеры, потоковая передача, агент, отслеживание затрат)
CONSENT.mdТехнические детали системы токенов согласия
DATABASE_GUIDE.mdСхема SQLite v1.1, запросы, таблица ai_costs
ETHICS.mdПравовая база и этические принципы
REPORT_FORMAT.mdПолная схема JSON, SARIF, формат diff
ROADMAP.mdИстория функций и планы развития
TESTING_GUIDE.mdНастройка Docker-лаборатории и тестовые сценарии v0.2.0