
Ricerca sulla vulnerabilità CVE-2024-3094.
Questo repository contiene i risultati dell'analisi della vulnerabilità critica CVE-2024-3094 (backdoor nella libreria liblzma del pacchetto xz-utils, che porta a RCE tramite il processo OpenSSH).
Nell'ambito del progetto è stato preparato un ambiente di test isolato, sviluppato un modello di minaccia e scritti controlli automatici.
Dockerfile — Script di build dell'ambiente (Debian Bookworm) con tutte le dipendenze (OpenSSH, Python 3, venv, pytest, pwntools).tests/ — Directory con i test automatici (pytest):
test_vulnerability.py / tests_vulnerability.py — test di integrazione delle funzionalità SSH e test Mock per verificare il comportamento del sistema di rilevamento della backdoor.exploit/ — Script Proof of Concept (PoC) per emulare l'attacco.docs/ — Modello di minaccia (Threat Model) in formato Markdown e grafi.reports/ — Report sui risultati dell'analisi statica/dinamica.Tutti i test e le ricerche vengono eseguiti in un contenitore Docker isolato, per non mettere a rischio il sistema host.
L'immagine installa il server SSH (con password root:screencast) e configura l'ambiente virtuale Python con tutte le librerie necessarie.
docker build -t cveanalysis:20243094 .
Il contenitore viene avviato in modalità background. La porta SSH interna (22) viene inoltrata alla porta 2222 della macchina host.
docker run -d -p 2222:22 --name cve-test cveanalysis:20243094
Per eseguire tutti i file di test (test_vulnerability.py e tests_vulnerability.py), esegui il comando dalla tua macchina host:
docker exec -it cve-test pytest -v tests/*
Cosa verificano i test:
root:screencast).Se vuoi testare gli script dalla cartella exploit/ (o connetterti via SSH manualmente) dalla tua macchina host, usa la porta inoltrata 2222:
# Пример ручного входа
ssh [email protected] -p 2222
# Пароль: screencast
# Пример запуска вашего PoC скрипта (если он требует внешнего запуска)
python3 exploit/PoC.py 127.0.0.1
Dopo aver completato l'analisi, ferma ed elimina il contenitore di test:
docker stop cve-test
docker rm cve-test