注意!行動裝置App資安檢測最需要注意「防記憶體偵測」技術!
大多數的行動裝置Mobile App開發者都專注的在Mobile App的內容專業開發上,對於Mobile App的安全防禦認知上,獲得資訊不是那麼容易,以目前較為工程師熟知的方式,通常都是採混淆原始碼的方式來進行Mobile App的保護,但混淆功用只是在原始碼的字串或是函數命名的部分,加入很多無意義的變數字(0,0,0,0,1,1,1,1,00,11,01,10)或是將檔案架構組織扁平化,增加駭客反編譯時解析Mobile App的難度。但對於厲害的駭客,是不需要解析原始碼,而是直接透過工具來偵測記憶體動態事件,就可以透過了解每一個事件的起點和終點,而使用Hook的方式來進行竄改和置換。
透過實際案例,更瞭解行動裝置App的資訊安全:
過去我們在NB或是PC上打開一個文件程式要使用時,這個程式(Application)開始執行的時候,就是在NB或PC上的記憶體來進行使用,而各平台Mobile App執行的原理其實也是一樣;當我們使用手指頭按下手機螢幕上的Mobile App的icon後,Mobile App的程式碼就開始在手機的記憶體上開始運行,透過手機螢幕提供使用者需要的功能和資訊。
但無論Mobile App的原始碼,是使用高強度的混淆或是高強度的加密來做保護,Mobile App在記憶體上執行的那一剎那,所有的保護效果都會解開,赤裸裸的在記憶體上開始運行。而駭客就可以透過這個空檔,開始監測使用者的手機記憶體,獲得Mobile App詳盡的動態事件,進而使用Hook方式做任何想修改的事情。所以Mobile App最重要的防禦真的不在原始碼的混淆或加密保護,而是那個容易被忽略的防止記憶體偵測的功能。
根據果核數位的資安團隊,針對國內前20大金融單位,現行Google Play架上金融App(網路銀行)做實際白帽Debugger測試統計,有高達6成的金融單位,防止記憶體偵測功能是失效或是可被Debugger工具監測到動態事件,這很有可能將在未來成為駭客攻擊入侵的一大隱憂。
瞭解更多:手機App資訊安全服務
記憶體偵測工具Debugger使用說明:
Debugger亦稱除錯程式,指一種用於偵錯其它程式的電腦程式及工具,它是能夠讓程式碼在指令組模擬器(ISS)中可以檢查運行狀況以及選擇性地運行,以便排除程式撰寫的各種可能錯誤。簡單來說,就是拿來開發除錯使用,也因為極為方便,所以廣為開發者使用。但也因為這樣,開發者用來除錯,駭客卻用來做動態事件的監測,去了解Mobile App觸發事件和後臺處理邏輯,進而找到竄改和攻擊的機會。
Hook攻擊(附掛攻擊)因應而生:
由於駭客可以透過Debugger工具,輕易了解Mobile App觸發事件和後臺邏輯處理,就可以根據事件流程一步步地向下執行,在事件傳送到終點前攔截並監控事件的傳輸,它就像鈎子鈎上事件一樣,當附掛成功時,駭客可以進行一些特定事件的修改,例如將轉帳對象由A轉成B,就可以對金融Mobile App進行駭客攻擊並竄改交易資料。
解決辦法-防止Debugger工具導入
市面上有眾多防止Debugger的安全工具,只要選擇導入工具之後,就能讓駭客工具如下圖般的失效,證明是無法動態偵測的狀況下,就是一個好的App安全產品。
白帽的行動裝置App測試,防禦駭客的攻擊手段
Mobile App的使用已經變成我們生活的一部分,從食衣住行育樂樣樣皆可以透過Mobile App完成我們的需求。但Mobile App發行商的安全意識卻遠不及於駭客覬覦App來獲取更大利益的貪婪程度,兩者死亡交叉之後的距離目前看來是越來越大,也代表著使用Mobile App的風險是越來越大的。但這App的資安問題無法完全怪罪於Mobile App發行商,發行平台上的安全問題,並不是單靠開發者就能解決,而是需要有更多專業的團隊一同來協助。
果核數位的資安團隊將可以協助發行商進行測試,針對發行商的App提供完整的檢測報告和解決辦法,一同協助發行商降低App所面臨的威脅問題。
果核數位擁有App白帽測試工具和對應駭客攻擊的防禦手法,並能快速地提供修補的建議方式來提升App的安全程度,為客戶打造App安全的天際線,是果核用心刻劃的信念。
延伸閱讀:
要如何預防駭客攻擊?6步驟教你如何提升網路資安的安全性!
嚇!手遊資安危機?數小時恐喪失上億營收!