[英]How to find Java Script in PDF document in .NET Core?
我需要在服務器端(.NET Core)實現檢查 PDF 文檔是否存在 Java 腳本的能力。 如果那里有腳本,那么我需要通知用戶。 是否可以在不使用付費圖書館的情況下做到這一點? 我將不勝感激任何想法。
跨平台 poppler utils 是最簡單易用的,不保證任何手段都會發現故意遮擋 JavaScript
pdfinfo -js filename.pdf
將 output 作為純文本嵌入任何標准 JavaScript,因此如果文本看起來模糊不清,您可以預先警告有異常。
帶有普通/JavaScript
條目的常見 PDF 將通過簡單的純文本搜索顯示。
對於可疑或壓縮的文件對象,一個簡單的擴展是使用 pdf 解壓縮器(如果需要將任何內容顯示為純文本,則必須解壓縮內部流)和文本搜索/JavaScript
標記,例如:-
<</S/JavaScript/JS(\n\r\n\r\n// T
然而,一篇關於 PDF 漏洞利用的文章可以合法地包含此文本Td [(/JavaScript)]TJ
並且 JS 很容易在運行時進行自我編輯,因此不會以這種簡單的方式檢測到/JavaScr##69pt
您可能會發現感興趣的第 4 頁https://web.archive.org/web/20150421225342if_/http://cs.gmu.edu:80/~astavrou/research/Daiping_dsn14.pdf
對於具有可變答案的類似問題(針對 PHP),請參閱Find malicious PDF files using PHP validation?
使用 PDFsharp 和 MigraDoc,可以免費使用,因為它是開源的 ( http://www.pdfsharp.net/Licensing.ashx )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.