研究者發現新型“影子攻擊”:可隱藏替換篡改PDF內容
據The Hacker News 2月23日報道,研究人員最新展示了一類新型PDF文檔攻擊,攻擊者可以在保證文檔數字簽名有效的前提下,進行隱藏、篡改或替換文檔內容等惡意操作,常見的操作有替換收款人、付款訂單或更改合同條款等。
該攻擊技術被德國波鴻魯爾大學的學者稱為“影子攻擊”,它的主要攻擊原理是“視圖層”概念,即在PDF文檔中重疊的不同內容集。它利用“PDF靈活的技術規范,使影子文件在標準合規范圍內運行”。

該研究結果2月22日在網絡和分布式系統安全研討會(NDSS)上發表。在測試的29個PDF閱讀器中,有16個易遭受影子攻擊-,包括Adobe Acrobat、Foxit Reader、Perfect PDF和Okular。
研究小組表示,該影子攻擊存在三種變體:
- 隱藏:攻擊者使用PDF規范中的增量更新功能隱藏某層內容。
- 替換:攻擊者使用PDF規范中的“交互式表單”功能將原始內容替換為修改后的內容。
- 隱藏和替換:攻擊者使用原始文檔中包含的第二個PDF文檔完全替換它。

在攻擊中,攻擊者會創建一個具有兩種不同內容的PDF文檔:一種是文檔簽署方所期望的內容,另一種是文檔簽署后才顯示隱藏內容。
“PDF的簽署者收到該文件后,會進行常規審核和簽署,”研究人員解釋,“攻擊者獲取簽署文件后稍加篡改并將其發送給受害者。受害者接收文檔后會檢查數字簽名是否被成功驗證,但受害者看到的是篡改后的內容。”
在模擬世界中,該攻擊相當于故意在紙質文檔中留下空位讓相關方簽署,而攻擊者可以在空位中插入任意內容。
研究小組補充,隱藏和替換是危害最大的變體攻擊,因為它可以替換整個文檔的內容。“攻擊者可以建立一個完整的影子文檔,影響每一頁的呈現內容,甚至影響頁面總頁數以及其中包含的每項內容的顯示。”
攻擊的關鍵是利用不會使簽名無效的PDF原生功能,比如允許對PDF進行修改的“增量更新”功能(如填寫表格)和“交互式表格”功能(如文本字段、單選按鈕等),將惡意內容隱藏在看似無害的覆蓋對象后面,或在簽署后直接替換原始內容。
簡單地說,這個想法是創建一種形式,它在簽署前后顯示相同的內容,但攻擊者篡改后會顯示一組完全不同的內容。
為了測試攻擊,研究人員發布了兩個新的開源工具PDF-Attacker和PDF-Detector。這兩個工具可以用來生成影子文件,并檢測文檔在簽署之前和修改之后的篡改。
這個影子攻擊利用的漏洞被追蹤編碼為CVE-2020-9592和CVE-2020-9596,Adobe在2020年5月12日發布的更新中解決了該威脅。但截至2020年12月17日,測試的29個PDF閱讀器中有11個仍然未修復。

據介紹,影子攻擊建立在研究人員2019年2月設計的同類威脅基礎上。當時,研究人員發現該類威脅可在保證簽名有效的前提下修改文檔,從而使偽造PDF文檔成為可能。
雖然此后廠商采取了安全措施修復該問題,但新的研究旨在擴展這一攻擊模型,以證實攻擊者能否在保證簽名有效的前提下,修改文檔的可見內容。
這并不是PDF安全問題第一次受到關注。研究人員此前已經展示了提取有密碼保護的PDF文檔的方法,利用PDF規范支持的部分加密技術,一旦用戶打開該文檔,就可以遠程滲出內容。
另外,研究人員上個月又發現了另一組影響PDF標準的11個漏洞(CVE-2020-28352至CVE-2020-28359以及CVE-2020-28410至CVE-2020-28412),這些漏洞可能導致拒絕訪問、信息泄露、數據操縱攻擊,甚至執行任意代碼。





























