Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
kavach-loop — Remediation delle vulnerabilità a ciclo chiuso: rilevamento -> riproduzione dell'exploit -> generazione della patch -> verifica con un proof harness. Esempio pratico: Langflow CVE-2026-33017 | Kitploit
Strumenti/GitHubGitHub/nsk-394/kavach-loop
Analisi StaticaScanner di VulnerabilitàSicurezza dei ContenitoriAnalisi delle VulnerabilitàAnalisi del CodiceExploitSfruttamento di Applicazioni WebVirtualizzazione per la SicurezzaDevSecOps
GitHubnsk-394/kavach-loop

kavach-loop

Remediation delle vulnerabilità a ciclo chiuso: rilevamento -> riproduzione dell'exploit -> generazione della patch -> verifica con un proof harness. Esempio pratico: Langflow CVE-2026-33017

8 giorni faNon ancora revisionato
Vedi Repository

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

kavach-loop

Una pipeline di remediation delle vulnerabilità a ciclo chiuso: rileva → riproduci l'exploit → genera una patch → verifica la patch contro un proof harness — prima che qualsiasi correzione venga considerata affidabile.

La maggior parte delle demo "l'AI corregge la tua CVE" si ferma alla generazione di una patch. kavach-loop si rifiuta di considerare affidabile una patch finché non ha dimostrato due cose contro un'istanza reale in esecuzione del software vulnerabile: (1) l'exploit originale non funziona più, e (2) l'applicazione continua a funzionare normalmente. L'esempio pratico è una CVE critica reale.

⚠️ Ambito e sicurezza: ogni modulo che interagisce con la rete è bloccato in modo rigido su localhost (127.0.0.1 / ::1) e rifiuta qualsiasi altro target. Il codice dell'exploit esiste per dimostrare che una patch funziona contro un container usa-e-getta che esegui tu stesso — non per attaccare nulla. Esegui questo strumento solo contro il target incluso.

Esempio pratico: CVE-2026-33017 (RCE in Langflow)

Esecuzione di codice remoto non autenticata in Langflow ≤ 1.8.2 — GHSA-vwmf-pq79-vjvx / NVD. POST /api/v1/build_public_tmp/{flow_id}/flow costruisce un flow pubblico senza autenticazione; il campo code del nodo fornito dall'attaccante raggiunge exec() senza sandbox, attraverso una catena di chiamate a sei salti dal route handler al sink.

Il ciclo

flowchart LR
    T["exploit_repro/<br/>disposable Langflow 1.8.2<br/>container (localhost only)"]
    D["detection/<br/>Semgrep rule over<br/>live-extracted source"]
    E["exploit_repro/exploit.py<br/>PoC: confirm RCE is real"]
    P["patch_gen/<br/>LLM unified diff,<br/>applied to a real copy"]
    V["proof_harness/verify.py<br/>exploit blocked? + app<br/>still works? → one verdict"]
    T --> D --> E --> P --> V
    V -->|fused confidence score| OUT["trusted / rejected"]
FaseModuloCosa fa realmente
Rilevamentodetection/detect.py + rules/unauthenticated-exec-sink.yamlEsegue un vero passaggio Semgrep sul codice sorgente prelevato in tempo reale dal container di destinazione. La regola segnala onestamente la precondizione rilevabile in modo affidabile (una route non autenticata che inoltra input strutturato dall'attaccante verso una chiamata a valle), non l'intera propagazione del taint a sei salti — e lo dichiara esplicitamente, con confidence: LOW, così ogni rilevamento necessita comunque di conferma.
Riproduzioneexploit_repro/exploit.pyPoC solo su localhost che conferma che l'RCE si attiva effettivamente, così stiamo correggendo un bug reale, non un'ipotesi di analisi statica.
Patchpatch_gen/generate.pyRecupera il codice sorgente reale e attuale della funzione vulnerabile dal container in esecuzione, ottiene 1–2 pattern di correzione di riferimento, chiede a un LLM un diff unificato, quindi lo applica a un secondo container usa e getta e lo riavvia affinché il codice corretto venga ricaricato.
Verificaproof_harness/verify.py + test_functionality.pyFonde due controlli in un unico verdetto: il PoC deve ora fallire, e la normale API REST autenticata di Langflow (health, version, whoami, CRUD dei flow) deve continuare a funzionare. Una patch che blocca l'exploit smontando l'applicazione viene rifiutata.

L'onestà è il punto centrale: la regola di rilevamento documenta esattamente cosa dimostra e cosa non dimostra, e il verificatore rifiuta di considerare buona una patch solo perché l'exploit ha smesso di funzionare.

Eseguirlo

pip install -r requirements.txt           # requests, pytest, openai, semgrep
export OPENAI_API_KEY=...                  # for patch_gen

cd exploit_repro/langflow-cve-2026-33017
docker compose up -d                       # vulnerable target on 127.0.0.1:7860
curl -s http://127.0.0.1:7860/health

cd ../..
python detection/detect.py                 # static-analysis finding
python exploit_repro/exploit.py            # confirm the RCE (localhost only)
python patch_gen/generate.py               # generate + apply + verify a patch
pytest proof_harness/                       # functionality smoke tests

Arresta e cancella: docker compose down -v.

Stato

Le singole fasi (rilevamento, riproduzione dell'exploit, generazione della patch, harness di verifica) sono implementate ed eseguite contro il target reale. main.py è uno scheletro di orchestrazione minimale — al momento le fasi vengono pilotate direttamente come mostrato sopra. Collegarle in un'unica chiamata main() è il passo successivo.

Perché "kavach"

Kavach (कवच) in sanscrito significa "armatura". Il ciclo è l'armatura: nulla viene rilasciato finché non è stato attaccato e non è stato dimostrato che resiste.

Scarica lo strumento