目錄:
一、背景與應用場景介紹 二、企業APP面臨的問題 三、個人面臨的問題 四、解決方案 五、未來展望與總結
一、背景與應用場景介紹
1.1、國家對個人隱私保護越來越重視
2019年初,中央網信辦、工信部、公安部及市場監管總局四部門聯合發布了《關於開展App違法違規收集使用個人信息專項治理的公告》,預示着我國在APP隱私層面的治理進入了一個新的高度,期間部分APP采集隱私數據受到了嚴重處罰。
如圖1-1所示,每年各部門發布的相關個人信息范圍規定文件可以看出個人信息安全和用戶權益保護越來越被重視。

圖1-1
各監管部門不斷開展APP專項治理工作及核查通報,不合規的APP通知整改或直接下架。
1.2、應用場景
企業:
針對企業開發的移動應用中收集個人信息行為是否存在違法違規進行認定並提供參考,為企業APP運營者自查自糾提供指引,移動應用個人信息安全提供多方位全面體檢,APP是否合規等問題的深度檢測,及時發現應用存在的潛在風險與不合規之處,幫助企業對APP隱私、過度收集、濫用等行為進行檢測,高效、低成本地做APP合規自查形成專業並易理解的檢測報告,為移動應用運營者提供專業的合規、安全提供整改依據。
個人:
現在我們的日常工作生活基本都離不開手機,無論是購物、點外賣、工作還是娛樂,都需要用到各種互聯網公司開發的APP,但是其中的用戶安全隱私問題,悄然的浮現了出來,很多APP能監聽用戶內容上傳到服務器,然后發放精准廣告,沒有隱私可言。所以普通人如果要發現自己使用的APP是否有問題就需要借肋能檢測出問題的工具或平台。
二、企業APP面臨的問題
2.1、來自多方面的風險
企業APP的直接開發者:
自研企業移動應用
第三方業務應用
多方協同開發業務應用
基於第三方開源應用。
第三方SDK引用:
推送類SDK
地圖類SDK
認證識別SDK
登錄分享SDK
短信驗證SDK
即時通訊SDK
支付類SDK
自動更新SDK
直播類SDK
音視頻多媒體SDK
安全鍵盤SDK
埋點統計SDK
開發框架SDK
游戲SDK
······
風險分類
風險主要為三類:個人隱私、安全漏洞
過度收集用戶個人信息:
無論是第三方SDK,還是是企業自研移動應用,均存在對個人信息過度獲取、泄露、濫用等安全 問題,(如攝像頭、存儲讀寫、麥克風、位置、短信讀取等)。
存在代碼安全與漏洞:
引用的第三方SDK、自研移動應用安全審查過程缺乏,安全意識薄弱,造成移動應用代碼存在未知安全漏洞。
2.2、對企業APP的影響
過度收集信息APP下架造成業務不能正常推進、影響企業品牌信譽。
2.3、浪費人力資源與時間
目前很多企業檢測APP主要是通過讀源代碼方法將有關API標記為敏感,這顯然很不合理。這種方法大多是依賴於人工、開發人員或分析師手動標記敏感的內容,這需要大量的人工干預,而工作跟不上就會導致安全風險存在。這種方式是非常低效的,成本也很高。
三、個人面臨的問題
3.1、信息被過度采集
可能你聽過或自身也遇到過以下這些場景,比如剛剛在聊天的時候提到某件商品的名字,在打開電商平台的時候,滿屏都是這種商品的身影,就會接收到相應的廣告,在論壇上面交流某款游戲,轉頭過來就在論壇推送的廣告上看到這款游戲的名字等等。是否在我輸入交易密碼時會被記錄上傳?這到底是誰泄的密?對於個人而言只能感嘆“我們還有隱私么?"
大多對APP在手機上用戶隱私的定義主要集中在操作系統預定義的敏感API上,如設備標識符,電話號碼,IMEI、MAC等、GPS位置信息、通訊錄、短信、瀏覽器信息等,主要采取了權限保護的手段。這些的確是非常重要的用戶隱私,但是並沒有覆蓋所有的用戶隱私和敏感數據。在很大程度上忽視了一個非常重要的用戶隱私來源——用戶輸入隱私。App通常通過用戶界面讓用戶輸入一些信息,而這些信息就包括了登錄憑證、財務信息、醫療信息等敏感數據。因此要在APP中保護用戶隱私,就必須很好的處理這些用戶輸入數據。
3.2、惡意操作行為
第三方SDK可能借助合法的宿主APP執行惡意的操作:靜默安裝其他APP、上傳業務數據、獲取用戶隱私數據上報雲端、監聽用戶、惡意推送信息等。
某些應用為了對抗自動化安全分析,只有在用戶特定的情形下才觸發隱私收集事件,比如某輸入法。沒有完整的邏輯逆向分析很難發現其行為。
四、解決方案
4.1、方案介紹
方案主要分成兩部分:
第一:企業APP發版時針對應用中收集個人信息行為是否存在違法違規進行認定並提供參考,為APP運營者自查自糾提供指引。
第二:及時發現個人手機上APP獲取信息合規問題及准確定位,提前發現應用中個人信息的安全、合規風險,並准確定位問題出現的源頭,對獲取隱私的應用提出預警提示。
4.2、整體架構
架構分為移動端與服務器端,如圖4-2所示:

圖4-2
安全沙箱是指建立一個隔離的運行環境,在里面直接運行第三方App,這種技術方案為解決上述某些APP在特定條件下才收集用戶隱私的事件監控,因為只在服務器端自動化分析場景比較單一,某些有做安全處理的APP會逃過檢測,很難發現它的惡意行為。
4.3、核心功能介紹
威脅行為類型
常見的威脅類型如圖4-3所示:


圖4-3
移動端:
移動端主要負責監控用戶界面輸入的內容隱私,例如,偽裝成銀行應用的APP來騙取用戶的財務信息。設備方面的敏感數據是操作系統給出的,例如位置、硬件號信息,保護此類隱私數據可以利用系統API來設置安全標簽,對其進行保護APP執行時API、網絡接口監控,特定行為監控。
雲端:
雲端主要對APP進行通用類型的隱私接口進行檢測,腳本自動化靜態與動態分析APP的行為,APP執行時API、網絡接口監控。
五、未來展望與總結
5.1、難點與挑戰
難點與挑戰主要來自三個方面:
1、識別用戶輸入的隱私
如何識別輸入文字、語音、圖片是敏感的?人眼可以很輕易的識別用戶輸入隱私,但對機器來說大規模精准識別是很難的。由於用戶輸入隱私是高度非結構化的數據,因此無法在用戶輸入過程中用正則表達式來識別。用傳統的靜態檢測技術同樣也是不切實際的,因為在代碼語義中,隱私輸入和其他普通輸入並沒有顯著的區別。
2、有安全防護的APP
某些APP將收集隱私部分的代碼進行VMP虛擬機保護、Java2C保護、防Hook等,需要二進制文件逆向、動態調試、反匯編等,增加分析難度與成本。
3、准確理解APP隱私聲明
如果要保證APP隱私政策識別准確性可以在檢測時人工介入,但是成本高、周期慢,提升效率的方法可以使用機器學習算法對隱私聲明進行閱讀訓練。但是准確性可能達不到。
5.2、權利交給用戶
最基礎的智能是依賴於數據,如果用戶想要享受更加智能的體驗,那么在享受着智能來便利的同時,也會失去更多的隱私,相應地也會收到更加精准的廣告投放。這是目前大多數APP做智能推薦的一個大邏輯。
哪可不可能在應用內讓用戶可以設置隱私保護模式,在不影響用戶正常使用的前提下開啟隱私保護模式,開啟隱私模式后用戶的數據不會被上傳到雲端,以此保證用戶個人隱私安全。
5.3、總結
任何事物都有其兩面性,“這是一個智能的年代,也是一個沒有隱私的年代”,魚和熊掌不可兼得,比如輸入法其實就是一個游走在隱私和智能之間的產品。如果用戶想要享受更加智能的輸入法體驗,那么在用戶享受着雲端聯想詞庫帶來便利的同時,也會被更加精准的廣告投放與更多隱私問題。
歡迎關注公眾號:

