Torna al taccuino
IT & Security4 min di lettura

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.

Illustrative expected response
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.

Run the local exercise
node --test lab.test.mjs
node lab.mjs findings.redacted.json

3. 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.

English prompt: review with evidence
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.

English prompt: correction and verification
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.

Optional synthetic Gitleaks exercise
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
AI setup prompt · English
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.
GitleaksSecretsAICybersecurity