
Prova di concetto per CVE-2020-9715, un use-after-free nel motore EScript di Adobe Acrobat Reader DC. Genera un PDF che attiva il pattern della vulnerabilità per la validazione del rilevamento EDR. Nessun payload weaponizzato incluso.
Use-after-free nella cache ESObject di EScript.api di Adobe Acrobat Reader DC. Solo per test EDR autorizzati del red team.
Adobe Acrobat Reader DC <= 2020.009.20063. Il motore EScript memorizza nella cache oggetti ESObject con chiavi che preservano la codifica originale (ANSI o Unicode). L'eliminazione costruisce sempre chiavi Unicode, quindi le voci con nome ANSI non vengono mai rimosse dalla cache. Dopo che il GC libera l'oggetto sottostante, la voce cache obsoleta diventa un puntatore dangling (dangling pointer).
OpenAction accede a dataObjects per popolare la cache ESObjectArrayBuffer per reclamare la memoria liberataQuesto PoC innesca il pattern della vulnerabilità ma non include un payload weaponizzato (nessun shellcode, nessuna catena ROP). È progettato per verificare se il tuo EDR rileva la tecnica di sfruttamento.
python generate_poc.py # Generates CVE-2020-9715.pdf
python generate_poc.py -o custom.pdf # Custom output path
Nessuna dipendenza esterna — utilizza solo la libreria standard di Python.
Il tuo EDR dovrebbe basarsi su uno o più dei seguenti:
ArrayBuffer)dataObjects seguito da GC forzato e riaccesso (pattern UAF)OpenAction + EmbeddedFiles + JavaScriptCorretto in APSB20-48 (agosto 2020).