javascript 如何在.NET核心中找到PDF文档中的Java脚本?

2izufjch  于 2023-01-01  发布在  Java
关注(0)|答案(1)|浏览(121)

我需要在服务器端实现(.NET核心)的能力,检查Java脚本的存在PDF文档。如果有一个脚本存在,那么我需要通知它的用户。有没有可能做到这一点,而不使用付费图书馆?我将不胜感激的任何想法。

pqwbnv8z

pqwbnv8z1#

跨平台的poppler utils是最简单易用的,不能保证任何手段都会发现故意遮挡的JavaScript

pdfinfo -js filename.pdf

将以纯文本形式输出任何标准的嵌入式JavaScript,因此如果文本看起来模糊,您可以提前得到警告。

包含普通/JavaScript条目的常见PDF将通过简单的纯文本搜索显示。

对于可疑或压缩文件对象,一个简单的扩展是使用pdf解压缩程序(如果需要将任何内容显示为纯文本,则必须解压缩内部流)和/JavaScript标记的文本搜索,例如:-

<</S/JavaScript/JS(\n\r\n\r\n// T

然而,一篇关于PDF利用的文章可能合法地包含此文本
Td [(/JavaScript)]TJ
而且JS很容易在运行时进行自编辑,因此不会以/JavaScr##69pt这样简单的方式检测到
您可能会对https://web.archive.org/web/20150421225342if_/http://cs.gmu.edu:80/~astavrou/research/Daiping_dsn14.pdf的第4页感兴趣
对于答案不同的类似问题(针对PHP),请参见Find malicious PDF files using PHP validation?

相关问题