警惕手機軟體裡的"內鬼"

  手機軟體(App)出現流量劫持、惡意廣告推送、違規收集個人資訊等情況,或許是內嵌第三方軟體開發工具包(SDK)在作怪——

警惕手機軟體裡的“內鬼”

光明網記者 孔繁鑫 李政葳

近日,國家計算機病毒應急處理中心監測發現15款移動App及1款SDK存在隱私不合規行為,涉嫌超範圍採集個人隱私資訊。今年2月份,工信部資訊通訊管理局也通報了今年第一批侵害使用者權益行為的App,有13款內嵌第三方SDK存在違規收集使用者裝置資訊行為。

伴隨移動網際網路時代到來,App與人們工作生活的關聯日益密切。如今,大量App藉助SDK實現特定功能,提供便捷服務,滿足使用者多樣需要。但與之相關的安全問題,同樣不容忽視。

  何為SDK?與App有何關聯?

最新資料顯示,國內市場上App已達252萬款。當前,App功能複雜程度及版本迭代速度大幅提升,已進入為大眾提供精細化、場景化服務階段。

“應用開發者為提高迭代速度、降低開發成本及豐富業務功能,除了自主開發外,還會內嵌SDK,從而快速接入和實現某類業務功能。”安天移動安全高階副總裁陳家林說。

安天移動安全風險應用檢測預警平臺統計發現,目前,我國80%以上App集成了第三方SDK,平均每個App整合數量近20款。中國資訊通訊研究院與騰訊公司聯合釋出的《軟體開發包(SDK)安全研究報告(2021年)》中提到,被100款以上App所整合的第三方SDK已超3萬款。

何為SDK?《TC260-PG-20205A移動網際網路應用程式(App)中的第三方軟體開發工具包(SDK)安全指引(徵求意見稿)》中將其定義為,輔助開發某一類軟體的相關文件、範例和工具的集合;第三方SDK則指由第三方服務商或開發者提供工具包。

“就像一家工廠在製造電視或汽車時,為實現更好的效能,從外界購買一些具有特定功能的零件組裝在產品裡。”一家資訊類平臺的工程師田強這樣打比方。

記者瞭解到,第三方SDK提供的App功能服務包括訊息推送、支付、廣告、行為分析統計、第三方登入等。有的SDK用於特定的品類應用中,比如,社交類App通常接入即時訊息類SDK,網賺類App則會接入安全風控類SDK。

  嵌入了便利,也嵌入了風險

從本次工信部通報的SDK違規問題可以看出,除多款SDK涉及違規獲取裝置ID外,還有1款涉及違規收集裝置感測器資訊,1款涉及違規收集裝置安裝列表。

對此,陳家林坦言,目前市面上的第三方SDK生態比較複雜,對於App開發者來說,第三方SDK執行時的行為可能並不透明;同一SDK引入不同App或App的不同版本中,其版本、功能、模組可能存在差異。“很多場景下App開發者難以全面評估SDK的安全性,且難以掌握SDK的全部執行行為。”陳家林說。

“我們曾採用過一款記錄日誌執行資料的SDK元件。幾年前該SDK元件出現漏洞,平臺數據安全因此遭遇嚴重威脅。”田強回憶,駭客透過該第三方SDK漏洞,可以登入伺服器並獲取操作許可權,任意處置裡面的使用者資料。

安天移動安全近日釋出的《移動網際網路應用供應鏈(SDK)行為安全性現狀研究報告》中提到,SDK惡意行為包括流量劫持、隱私竊取、靜默下載安裝、惡意廣告、遠端控制等;SDK風險行為包括違規收集個人資訊、雲端控制SDK、欺騙誤導使用者下載App、偽裝或匿名推送訊息等。

“App接入第三方SDK提供服務,在釐清個人資訊處理責任邊界、實施安全措施等方面,增加了複雜度和安全隱患。企業如何規範App接入的各類第三方SDK服務,已成為資料合規的難點之一。”中國電子技術標準化研究院網路安全研究中心測評實驗室副主任何延哲說。

  警惕違規收集使用者個人資訊亂象

去年年底,國家計算機網路應急技術處理協調中心、中國網路空間安全協會發布的《App違法違規收集使用個人資訊監測分析報告》顯示,第三方SDK收集行為普遍存在,由該行為不規範引發的App違規問題日益凸顯。

“我們在檢測中也證實了這類問題。具體包括在使用者同意隱私政策前就開始收集個人資訊、隱私政策中未明確提及接入SDK資料收集情況、SDK收集個人資訊範圍與隱私政策描述不相符等。”陳家林說。

從個人資訊處理角度而言,何延哲認為,在理想情況下第三方SDK和App存在“委託處理”“各自獨立處理”及“共同處理”三種模式:如果第三方SDK需遵循與App開發者的約定目的及方式處理個人資訊,即第三方SDK受“委託處理”,App開發者承擔告知同意職責;如果App開發者無法充分定製或限制第三方SDK處理個人資訊行為,此時雙方屬於“各自獨立處理者”,App開發者需告知第三方SDK處理個人資訊規則;如果App與第三方SDK約定共同決定處理個人資訊,雙方可能成為“共同處理者”,都應該以個人資訊處理者的名義對使用者明示告知。

然而,在實際開發運營中,兩者關係相比理想模式往往更為複雜。何延哲建議,App能夠與使用者直觀互動並提供服務,應該承擔更大告知職責;如果第三方SDK提供服務必須處理個人資訊,需要主動詳細告知處理規則。

  應遵循最小化、必要性設計原則

第三方SDK嵌入App時,也嵌入了風險元素。對此,從事出行類平臺研發工作的客戶端工程師陸陽認為,一線工程師不能只關注軟體開發業務,應該對所使用的SDK基本資訊有清晰、必要的認識,並與安全團隊配合,選出既符合業務訴求又能夠保證安全性的SDK。

陳家林認為,從產業鏈角度看,SDK提供者需遵守個人資訊保護法、資料安全法等相關法規以及App使用者權益政策要求,在涉及個人資訊收集和使用行為上秉持最小化、必要性設計原則;App開發者在選擇和接入SDK時,需要重點評估SDK提供商及其SDK安全性。

針對使用者權益,何延哲認為,如果基於使用者同意使用SDK服務,使用者有撤回同意權利;如果SDK收集使用者資訊是為履行法定義務,則不宜提供停止或拒絕功能;如果SDK與App為委託關係,應由App方對限制或拒絕處理個人資訊作出響應。

近年來,國家相關單位的部分標準檔案中,已提出App和SDK的安全技術要求和規範指引,部分處於徵求意見稿階段。記者也瞭解到,根據歐盟《通用資料保護條例》(GDPR)要求,歐洲的廣告互動協會開始嘗試“同意管理平臺模式(CMP)”。何延哲表示,該模式本身有助於使個人資訊處理更合規,具有一定借鑑性。而真正適合我國法律框架和App、SDK開發產業生態的個人資訊處理模式,還需要各方持續研究嘗試。

警惕手機軟體裡的"內鬼"

更多內容歡迎掃碼觀看

《光明日報》( 2022年04月01日 10版)

頂部