
PoC per CVE-2024-21513
PoC per CVE-2024-21513 Exploit originale documentato da Snyk Security Research
CVE-2024-21513 è una vulnerabilità in langchain-experimental in cui risultati di query SQL non validati venivano passati a eval() di Python, consentendo l'esecuzione di codice remoto tramite injection di input basata su SQL.
Questo PoC è una semplicissima app Flask con HTML inline in cui gli utenti possono inserire coordinate in un database SQLite.
Se un utente inserisce un payload malevolo nel valore y, una funzionalità vulnerabile di LangChain-Experimental recupererà il valore y basandosi sul valore x e passerà il risultato a eval(), che ne causa l'esecuzione.
Questo PoC ha un LLM hard-coded che restituisce la query SQL per trovare dove x = 10.
.
├── Dockerfile
├── README.md
├── app
│ ├── db.py
│ ├── exploit.db
│ ├── llm.py
│ ├── main.py
│ └── requirements.txt
└── docker-compose.yml
Questo exploit è containerizzato in modo da non avere impatto sul tuo ambiente di sviluppo reale.
Presumo che tu abbia già Docker e/o Docker Compose installati (assicurati che la configurazione WSL2 sia attiva in Docker se usi WSL)
git clone https://github.com/nskath/CVE-2024-21513cd CVE-2024-21513docker-compose up --buildlocalhost:5000 (127.0.0.1:5000)https://github.com/user-attachments/assets/7ad27115-411a-467f-b649-2b3508b6f5df