以協助執行監控任務,出售間諜程式給各國政府與執法單位而備受爭議的Hacking Team公司,近日遭到攻擊,總量近400GB的公司內部文件與資料被公開。曾表示不跟極權國家做生意,以販售號稱合法攔截通訊工具給政府和執法機構的義大利公司Hacking Team, 始終沒有正式公布與他們合作單位的名單,在此次洩露的文件中,包含了Hacking Team的客戶資料、財務文件、合約、內部E-mail郵件,根據International Business Time報導,使用其提供的程式的國家包含:
埃及、依索比亞、摩洛哥、奈及利亞、蘇丹、智利、哥倫比亞、厄瓜多、洪都拉斯、墨西哥、巴拿馬、美國、亞塞拜然、哈薩克斯坦、馬來西亞、蒙古、新加坡、韓國、泰國、烏茲別克斯坦、越南、澳大利亞、賽普勒斯、捷克、德國、匈牙利、義大利、盧森堡、波蘭、俄羅斯、西班牙、瑞士、巴林、阿曼、沙烏地阿拉伯、阿拉伯聯合大公國。
趨勢科技在這些檔案中發現了Hacking Team所開發的攻擊工具,目前發現的3款攻擊程式中,有兩款鎖定Flash Player的安全漏洞,一款鎖定Windows核心漏洞,且當中只有一個Flash漏洞曾被揭露。
另一款Flash零時差漏洞被Hacking Team描述為「最近4年來最完美的Flash漏洞」。在文件中發現了針對此一漏洞概念性驗證攻擊程式,它會影響各大瀏覽器及Flash Player 9以後的版本,包含最新的Adobe Flash 18.0.0.194在內。
事實上這個Flash漏洞,先前已經有幾個漏洞使用這種 valueOf 伎倆,包括被用在 Pwn2Own 2015的 CVE-2015-0349。
圖1、Hacking Team對漏洞的描述
Adobe Flash Player漏洞資訊
外洩的資料中包含一個可以啟動Windows計算機的Flash零時差概念證明碼(POC)以及一個帶有真正攻擊shellcode的正式版本。
在POC中有一個說明文件詳述了這個零時差漏洞(如下圖所示)。它指出該漏洞可以影響Adobe Flash Player 9及更新的版本,而且桌面/Metro版本的IE、Chrome、Firefox和Safari都會受到影響。外部報告指出最新版本的Adobe Flash(版本18.0.0.194)也受到影響。
圖2、Hacking Team對漏洞的描述
Adobe 也承認了這項漏洞並發布了安全公告。這份安全公告證實此漏洞已列入 CVE 資料庫當中,編號為 CVE-2015-5119。Adobe 安全公告更確認今日「所有」使用中的 Flash Player 版本都存在這項漏洞。
所有 Flash Player 使用者皆應立即下載最新修正程式,否則將有危險。Adobe 已經釋出修正程式APSB15-16,強烈建議盡更新。本月稍早我們即指出 Flash Player 遭漏洞攻擊套件鎖定的頻率越來越高,而這樣的趨勢似乎沒有轉變的跡象。
根本原因分析
說明文件還介紹了該漏洞的根本原因。這是一個ByteArray類別的Use-After-Free(UAF)漏洞:
- 當你有一個ByteArray物件ba,並將其給值ba[0]=Object,它會呼叫此物件的valueOf函數
- 這valueOf函數可以被覆寫,所以能夠變更物件valueOf函數中的ba值
- 如果你重新分配valueOf函數內的ba記憶體,就會導致UAF,因為ba[0]=Object會儲存原本的記憶體,並且在valueOf函數被呼叫後使用。