如果你突然發現手機App出現流量劫持、惡意廣告推送、違規收集個人信息,或許是内嵌第三方SDK(軟件開發工具包)在作怪。
近日,國家計算機病毒應急處理中心通過互聯網監測發現15款移動App及1款SDK存在隐私不合規行為,涉嫌超範圍采集個人隐私信息;就在一個多月前,工業和信息化部信息通信管理局也通報了今年第一批侵害用戶權益行為App,有13款内嵌第三方SDK存在違規收集用戶設備信息行為。
伴随移動互聯網時代的帶來,App與人們工作生活關聯日益密切。現如今,大量App借助SDK實現特定功能,提供便捷服務,滿足用戶多樣需要。但與之相關的安全問題,同樣不容忽視。
何為SDK?與App有何關系?
最新數據顯示,國内市場上App已達252萬款。當前,這些App的功能複雜程度及版本叠代速度大幅提升,已進入為大衆提供精細化、場景化服務階段。“應用開發者為提高叠代速度、降低開發成本以及提供更加豐富的業務功能,除了自主開發App的相關功能代碼外,還會内嵌第三方SDK,從而快速接入和實現某類業務功能。”安天移動安全高級副總裁陳家林說。
中國信通院與騰訊公司聯合發布的《軟件開發包(SDK)安全研究報告(2021年)》提到,超3萬款第三方SDK已被100款以上App集成。安天移動安全風險應用檢測預警平台也統計發現,目前,我國80%以上App集成了第三方SDK,每個App集成的SDK數量平均近20款。
何為SDK?《TC260-PG-20205A移動互聯網應用程序(App)中的第三方軟件開發工具包(SDK)安全指引(征求意見稿)》中給出定義——輔助開發某一類軟件的相關文檔、範例和工具的集合;第三方SDK是指由第三方服務商或開發者提供的實現軟件産品某項功能的工具包。
“就像一家廠子制造電視或汽車時,在組裝過程中為實現更好性能,一些具有特定功能零件需要從外界購買,并組裝在産品裡。”一家資訊類平台工程師田強做了這樣的比方。
記者了解到,第三方SDK通常提供一些App常用的功能服務。比如,消息推送、支付、廣告、行為分析統計、第三方登錄等。此外,還有SDK主要用于特定的品類應用中。比如,社交交友類App通常會接入即時消息類SDK,網賺類App則會接入安全風控類SDK。
嵌入了便利,也嵌入了風險
梳理本次工信部通報的SDK違規問題可以發現,8款SDK涉及違規收集設備AndroidID、4款涉及設備IMEI、3款涉及設備MAC地址、2款涉及設備IMSI、1款涉及設備ICCID号,均屬違規獲取設備ID;此外,有1款SDK涉及違規收集設備傳感器信息,1款涉及違規收集設備安裝列表。
對此,陳家林坦言,SDK雖然具有泛用性、靈活性特點,但市面上的第三方SDK生态比較複雜:對于App開發者,第三方SDK運行時的行為可能并不透明化;App在不同版本中引入的同一SDK,其版本、功能、模塊可能存在差異;同一SDK在不同App中分發的版本、功能、模塊也可能存在差異。“也就是說,很多場景下App開發者難以全面評估接入SDK的安全性,且難以掌握SDK的全部運行行為。”
“我們曾采用過一款記錄日志運行數據的SDK組件,幾年前出現系統漏洞,平台數據安全遭遇嚴重威脅。”田強回憶,黑客通過該第三方SDK漏洞,可以登錄服務器并獲取服務器操作權限,任意處置用戶數據。
安天移動近日發布的《移動互聯網應用供應鍊(SDK)行為安全性現狀研究報告》提到,SDK惡意行為包括流量劫持、資費消耗、隐私竊取、靜默下載安裝、廣告刷量、惡意廣告、勒索、挖礦、遠程控制等;SDK風險行為包絡違規收集個人信息、超範圍收集個人信息、雲端控制SDK行為、後台拉活、欺騙誤導用戶下載App、僞裝或匿名推送消息等。
“App接入第三方SDK提供服務,在厘清個人信息處理責任邊界、實施安全措施等方面,增加了複雜度、安全隐患以及合規工作的不确定性。此外,企業如何規範App接入的各類第三方SDK服務,已成為數據合規的難點之一。”中國電子技術标準化研究院網絡安全研究中心測評實驗室副主任何延哲說。
警惕隐瞞收集用戶個人信息亂象
去年年底,國家計算機網絡應急技術處理協調中心、中國網絡空間安全協會發布的《App違法違規收集使用個人信息監測分析報告》顯示,第三方SDK收集行為普遍存在,由該行為不規範引發的App違規問題日益凸顯。
“我們在檢測中也發現,應用接入第三方SDK引發的違規收集個人信息問題較為普遍。其中,包括用戶同意隐私政策前就開始收集個人信息、隐私政策中未明确提及所接入的SDK和數據收集情況、SDK收集的個人信息範圍與隐私政策不相符等。”陳家林介紹,由于SDK在不同App中存在不同的模塊代碼和版本,經過對不同月活範圍App數據收集行為分析發現,SDK普遍存在違規收集和超範圍收集個人信息問題,且在月活較低的App接入版本中,還存在通過雲控參數控制SDK在終端側收集數據範圍情況。
從個人信息處理角度來說,何延哲認為,第三方SDK和App在理想情況下,存在“委托處理”“各自獨立處理”及“共同處理”三種模式:第一,如果第三方SDK無法獨立決定對所收集數據的處理目的及方式,需遵循與App開發者約定處理個人信息,此時App開發者作為個人信息處理者,需承擔告知同意職責;第二,對于第三方SDK處理個人信息行為,如果App開發者無法充分定制或限制,此時雙方屬于“各自獨立處理者”,App開發者需告知第三方SDK處理個人信息規則;第三,如果App與第三方SDK約定共同決定處理個人信息,雙方可能成為“共同處理者”,都應該以個人信息處理者的名義,對用戶明示告知。
然而,在實際App開發運營中,相比以上三種理想模式,兩者關系往往更為複雜。何延哲建議,App運營者如果能夠與用戶直觀交互并提供服務,應該承擔更大告知同意職責;如果第三方SDK提供服務必須處理個人信息,需要其主動詳細告知個人信息處理規則。
應遵循合理性、最小化、必要性設計原則
第三方SDK嵌入App時,也嵌入了風險元素。對此,多年從事出行類平台研發工作的客戶端工程師陸陽認為,一線工程師不能隻關注軟件開發業務,應該對所使用的SDK基本信息有清晰、必要的認識,并與安全團隊配合,選出既符合業務訴求、又能夠保障安全性的SDK。
陳家林認為,從産業鍊角度,SDK提供者除了需要遵守安全開發原則,還需要在産品設計和開發階段遵守《個人信息保護法》《數據安全法》等相關法規和App用戶權益相關的政策合規性規範要求,在SDK涉及用戶個人信息收集和使用相關的行為上,應該保障最小化和必要性的設計原則;應用開發者在選擇和接入功能SDK時,需要重點從SDK提供商和其SDK軟件包安全性角度進行評估。
針對用戶權益方面,何延哲認為,需要結合SDK法律角色定位、處理個人信息合法性基礎,以及特定使用場景等因素而定。即,如果基于用戶“同意”使用SDK服務,用戶擁有行使撤回“同意”權利;如果SDK收集用戶信息是為履行法定義務,則不宜提供停止或拒絕功能;如果SDK與App構成委托關系,應由App方對個人信息作出響應。
近年來,國家相關單位的部分标準文件中,已提出了App和SDK的安全技術要求和規範指引,部分處于征求意見稿階段。比如,《移動互聯網應用程序(App)中的第三方軟件開發工具包(SDK)安全指引》《移動互聯網應用程序(App)SDK安全指南》《移動智能終端應用軟件SDK安全技術要求》等。
記者了解到,根據歐盟GDPR要求,歐洲廣告互動協會開始嘗試“同意管理平台模式(CMP)”。何延哲認為,這種模式本身有助于使個人信息處理更合規,具有一定借鑒性。而真正适合我國法律框架和App、SDK開發産業生态的個人信息處理模式,還需要各方持續研究嘗試。(記者 李政葳 孔繁鑫)
來源: 光明網
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!