
PoC for CVE-2024-21513
PoC para CVE-2024-21513 Exploit original documentado pela Snyk Security Research
CVE-2024-21513 é uma vulnerabilidade no langchain-experimental onde resultados de consultas SQL não validados foram passados para eval() do Python, permitindo execução remota de código através de injeção de entrada baseada em SQL.
Este PoC é um aplicativo Flask muito básico com HTML inline onde os usuários podem inserir coordenadas em um banco de dados SQLite.
Se um usuário inserir um payload malicioso no valor y, um recurso vulnerável do LangChain-Experimental buscará o valor y baseado no valor x e passará o resultado para eval(), que faz com que seja executado.
Este PoC tem um LLM codificado que retorna a consulta SQL para encontrar onde x = 10.
.
├── Dockerfile
├── README.md
├── app
│ ├── db.py
│ ├── exploit.db
│ ├── llm.py
│ ├── main.py
│ └── requirements.txt
└── docker-compose.yml
Este exploit está containerizado para não impactar nada no seu ambiente de desenvolvimento real.
Presumo que você já tenha Docker e/ou Docker Compose instalados (certifique-se de que a configuração WSL2 está ativada no Docker se você estiver usando 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