Por que um PDF tem scripts
O PDF suporta JavaScript desde o Acrobat 3. É o que faz um formulário somar uma coluna, rejeitar uma data mal escrita ou desabilitar um campo até que uma caixa seja marcada. É também o que torna um PDF malicioso digno de ser enviado.
A maioria das ferramentas que dizem detectar JavaScript em PDF olha só /Names /JavaScript. Esse é o repositório de nível de documento e, num formulário corporativo real, costuma estar vazio. O código interessante está ligado a campos específicos.
Todos os lugares onde procura
/Names /JavaScript— a árvore de nomes de nível de documento. É uma árvore, não uma lista: quem lê apenas o vetor raiz não acha nada num arquivo com muitos scripts./OpenAction— roda no instante em que o documento abre, antes de você ler uma palavra.- Ações adicionais de documento — antes de fechar, antes e depois de salvar, antes e depois de imprimir.
- Ações de página — ao abrir e ao fechar a página.
- Ações de anotação — a ação
/Ade um link ou botão, além de entrada e saída do mouse, pressionar, soltar, foco e perda de foco. - Ações de campo de formulário — digitação, formatação, validação e cálculo. É aqui que fica o código de qualquer formulário que faça alguma coisa.
/AcroForm /CO— a ordem de cálculo, que decide qual de dois totais dependentes vence.
Cadeias de ação por /Next são seguidas, porque quem para no primeiro elo lê a parte inofensiva e perde o repasse.
Observações, não veredictos
Chamadas como app.launchURL, this.submitForm, this.exportDataObject, Net.HTTP, eval e longas sequências de escapes \uNNNN são sinalizadas como motivos para ler o script. Nenhuma delas prova nada: um formulário de despesas legítimo chama submitForm e um modelo legítimo chama util.printf. A marca diz onde olhar.
Nada é executado
Os scripts são lidos do grafo de objetos como texto e exibidos. Nunca são avaliados, injetados na página ou buscados na rede. Copie um, salve como .js, ou leve todos em um ZIP com um relatório JSON.
Privacidade
O arquivo é analisado inteiramente no seu navegador e nunca é enviado — o que importa quando o arquivo em análise é justamente um em que você não confia.
Tiny Online Tools







