
Un semplice POC del CVE-2025-53367 che crea un file .djvu il quale provoca una scrittura OOB nell'heap.
Questo progetto fornisce un'implementazione minima in C++ che innesca una nota vulnerabilità di scrittura heap out-of-bounds in DjVuLibre. Il codice non armalizza il bug; riproduce solo il percorso di esecuzione difettoso in modo che il problema possa essere ispezionato e compreso.
La vulnerabilità ha origine nel parser per i chunk di immagine codificati MMR. Durante l'elaborazione, la funzione MMRDecoder::scanruns decodifica le run orizzontali in un buffer di linea senza eseguire sufficienti controlli dei limiti. Utilizzando run orizzontali consecutive di lunghezza 0, è possibile causare un buffer overflow, portando a una scrittura OOB.
Questa implementazione è stata sviluppata come parte del progetto finale per il corso di Network Security presso la National Yang Ming Chiao Tung University (NYCU) a Hsinchu, Taiwan. L'attenzione è sulla comprensione di come la logica di parsing, le assunzioni non verificate sui buffer e i dati immagine malformati possano combinarsi per produrre fallimenti di memory-safety in librerie reali.
Vedi il documento BUILDING.
Vedi il documento CONTRIBUTING.