
keyhog v0.5.47
Сканер секретов с открытым исходным кодом на Rust
Веб-сайт · Документация · Архитектура · GPU-движок Vyre
KeyHog: GPU-ускоряемый сканер секретов для кода, облака и CI
KeyHog — это сканер секретов с открытым исходным кодом на Rust, который находит и проверяет утёкшие API-ключи, токены, пароли и учётные данные в исходном коде, истории Git, контейнерах, облачных хранилищах, браузерных ресурсах, корпоративном контенте и работающих системах.
Большинство сканеров секретов останавливаются на CPU-сопоставлении регулярных выражений в копии репозитория. KeyHog объединяет 934 детектора, специфичных для конкретных сервисов, сквозное декодирование скрытых учётных данных, контекстно-зависимые доказательства и подавление, проверку в реальном времени у провайдеров, а также полноценное исполнение через CUDA, Metal и WGPU с помощью Vyre. Калибровка измеряет каждый подходящий чисто-Rust CPU, Hyperscan/SIMD и GPU бэкенд. Автоматическая маршрутизация затем использует самый быстрый маршрут с доказанным паритетом для конкретного хоста и класса рабочей нагрузки.
| GPU — это реальный бэкенд | Сканируйте фактическую поверхность атаки | Отделяйте сигнал от шума | Действуйте по результату |
|---|---|---|---|
| CUDA, нативный Metal и WGPU — это измеренные равноправные участники, а не молчаливая резервная цепочка. | Сканируйте историю Git, слои Docker, архивы, облачные корзины, source maps, WASM, HAR-захваты, размещённые коллекции Git и целые системы. | Декодируйте base64, hex, URL, protobuf, многострочные и структурированные конфигурации перед применением доказательств, подавления примеров и базовых линий. | Проверяйте подходящие учётные данные через API провайдеров, создавайте SARIF или структурированные конверты и сохраняйте точную семантику покрытия и выхода. |
| cargo install --locked keyhog | |||
| keyhog scan . |
<p align="center">
<img src="https://assets.kitploit.com/production/public/readmes/7654/dfb768a9b8e8fa64082992f11d0b284d5ec6a199fc1eac85e0352fb20452186f.gif" alt="Сканирование KeyHog с указанием серьёзности, доказательств, файла и строки, способов устранения, результатов и статуса покрытия" width="900" />
</p>
## Сканер секретов, построенный вокруг GPU
KeyHog не передаёт несколько регулярных выражений в универсальный вычислительный шейдер.
Его GPU-путь построен на [Vyre](https://github.com/santhreal/vyre) — Rust GPU
вычислительной подложке, разработанной вместе с KeyHog. Триггеры детекторов компилируются в
неизменяемые таблицы, размещаемые в GPU. Ограниченные исходные пакеты дают полные позиции
совпадений для того же конвейера подтверждения, подавления, сбора доказательств и отчётности,
который используется в CPU- и Hyperscan-маршрутах.
- **Три физических GPU-пира.** CUDA, нативный Metal и портативный WGPU
подключаются, измеряются и учитываются независимо.
- **Точное совпадение результатов.** Калибровка отклоняет кандидата, чья
идентичность находки отличается от эталонного маршрута. Более быстрый неверный ответ никогда не попадает
в таблицу маршрутизации.
- **Постоянные доказательства маршрута.** KeyHog записывает бинарный файл, корпус детекторов,
конфигурацию, класс рабочей нагрузки, хост, ускоритель, драйвер и измеренные временные
показатели. Обычные сканирования не выполняют бенчмаркинг на горячем пути.
- **Резидентное выполнение.** Фоновые рабочие процессы демона поддерживают скомпилированные детекторы и состояние
ускорителя в тёплом виде для повторяющихся пакетов файлов, архивов, истории, удалённых и облачных источников.
- **Нет скрытого запасного пути на CPU.** Явно выбранный ускоритель, который не может
инициализироваться или выполнить диспетчеризацию, завершается с видимой ошибкой, а не возвращает находки CPU под
меткой GPU.
Установка crates.io по умолчанию использует портативный чисто-Rust CPU-маршрут, поэтому она работает
на чистом Rust-хосте. Включите три GPU-пира без приобретения Hyperscan:```sh
cargo install --locked keyhog --no-default-features --features portable,gpu
Включите пира Hyperscan или Vectorscan SIMD regex:```sh cargo install --locked keyhog --no-default-features --features portable,simd
Запустите диагностику продакшен-бэкенда, затем проверьте измеренный маршрут:```sh
keyhog backend --self-test
keyhog calibrate-autoroute --policy all
keyhog backend --autoroute --json
Руководство по бэкендам описывает резидентные таблицы, ограниченную модель диспетчеризации, контракт паритета и воспроизводимые перекрёстные доказательства.
Начало работы
Установка и запуск первого сканирования
Две команды выше устанавливают последний релиз crates.io и сканируют текущее дерево с помощью переносимого чисто-Rust маршрута.
Зафиксируйте CI-окружение на одной точной версии с помощью
cargo install --locked --version '=0.5.86' keyhog. KeyHog требует Rust 1.89
или новее. См. руководство по установке
для профилей GPU, Hyperscan, CI, переносимого и сборки из исходников.
KeyHog завершается с кодом 1, когда находка блокирует активную политику доказательств. Политика по умолчанию
блокирует находки уровня likely и confirmed, оставляя находки уровня review
видимыми с кодом выхода 0; --evidence-policy paranoid блокирует все уровни. Проверяйте
точный уровень доказательств каждой находки, код причины, файл, строку, детектор и
способ устранения. Другие ненулевые коды описывают ошибки ввода, системы, проверки или
покрытия; см.
справочник кодов выхода.
Полный контракт процесса выглядит так: