Scanner de secrets open source en Rust
Site web · Documentation · Architecture · Moteur GPU Vyre
KeyHog est un scanner de secrets open source en Rust qui détecte et vérifie les clés API, jetons, mots de passe et identifiants divulgués dans le code source, l'historique Git, les conteneurs, le stockage cloud, les actifs de navigateur, le contenu collaboratif et les systèmes en cours d'exécution.
La plupart des scanners de secrets s'arrêtent aux correspondances regex CPU dans une copie de dépôt. KeyHog combine 934 détecteurs spécifiques à chaque service, le décodage des identifiants dissimulés, les preuves contextuelles et la suppression, la vérification en direct auprès des fournisseurs, et une exécution de premier ordre CUDA, Metal et WGPU via Vyre. La calibration mesure chaque backend CPU purement Rust éligible, Hyperscan/SIMD et GPU. Le routage automatique utilise ensuite la route la plus rapide prouvée par parité pour l'hôte et la classe de charge de travail exacts.
| Le GPU est un vrai backend | Analysez la surface d'attaque réelle | Séparez le signal du bruit | Agissez sur le résultat |
|---|---|---|---|
| CUDA, Metal natif et WGPU sont des pairs mesurés, pas une chaîne de repli silencieuse. | Analysez l'historique Git, les couches Docker, les archives, les buckets cloud, les source maps, WASM, les captures HAR, les collections Git hébergées et des systèmes entiers. | Décodez base64, hex, URL, protobuf, multiligne et la configuration structurée avant d'appliquer les preuves, la suppression d'exemples et les lignes de base. | Vérifiez les identifiants éligibles avec les API des fournisseurs, émettez des enveloppes SARIF ou structurées, et préservez la couverture exacte et la sémantique de sortie. |
| cargo install --locked keyhog | |||
| keyhog scan . |
<p align="center">
<img src="https://assets.kitploit.com/production/public/readmes/7654/dfb768a9b8e8fa64082992f11d0b284d5ec6a199fc1eac85e0352fb20452186f.gif" alt="Analyse KeyHog montrant la sévérité, les preuves, le fichier et la ligne, la remédiation, les résultats et l'état de couverture" width="900" />
</p>
## Un scanner de secrets conçu autour du GPU
KeyHog ne confie pas quelques expressions régulières à un compute shader générique.
Son chemin GPU repose sur [Vyre](https://github.com/santhreal/vyre), un substrat
de calcul GPU en Rust développé en parallèle de KeyHog. Les déclencheurs de détection
sont compilés en tables immuables résidant sur le GPU. Des lots de sources bornés
produisent des positions de correspondance complètes pour le même pipeline de
confirmation, de suppression, de preuve et de rapport utilisé par les routes CPU et Hyperscan.
- **Troix pairs GPU physiques.** CUDA, Metal natif et WGPU portable sont
acquis, mesurés et rapportés indépendamment.
- **Parité exacte des résultats.** La calibration rejette un candidat dont
l'identité de résultat diffère de la route de référence. Une réponse erronée plus rapide
n'entre jamais dans la table de routage.
- **Preuve de route persistante.** KeyHog enregistre le binaire, le corpus de détecteurs,
la configuration, la classe de charge de travail, l'hôte, l'accélérateur, le pilote et les
preuves de timing mesurées. Les analyses normales ne benchmarkent pas dans le chemin critique.
- **Exécution résidente.** Les workers du démon maintiennent les détecteurs compilés et l'état
de l'accélérateur à chaud pour les lots répétés de fichiers, d'archives, d'historique, distants et cloud.
- **Aucune échappatoire CPU cachée.** Un accélérateur explicitement sélectionné qui ne peut pas
s'initialiser ou se répartir échoue de manière visible au lieu de renvoyer des résultats CPU sous
une étiquette GPU.
L'installation par défaut via crates.io utilise la route CPU pure-Rust portable afin de fonctionner
sur un hôte Rust propre. Activez les trois pairs GPU sans acquérir Hyperscan :```sh
cargo install --locked keyhog --no-default-features --features portable,gpu
Activez le pair regex SIMD Hyperscan ou Vectorscan :```sh cargo install --locked keyhog --no-default-features --features portable,simd
Exécutez le diagnostic du backend de production, puis inspectez la route mesurée :```sh
keyhog backend --self-test
keyhog calibrate-autoroute --policy all
keyhog backend --autoroute --json
Le guide du backend documente les tables résidentes, le modèle de dispatch borné, le contrat de parité et les preuves de croisement reproductibles.
Les deux commandes ci-dessus installent la dernière version de crates.io et analysent l’arborescence actuelle avec la route portable pure-Rust.
Épinglez un environnement CI à une version exacte avec
cargo install --locked --version '=0.5.86' keyhog. KeyHog nécessite Rust 1.89
ou plus récent. Consultez le guide d’installation
pour les profils GPU, Hyperscan, CI, portable et de compilation depuis les sources.
KeyHog se termine avec le code 1 lorsqu’un résultat bloque la politique de preuve active. La politique
par défaut bloque les résultats likely et confirmed tout en gardant les résultats review
visibles avec le code 0 ; --evidence-policy paranoid bloque chaque niveau. Examinez
le niveau de preuve exact, le code de raison, le fichier, la ligne, le détecteur et la
remédiation de chaque résultat. Les autres codes non nuls décrivent des échecs d’entrée, système, de vérification ou
de couverture ; consultez la
référence des codes de sortie.
Le contrat de processus complet est le suivant :