圖片來源: 

iThome

在這次XcodeGhost事件發生後,有許多資安公司第一時間就分析相關的惡意程式碼,可以歸納出帶來的的風險大致可以分成下列幾種,包括:資料蒐集外洩的風險、中繼站的風險、惡意函式和植入惡意程式的風險,以及遠端遙控攻擊風險。

新增惡意函式庫,並在範本檔植入惡意程式,連開發者也不自知

南臺灣最大行動開發研討會MOPCON副總召莊志鴻(網路暱稱Mikimoto)表示,從揭露的資訊中發現,山寨版蘋果開發工具XcodeGhost加入了一個蘋果官方Xcode所沒有的CoreServices函式庫,這個函式庫本身是隱藏在開發工具的描述檔,一般程式開發者在撰寫程式時,並不會呼叫這個描述檔,直到需要進行編譯成可以執行的程式時,才會呼叫開發工具的描述檔並編譯到可執行的程式中。「這也是,為什麼許多有經驗的蘋果開發者,都難以察覺的關鍵原因之一。」莊志鴻說。

XcodeGhost新增的惡意CoreServices函式庫,主要會收集許多未經當事人同意便逕自蒐集的資訊,包括一些iPhone手機和App的基本信息,例如:應用程式名稱、每個App專屬的Bundle ID、當下時間、設備名稱、設備類型、系統版本、語言和國家,甚至也會蒐集包括每一個被感染App的執行狀態,像是Launch、Running、Suspend、Terminate、ResignActive、AlertView等資訊。莊志鴻表示,這樣的資訊蒐集並沒有因為蘋果手機是否有越獄(JB)破解而有所不同,風險不在於手機,而在於安裝的App是否為受到感染的惡意App。

App跨界交流協會、日傑資訊App開發顧問江鍾權則認為,這種隱私被侵犯的行為,令人感到極度不舒服,更何況,「大家為什麼會相信,出面宣稱是作者的道歉聲明,就是真實的呢?」他說。

根據烏雲漏洞揭露平臺的文件資訊,XcodeGhost除了新增原本不存在的惡意CoreServices函式庫外,也修改蘋果開發者經常使用UIWindow範本檔底層程式,莊志鴻表示,多數開發者都不會意識到,有人會修改這個範本檔。他表示,每一個iOS的App中,都會有一個顯示畫面的最外層框架,所有的App包括可視覺化的元件,都會放置在UIWindow中,若是開發一般的App,多數開發者幾乎都是直接使用UIWindow範本檔的程式碼,但若是一些手機遊戲開發者,因為會針對遊戲畫面的外框做不一樣的設計,幾乎都會直接修改UIWindow的程式碼。

根據烏雲漏洞揭露平臺知識庫的文章,XcodeGhost將惡意程式植入在UIWindow的位置,因為這是一個自動生成App框架的範本檔,當惡意App被啟動時,所顯示的第一個畫面若是採用範本檔的程式碼,就意味著惡意程式已經執行。

中國百度安全實驗室宣稱, 遊戲開發引擎Un i ty3D也中招, 出現和XcodeGhost一樣的竊取隱私資料,以及推送廣告惡意行為,只不過,命令與控制伺服器的網址改成「init.iclouddiagnostics.com」顯示,因此,遊戲開發者也必須注意開發工具的安全性。

開發工具內建中繼站網址,而這有可能是資安威脅的源頭

只有蒐集資料甚至只在本機端蒐集資料,並不會對使用者造成危害,但是,莊志鴻認為,關鍵在於XcodeGhost所蒐集到的這些資訊,會利用DES加密機制,回傳到作者設立在亞馬遜EC2雲端平臺上的3個命令與控制伺服器(簡稱中繼站),包括:init.icloud-analysis.com、init.crash-analytics.com和init.iclouddiagnostics.com,而開發工具也內建一個行動廣告服務平臺。

莊志鴻指出,這個中繼站是所有資安威脅的源頭,當手機安裝的App都會受到控制,聽命連線到這些中繼站時,駭客就可以利用中繼站,對回報的App下達指令,不論是安裝惡意程式、竊取資料或者是連線到其他網址,下載其他的App等,在當事人不知情的情況下所做的各種行為,百分之百都是惡意的行為。

臺灣趨勢科技資安顧問簡勝財表示,從XcodeGhost上傳GitHub的原始碼中則發現,山寨版蘋果開發工具也夾帶推廣App功能,一旦安裝受感染App的蘋果手機,就可以接收駭客命令到AppStore下載其他的App,而這樣的App下載並不需要當事人同意。

日前宣稱是XcodeGhost作者已經關閉這些中繼站,但是,簡勝財表示,這些受感染App仍會持續連線回原先的中繼站,只要有心人透過竄改DNS的方式,讓原本連回已經關閉中繼站的裝置,改連假冒的網站,駭客就可以進而控制這些App下令做壞事。

彈出視窗無法取得iCloud密碼,URL Scheme潛藏遠端遙控風險

根據資安公司Palo Alto Networks的研究報告,原先推論如果XcodeGhost可以彈出視窗,就可以透過更改對話框的文字,並利用釣魚的手法,竊取到使用者的iCloud密碼;但後來該公司重新檢視受XcodeGhost感染的App程式碼發現,目前這些惡意App並沒有更改對話框的預設值,所以,現階段這些彈出的視窗並沒有被竄改之虞,但是,「如果XcodeGhost作者決定更改彈出視窗的對話框內容時,只需要做少數修改就可以達到這個目的。」Palo Alto強調。

以往,在iOS的App如果需要顯示一個對話框,必須透過使用UIAlertView分類中的 alertViewStyle去顯示特定對話框內容,若需要建立一個輸入密碼的對話框,就需要使用UIAlertViewStyleLoginAndPasswordInput指令,若沒有輸入任何數值,對話框就只是一個訊息的提示畫面而已。目前沒有發現受到XcodeGhost感染的App,有這樣的跡象。

烏雲漏洞平臺表示,目前發現的惡意程式中,有一個可以取得後設資料加以分析的OpenURL遠端遙控模組,先透過canOpenURL獲取設備上定義的URLScheme訊息,再透過伺服器上的URLScheme功能,就可以允許使用者使用客製化的App去開啟另外一個App。那就意味著,透過URL Scheme的方式,只要可以取得受感染惡意App的足夠權限,就可以執行一些未經使用者允許的行為,例如撥打電話、發送簡訊、開啟其他App、發送郵件、獲取剪貼簿訊息、開啟網頁等等。

即使是裝置程式資訊,在實名制社會都具有很大行銷價值

這次XcodeGhost所蒐集的資料,偏重在應用程式資訊和裝置資訊,有些資安專家認為,和一般App作者所蒐集的內容大同小異,因為沒有涉及個人資訊,加上宣稱是XcodeGhost作者已經關閉釣魚網站,也沒有啟用廣告服務,原始碼也上傳GitHub公開,整個災害控管到此暫告一個段落。

對開發者而言,記錄時間、IP位址和程式狀態等都是隱私資訊,但專精廣告設計行銷的Design Plus社群創辦人莊琬婷(網路暱稱Donna)則表示,對於廣告商或行銷媒體公司而言,如果可以得知在某一個IP網段中,這些使用者安裝哪些App,也知道這些App的使用頻率、執行App的時段等,對於有投放各種廣告需求的公司都有一定的吸引力,XcodeGhost所蒐集的這些資訊,都是可以賣錢的關鍵資訊。

莊琬婷表示,XcodeGhost所感染的惡意程式能蒐集資訊,其實是一種能間接拼湊使用者個人行為檔案(Profile)的方式,若能夠搭配使用者對每一個受感染App的啟動執行時間,不僅各種廣告投放可以更精準,在使用者啟動該App的時段進行投放廣告外,也是一種很好的行銷洗腦手法,例如,某個鎖定金融服務的App,廣告業者希望能塑造某個新產品的第一印象,可以在使用者啟動該App服務時,以廣告投放方式「洗腦」使用者的品牌印象,或許不是短時間立即見效,但這卻是廣告行銷活動中常見的手法。

另外, 以蘋果揭露前2 5 大受到XcodeGhost感染的App中,數量最多的仍是手機遊戲類的App為主。

莊琬婷表示,透過遊戲所蒐集到的個人行為分析資訊,其實是最精準的內容,因為,一個手機遊戲可以呈現最多樣性資訊,光是從取名、人物選擇、是否會針對遊戲消費等,都可以描繪這個使用者的基本輪廓,若加上從各種活動、購物所累積的做決策時間長短,也可以推論這個使用者,是偏向保守型或衝動型的人格特質,對於各種廣告和媒體公司而言,這些資訊都非常的寶貴且難以取得。

了解行動廣告業務運作型態的東森信息科技大數據顧問趙國仁則表示,XcodeGhost蒐集的資訊如果有隱藏,之後可能拿到未來可以再進入的後門或密碼;如果廣告行銷公司可以拿到iAd (廣告代碼)以及使用者興趣(安裝的App列表,或是使用頻率等),就可以做精準投放;甚至於,還可以讓這些受到山寨開發工具感染的惡意App,執行付款訂閱或購買某些App、產品或服務等。

 

【相關報導請參考【iThome資安事件簿1】解讀XcodeGhost風暴

熱門新聞

Advertisement