行動App應用正持續蓬勃發展,但企業對於App資安重視程度,須要再加強,尤其傳統程式開發在功能優先的導向之下,很容易忽略安全防護的管控要求。

近年,許多App可能都存在不同程度的安全防護問題,從2017年9月起,臺灣金管會也已經開始要求銀行業者,須委託專業機構對現行所有App進行全面安全檢測。近日舉行的2018臺灣資安大會上,果核數位資安顧問連振道,也分析了他們所研究的App受駭資安問題,並且藉由App安全分析實例,進一步說明App安全防護要做到的程度。

要認識駭客攻擊方式,了解過程才能因應

首先,連振道以遊戲與金融業為例,來闡述App安全分析的研究與結果。像是市面上當紅的「旅行青蛙」遊戲App就是一例,該遊戲主要是以C#程式語言開發,他們透過ILSpy反編譯工具後,發現其中的程式碼,竟然完全沒有任何保護,有心人士可以輕易修改中文介面或重要函數,因此在市面上,也存在許多偽冒的問題。

重視安全的金融業,他們的銀行App也有不足之處。連振道表示,有些國外銀行的App已經包含了防護機制,像是偵測到手機被取得root最高管理權限的情況時就無法開啟,本身也採用程式碼混淆來保護。但分析過程中還是可找到偵測Root的判斷式,透過修改Java程式碼中,偵測root機制的回傳值,就可以繞過防禦機制。

而一旦裝置有root權限後,就可以進行系統級操作,加上許多外掛也都是需要root權限才能使用,App就會有很大的風險。

銀行App不夠安全會有什麼嚴重後果?已有實際案例證明,像是2015年有南韓網路銀行App用戶,遭偷走數百萬美元。而果核的團隊也對此攻擊手法深入研究,發現使用者手機被動態注入惡意程式碼,該惡意程式平時沒有惡意行為,只會在執行某些App時觸發,帶來的危害是密碼側錄,以及轉帳交易竄改,可讓用戶在操作轉帳時,卻是轉到另一個銀行帳戶。

做好App安全防護,可從四大防護面向著手

在上述這些案例中,連振道整理出駭客攻擊App的兩種方式。

首先,駭客會分析該款App是否可以反編譯,接下來若可看到原始碼、破解修改,將能發布重新封裝修改的App,以欺騙使用者造成傷害。

如果App無法反編譯,駭客會分析是否可以監測記憶體,從動態監測到執行動態注入惡意程式碼,之後再透過簡訊等方式來感染使用者裝置,竊取重要資料。

從這些攻擊手法來看,App安全防護要如何進行?簡單來說,在App安全防護上,保護項目可簡單分成6大類,分別是:原始碼保護、完整性校驗、防記憶體修改、儲存資料加密綁定、SO檔保護與HTML檔保護。

連振道認為,具體方式可針對4大層面強化:一、應防止逆向工程阻止反編譯,像是利用加密方式完全隱藏原始碼,並強調加密金鑰需使用白箱加密保護。二、需阻擋Debugger,防記憶體被修改,目的是讓Debugger工具失效,避免動態程式碼注入攻擊。三、要做完整性校驗。例如計算Hash值,只要被修改就閃退,防止APK被竄改和散布。四、做好敏感資料加密及綁定,針對App敏感性資料作完整加密,以及客制化檔案加密保護。

App安全防護要如何實作?連振道給出4大具體方向,包括向是防止逆向工程阻止反編譯,阻擋Debugger以防記憶體被修改,完整性校驗,以及敏感資料加密及綁定,才能為App本身帶來足夠的安全。

另外,從一般App上線流程來看,連振道也具體指出各階段可對應的資安措施。例如:

●App開發期,需做好原始碼審查(Code review),降低開發程式語言的邏輯漏洞,同時也要針對傳輸部分進行加密,降低中間人攻擊威脅。

●App內部測試期,企業透過專業機構和法規,應提供App至檢測實驗室做驗證。

●App上架期,則是考慮App相容性與安全性,這裡的安全性是指透過保護工具,防止App被破解或是攻擊。

●App正式對外服務,伺服器端需做好滲透測試、弱點掃描,降低伺服器端被攻擊的風險,並要具備主動式監測系統。

在一般業界通用的APP上線流程中,連振道說,每個階段也都有對應的資安措施可以施行,其中簡報上黃色部分就是安全公司可以做的。

連振道提醒,想要提升App本身的安全性,重點在於要了解侵入過程,才能知道怎麼因應,並瞭解App需做到的安全防護面向。而要有效防止駭客攻擊,就必須將破解門檻變高,才會讓對方放棄攻擊,否則駭客可以很輕易地看到原始碼,任意動態追蹤,或是看光未加密的敏感資料、SO檔與APK內含資源檔。

另外,對於App安全分析,連振道也簡單介紹相關需求條件,讓企業相關負責人員能夠多瞭解,例如具備邏輯分析能力,以及懂得一些程式預言、中間語言與組合語言。對於逆向分析工具及輔助工具的使用,也很重要,可以幫助加速分析App。像是Android逆向助手,JD-GUI、ILSpy+Reflexil、IDA-Pro等,都是常見的逆向分析工具,還有像是Root手機或手機模擬器,搭配Dalvik Bytecode Editor、rootexplore、HxD HEX Editor等。

熱門新聞

Advertisement