Rilevare segreti in locale e usare l’IA senza condividere le chiavi
Esercizio Gitleaks con un marcatore finto, validatore rigoroso dei metadati e prompt inglesi per la risposta.

Inizia qui: a cosa serve la guida
Una chiave API finisce nel repository; inviarla all’IA può ampliare la fuga. Scansiona localmente, conserva rapporti privati e passa solo metadati controllati. Il marcatore è fittizio. Otterrai risultato, registro opaco e piano. Eliminare la riga non revoca una chiave esposta: ruotala o revocala e indaga. Il validatore non rileva tutti i segreti né ripulisce qualsiasi rapporto.
Un esempio concreto
La risposta illustra il formato atteso, non un audit della tua applicazione. Segui i passaggi e confronta file, test e risultati reali. Se l’assistente dice soltanto di aver finito, chiedi il risultato concreto, le prove e cosa resta da verificare.
Finding ID: finding-001; artifact: file-001; line: 1.
Status: needs-verification; owner: backend.
Action: investigate locally; rotate any genuinely exposed credential.
Do not include the credential value or raw scanner context in this response.L’obiettivo
Lo scanner trova candidati; l’IA aiuta a organizzare un piano verificato. Il laboratorio contiene un marcatore volutamente finto e cinque test del manifesto di passaggio. Non richiede credenziali reali.
1. Definire il perimetro
Estrai lo ZIP in una nuova cartella. Node.js 22 o successivo esegue il validatore offline. La scansione facoltativa richiede Gitleaks dalla fonte ufficiale; l’esercizio è stato verificato con 8.30.1. Non scandire cartelle estranee.
2. Eseguire il laboratorio locale
Esegui i test e controlla findings.redacted.json. Sono ammessi solo ID opachi, numero di riga ed etichette controllate. Campi Secret, metadati annidati e testo libero vengono rifiutati. Mantieni privata la corrispondenza tra file-001 e il file reale.
node --test lab.test.mjs
node lab.mjs findings.redacted.json3. Chiedere prove all’IA
Il primo prompt usa solo il manifesto verificato. Lo schema limita la condivisione, ma non garantisce che ogni rapporto sia privo di segreti. Controlla i dati prima di inviarli a un assistente esterno.
Act as an incident triage assistant. Use ONLY findings.redacted.json from this
training kit after its local validator passes. It contains opaque artifact IDs and
controlled categories, not actual secrets or file contents. Group findings by owner,
list verification questions and draft a remediation checklist. Keep hypotheses
separate from verified exposure. Never ask for a credential, raw scanner report or
private file. For a real exposure, plan revocation or rotation at the issuing
service before considering repository-history cleanup. Do not call a provider,
rotate a key, delete evidence or rewrite Git history.4. Verificare la correzione
Il secondo prompt prepara la risposta. Revoca o ruota un segreto reale esposto presso il servizio emittente. Eliminarlo dall’ultimo commit o aggiungere .gitignore non lo revoca. Coordina separatamente eventuali riscritture della cronologia.
Review my proposed secret-remediation plan using opaque finding IDs only. For each
verified exposure, identify the issuing service, dependent applications, replacement
rollout, revocation check and access-log review. Keep any history rewrite as a
separately approved, coordinated action. Check prevention with a secret manager,
scoped credentials and pre-commit or push protection where available. Report what is
still unverified. Do not include secret values or automatically change any
credential.5. Applicare al proprio progetto
Facoltativamente esegui Gitleaks in questo kit. La regola trova il marcatore finto in example.fake.env; un risultato produce normalmente codice 1. Mantieni il rapporto locale anche con --redact. Nel repository reale git esamina la cronologia e dir i file attuali. Il validatore non è uno scanner di segreti.
gitleaks dir --config .gitleaks.toml --redact --report-format json --report-path ../gitleaks-demo.json .Riferimenti ufficiali
Portalo nel tuo progetto
Scarica i file, conserva la guida o consegna al tuo assistente istruzioni pronte.
Prepara con l’IA
Copia questo prompt inglese nel tuo assistente. Include articolo, file disponibili e passaggi di preparazione.
Mostra il prompt di preparazione
Read this tutorial as reference material:
https://nethanelfitoussi.com/article/ai-secrets-gitleaks-workflow?lang=en
Goal: apply the documented workflow to my development project.
Read the existing project instructions, inspect the relevant files and explain the smallest useful setup.
Available starter files:
https://nethanelfitoussi.com/api/media/b2775ae9-4193-4493-bab9-3cdc0364381b.zip
Download and inspect these files in a temporary folder before using them. Do not overwrite existing project instructions.
If I have not supplied a project folder, ask which development project to use. Do not invent a repository URL.
Additional project setup instructions:
Use the downloaded starter lab in a NEW folder. Read README.md and both English prompts first. Run its dependency-free Node.js tests before editing.
Act as an incident triage assistant. Use ONLY findings.redacted.json from this
training kit after its local validator passes. It contains opaque artifact IDs and
controlled categories, not actual secrets or file contents. Group findings by owner,
list verification questions and draft a remediation checklist. Keep hypotheses
separate from verified exposure. Never ask for a credential, raw scanner report or
private file. For a real exposure, plan revocation or rotation at the issuing
service before considering repository-history cleanup. Do not call a provider,
rotate a key, delete evidence or rewrite Git history.
Review my proposed secret-remediation plan using opaque finding IDs only. For each
verified exposure, identify the issuing service, dependent applications, replacement
rollout, revocation check and access-log review. Keep any history rewrite as a
separately approved, coordinated action. Check prevention with a secret manager,
scoped credentials and pre-commit or push protection where available. Report what is
still unverified. Do not include secret values or automatically change any
credential.
Adapt example paths, commands and acceptance criteria to this repository rather than assuming they match.
Give me a short plan, then make the agreed local changes and run the relevant checks. Report actual results and anything not verified. Stop before credentials, paid services, production changes, push, merge or deployment.

