🎁 Ce que tu reçois : l'installation de Strix pas à pas, le vrai coût par modèle (chiffres réels, pas des estimations), une cible d'entraînement légale, et la boucle complète scan → correction avec Claude Code.
La plupart des outils de sécurité te rendent une liste d'alertes que personne ne lit. Strix (github.com/usestrix/strix) fait l'inverse : c'est un agent IA open-source qui attaque vraiment ton app et qui prouve chaque faille avec un exploit reproductible. Pas de « vulnérabilité potentielle » : soit il entre, soit il n'entre pas. Et tout tourne sur ta machine.
⚖️ Cadre légal, à lire avant tout le reste : tu scannes uniquement ce qui t'appartient, ou ce pour quoi tu as l'autorisation écrite du propriétaire. Pas de zone grise : le reste est illégal, même « pour voir ». Pour t'entraîner sans risque, il existe OWASP Juice Shop, une application publique volontairement truffée de failles, faite exactement pour ça.
Ce n'est pas 100 % gratuit
Autant le dire tout de suite : le logiciel est gratuit, mais il lui faut Docker (gratuit) et un modèle IA via clé API, lui payant à l'usage. Prévois environ 5 € pour tout ce guide.
| Modèle | Prix (entrée / sortie par M tokens) | Coût d'un scan |
|---|---|---|
| Claude Sonnet | ~3 $ / 15 $ | Plusieurs € |
| MiniMax M3 (via OpenRouter) | 0,23 $ / 0,96 $ | ~1 à 5 € selon la profondeur |
| MiniMax M2 | 0,30 $ / 1,20 $ | ~1 € |
💡 Le coût dépend de la profondeur du scan, pas de la taille de ton app. Le repère que j'ai mesuré : un scan complet sur Juice Shop a coûté 4,32 $.
Prérequis
- Docker Desktop
- Python 3.12+
- Homebrew (macOS)
- 4 Go de RAM et 10 Go de disque
- ~5 € de crédit LLM
Étape 1 · Docker Desktop
brew install --cask docker-desktop
open -a Docker
# accepter, skip la connexion, attendre le 🐳 running
docker run --rm hello-world
Étape 2 · pipx
brew install pipx
pipx ensurepath
# fermer/rouvrir le terminal
Étape 3 · Installer Strix
pipx install strix-agent
strix --version
Étape 4 · Le modèle (MiniMax via OpenRouter)
- Crée un compte sur openrouter.ai
- Mets du crédit sur openrouter.ai/credits
- Génère une clé sur openrouter.ai/keys
⚠️ Sécu : une clé API ne se colle que dans un terminal en saisie masquée. Jamais à l'écran, jamais dans un chat.
read -s "LLM_API_KEY?Colle ta clé OpenRouter: " && export LLM_API_KEY
export STRIX_LLM="openrouter/minimax/minimax-m3"
💡 Ces variables ne vivent que dans le terminal courant. Définis-les et lance le scan dans le même onglet, sinon tu te prends un STRIX_LLM is not set.
Étape 5 · La cible d'entraînement (OWASP Juice Shop)
docker rm -f juice 2>/dev/null; docker run -d --name juice -p 3000:3000 bkimminich/juice-shop
sleep 30; curl -s -o /dev/null -w "HTTP: %{http_code}\n" http://localhost:3000
Étape 6 · Lancer le scan
strix --target http://localhost:3000
- Le 1er scan télécharge l'image sandbox Kali : quelques minutes, et c'est gratuit.
Ctrl+Ccoupe à tout moment.- Strix réécrit
localhostenhost.docker.internaltout seul. - Les rapports atterrissent dans
strix_runs/;strix viewrouvre un rapport.
Étape 7 · Scanner ta propre app
strix --target http://localhost:PORT # app locale
strix --target https://github.com/toi/repo # revue de code
strix --target https://ton-app.com # en ligne (black-box)
⚖️ Rappel : uniquement ce qui t'appartient, ou avec accord écrit. Et les failles trouvées sur ta prod sont réelles : ne les publie jamais avant correction.
Étape 8 · Corriger avec Claude Code
Trouver les failles ne sert à rien si tu les laisses là. Ouvre Claude Code dans le projet (claude), donne-lui le rapport présent dans strix_runs/, et demande-lui de patcher chaque faille critique une par une. Une par une, pas « corrige tout », sinon tu ne relis rien.
Puis relance un scan : c'est la seule preuve que le correctif tient. Un patch non revérifié n'est qu'une intention.
Dépannage
| Symptôme | Cause / correctif |
|---|---|
STRIX_LLM is not set | Refais les export dans le même onglet de terminal |
HTTP: 000 | La cible n'est pas lancée → docker start juice |
| Erreur d'auth OpenRouter | export STRIX_LLM="openai/minimax/minimax-m3" + export LLM_API_BASE="https://openrouter.ai/api/v1" |
| Bloqué sur « Pulling image » | Normal, une seule fois (téléchargement de la sandbox) |
| Le modèle refuse | Pas de crédit sur le compte |
Récap
| Étape | Commande |
|---|---|
| Docker | brew install --cask docker-desktop |
| pipx | brew install pipx && pipx ensurepath |
| Strix | pipx install strix-agent |
| Modèle | export STRIX_LLM="openrouter/minimax/minimax-m3" |
| Cible d'entraînement | docker run -d --name juice -p 3000:3000 bkimminich/juice-shop |
| Scan | strix --target http://localhost:3000 |
Ressources
- 📦 Dépôt GitHub : github.com/usestrix/strix
- 🧃 Cible d'entraînement : OWASP Juice Shop
- 🔑 Modèles et crédits : openrouter.ai