OpenOffice 漏洞使使用者面臨程式碼執行攻擊,修復仍在測試階段

2021-09-22 13:00:20
Apache OpenOffice 中的一個緩衝區溢位漏洞可讓攻擊者通過使用惡意檔案在目標裝置上執行任意程式碼。

該漏洞被追蹤為 ,由 GovTech Singapore Cyber Security Group 的安全研究員 Eugene Lim 發現,該漏洞影響到 OpenOffice 4.1.10 之前的所有版本,目前僅有 4.1.11 測試版中部署了。考慮到 OpenOffice 已有數億次的下載,這意味著在全球範圍內目前有眾多使用者受到該漏洞的影響,OpenOffice 最後一次正式更新是在今年 5 月。

安全研究員 Eugene Lim 表示,該問題是在研究解析 .dbf 檔案格式的軟體中的潛在安全漏洞時所發現的。

OpenOffice 上的問題是一個緩衝區溢位,它的存在基本上是因為 DBF 檔案的緩衝區大小是由 header 中的 fieldLength 或 fieldType 決定的。因此,如果在分配緩衝區時信任其中一個,而在複製到該緩衝區時信任另一個,就可能引發溢位。

但是,由於 OpenOffice 有諸如 ASLR 和 DEP 等保護措施,對於一個返回導向程式設計(ROP)鏈來說,也需要繞過這些保護。

不過,通過研究人員的進一步的分析顯示,OpenOffice 套件中的 libxml2 模組在編譯時沒有使用 DEP 或 ASLR 保護,研究人員最終能夠使用一個特製的 .dbf 檔案來利用這個漏洞。

OpenOffice 是一個開源的應用程式,這意味著它可能被許多程式碼分析器和安全研究人員掃描過,但這個問題此前一直沒有被發現。之所以這麼久都沒有發現該漏洞,Eugene Lim 表示,這是因為 LGTM 等掃描器通常只查詢分析套件中的 Python 和 JavaScript 程式碼,而沒有檢查 C++ 程式碼,而該漏洞就在那裡。

這表明了自動化靜態分析工具的重要性;如果你的工具不知道程式碼的存在,它就無法發現這些漏洞。

這位安全研究員在 5 月份報告了這個漏洞,Apache 已在 GitHub 上更新了 OpenOffice 的原始碼,但目前僅在測試版中更新了修補程式,暫時還沒有在穩定版本中提供。

展開閱讀全文