序
隨著互聯(lián)網(wǎng)的發(fā)展,越來(lái)越多的App來(lái)到大眾的視野中,生活越來(lái)越便捷的同時(shí)又會(huì)帶來(lái)哪些新的問(wèn)題呢?值得大家一起思考。
作為用戶,我提交到平臺(tái)個(gè)人信息會(huì)不會(huì)泄露?是不是安全的?
作為企業(yè),數(shù)據(jù)就是資產(chǎn)。那企業(yè)拿到這些資產(chǎn)(個(gè)人信息)是將商業(yè)價(jià)值最大化還是秉承著用戶第一的原則,時(shí)刻保護(hù)用戶個(gè)人信息?
作為安全從業(yè)者,傳統(tǒng)的安全建設(shè)能否完全解決上述的問(wèn)題?
當(dāng)然,上述的問(wèn)題相信大家也都有各自的答案,后續(xù)我也會(huì)陸陸續(xù)續(xù)更新相關(guān)的文章,所以今天我們只聊App隱私合規(guī)。
只想看怎么做,可直接翻到這部分 - 》》》0X03 App隱私合規(guī)怎么做?
0X01 背景
有人說(shuō),2017年可以稱之為中國(guó)網(wǎng)絡(luò)安全的元年;也有人說(shuō),2021年是中國(guó)網(wǎng)絡(luò)安全的元年;是不是元年我覺(jué)得并不重要,重要的是國(guó)家越來(lái)越重視網(wǎng)絡(luò)安全。
2017年6月1日,《中華人民共和國(guó)網(wǎng)絡(luò)安全法》開(kāi)始施行。
2021年6月10日,第十三屆全國(guó)人民代表大會(huì)常務(wù)委員會(huì)第二十九次會(huì)議通過(guò)《中華人民共和國(guó)數(shù)據(jù)安全法》,自2021年9月1日起施行。
2021年4月9日,《中華人民共和國(guó)個(gè)人信息保護(hù)法(草案)》對(duì)外發(fā)布并公開(kāi)征求意見(jiàn)。
從這些法律的出臺(tái),我們可以看到我國(guó)網(wǎng)絡(luò)安全相關(guān)的法律體系在逐漸完善,從傳統(tǒng)安全到數(shù)據(jù)安全,再到個(gè)人信息保護(hù)。
為什么是個(gè)人信息保護(hù)?前段時(shí)間在一個(gè)關(guān)于個(gè)人信息保護(hù)的會(huì)上演講老師是這么說(shuō)的:
傳統(tǒng)安全是為了維護(hù)網(wǎng)絡(luò)空間主權(quán)和國(guó)家安全、社會(huì)公共利益,保護(hù)公民、法人和其他組織的合法權(quán)益。
對(duì)于涉及國(guó)家安全&社會(huì)公共利益的數(shù)據(jù)大家都很容易理解這里不多說(shuō);對(duì)于涉及企業(yè)利益的數(shù)據(jù)企業(yè)肯定是重中之重;但對(duì)于個(gè)人&用戶的數(shù)據(jù)誰(shuí)來(lái)保障?誰(shuí)來(lái)負(fù)責(zé)?
今年的315晚會(huì)曝光中,多個(gè)事件涉及個(gè)人信息保護(hù),通過(guò)對(duì)比也很容易看出對(duì)于個(gè)人信息保護(hù)的監(jiān)管力度越來(lái)越大,曝光名單見(jiàn)下表:
| 2020年曝光名單 | 2021年曝光名單 |
|---|---|
| 養(yǎng)海參整箱放敵敵畏,南方海參冒充北方海參 | 科衛(wèi)浴、寶4S店、MaxM*ra被爆:違規(guī)竊取人臉數(shù)據(jù) |
| 漢*王用過(guò)期面包做漢堡,雞腿排保質(zhì)期隨意改 | 智招聘、前無(wú)憂、*聘:簡(jiǎn)歷流向黑市 |
| 毛巾生產(chǎn)線的暗黑面:舊襪子舊內(nèi)衣竟是毛巾生產(chǎn)原料 | 手機(jī)清理軟件:誘騙老年人 |
| *駿560高速上突然失去動(dòng)力 故障沒(méi)完沒(méi)了投訴無(wú)處可去 | U瀏覽器、搜索:推送虛假?gòu)V告 |
| ...... | ...... |
今年7月份,國(guó)家網(wǎng)信辦發(fā)布了關(guān)于該出行App下架的通知,發(fā)布消息稱”根據(jù)舉報(bào),經(jīng)檢測(cè)核實(shí),“滴滴出行”App存在嚴(yán)重違法違規(guī)收集使用個(gè)人信息問(wèn)題?!?/p>

此事件也讓“個(gè)人信息保護(hù)”再次成為大眾關(guān)注的焦點(diǎn)。那么,關(guān)于“個(gè)人信息保護(hù)”有哪些法律法規(guī)和相關(guān)規(guī)范呢?
0X02 法律&規(guī)范
一、《消費(fèi)者權(quán)益保護(hù)法》
第二十九條
經(jīng)營(yíng)者收集、使用消費(fèi)者個(gè)人信息,應(yīng)當(dāng)遵循合法、正當(dāng)、必要的原則,明示收集、使用信息的目的、方式和范圍,并經(jīng)消費(fèi)者同意。經(jīng)營(yíng)者收集、使用消費(fèi)者個(gè)人信息,應(yīng)當(dāng)公開(kāi)其收集、使用規(guī)則,不得違反法律、法規(guī)的規(guī)定和雙方的約定收集、使用信息。
經(jīng)營(yíng)者及其工作人員對(duì)收集的消費(fèi)者個(gè)人信息必須嚴(yán)格保密,不得泄露、出售或者非法向他人提供。經(jīng)營(yíng)者應(yīng)當(dāng)采取技術(shù)措施和其他必要措施,確保信息安全,防止消費(fèi)者個(gè)人信息泄露、丟失。在發(fā)生或者可能發(fā)生信息泄露、丟失的情況時(shí),應(yīng)當(dāng)立即采取補(bǔ)救措施。
經(jīng)營(yíng)者未經(jīng)消費(fèi)者同意或者請(qǐng)求,或者消費(fèi)者明確表示拒絕的,不得向其發(fā)送商業(yè)性信息。
二、《中華人民共和國(guó)網(wǎng)絡(luò)安全法》
第二十二條第三款
網(wǎng)絡(luò)產(chǎn)品、服務(wù)具有收集用戶信息功能的,其提供者應(yīng)當(dāng)向用戶明示并取得同意;涉及用戶個(gè)人信息的,還應(yīng)當(dāng)遵守本法和有關(guān)法律、行政法規(guī)關(guān)于個(gè)人信息保護(hù)的規(guī)定。
第三十七條
關(guān)鍵信息基礎(chǔ)設(shè)施的運(yùn)營(yíng)者在中華人民共和國(guó)境內(nèi)運(yùn)營(yíng)中收集和產(chǎn)生的個(gè)人信息和重要數(shù)據(jù)應(yīng)當(dāng)在境內(nèi)存儲(chǔ)。因業(yè)務(wù)需要,確需向境外提供的,應(yīng)當(dāng)按照國(guó)家網(wǎng)信部門會(huì)同國(guó)務(wù)院有關(guān)部門制定的辦法進(jìn)行安全評(píng)估;法律、行政法規(guī)另有規(guī)定的,依照其規(guī)定。
第四十一條
網(wǎng)絡(luò)運(yùn)營(yíng)者收集、使用個(gè)人信息,應(yīng)當(dāng)遵循合法、正當(dāng)、必要的原則,公開(kāi)收集、使用規(guī)則,明示收集、使用信息的目的、方式和范圍,并經(jīng)被收集者同意。
網(wǎng)絡(luò)運(yùn)營(yíng)者不得收集與其提供的服務(wù)無(wú)關(guān)的個(gè)人信息,不得違反法律、行政法規(guī)的規(guī)定和雙方的約定收集、使用個(gè)人信息,并應(yīng)當(dāng)依照法律、行政法規(guī)的規(guī)定和與用戶的約定,處理其保存的個(gè)人信息。
第四十二條
網(wǎng)絡(luò)運(yùn)營(yíng)者不得泄露、篡改、毀損其收集的個(gè)人信息;未經(jīng)被收集者同意,不得向他人提供個(gè)人信息。但是,經(jīng)過(guò)處理無(wú)法識(shí)別特定個(gè)人且不能復(fù)原的除外。
網(wǎng)絡(luò)運(yùn)營(yíng)者應(yīng)當(dāng)采取技術(shù)措施和其他必要措施,確保其收集的個(gè)人信息安全,防止信息泄露、毀損、丟失。在發(fā)生或者可能發(fā)生個(gè)人信息泄露、毀損、丟失的情況時(shí),應(yīng)當(dāng)立即采取補(bǔ)救措施,按照規(guī)定及時(shí)告知用戶并向有關(guān)主管部門報(bào)告。
第四十三條
個(gè)人發(fā)現(xiàn)網(wǎng)絡(luò)運(yùn)營(yíng)者違反法律、行政法規(guī)的規(guī)定或者雙方的約定收集、使用其個(gè)人信息的,有權(quán)要求網(wǎng)絡(luò)運(yùn)營(yíng)者刪除其個(gè)人信息;發(fā)現(xiàn)網(wǎng)絡(luò)運(yùn)營(yíng)者收集、存儲(chǔ)的其個(gè)人信息有錯(cuò)誤的,有權(quán)要求網(wǎng)絡(luò)運(yùn)營(yíng)者予以更正。網(wǎng)絡(luò)運(yùn)營(yíng)者應(yīng)當(dāng)采取措施予以刪除或者更正。
PS:相關(guān)法律實(shí)在太多,我不一一列舉,大家可以自己去搜上文中提到的一些法律。
三、《GB/T-2020-35273 信息安全技術(shù)-個(gè)人信息安全規(guī)范》
此規(guī)范其實(shí)有幫大家列舉一些個(gè)人信息參考清單、隱私政策模板等,這里不做過(guò)多介紹,大家可以關(guān)注公眾號(hào)獲取相關(guān)文檔。
四、《App違法違規(guī)收集使用個(gè)人信息行為認(rèn)定方法》
未公開(kāi)收集使用規(guī)則
未明示收集使用個(gè)人信息的目的、方式和范圍
未經(jīng)用戶同意收集使用個(gè)人信息
違反必要原則,收集與其提供的服務(wù)無(wú)關(guān)的個(gè)人信息
未經(jīng)同意向他人提供個(gè)人信息
未按法律規(guī)定提供刪除或更正個(gè)人信息功能”或“未公布投訴、舉報(bào)方式等信息
相關(guān)的法律法規(guī)及安全規(guī)范,相信大家也有所了解,那具體怎么做呢?
0X03 App隱私合規(guī)怎么做?
個(gè)人信息保護(hù)是個(gè)長(zhǎng)期的事情,也有一些相關(guān)的標(biāo)準(zhǔn)、指南出臺(tái)供大家參考,如:
《App違法違規(guī)收集使用個(gè)人信息自評(píng)估指南》
《移動(dòng)互聯(lián)網(wǎng)應(yīng)用程序(App)收集使用個(gè)人信息自評(píng)估指南》
《移動(dòng)互聯(lián)網(wǎng)應(yīng)用程序(App)個(gè)人信息安全測(cè)評(píng)規(guī)范》
前兩個(gè)指南比較簡(jiǎn)單照著做就行,下邊說(shuō)下第三個(gè)規(guī)范中提到的具體操作流程及技術(shù)檢測(cè)原理&方法。
概述:
主要針對(duì)App、App服務(wù)端和相關(guān)文檔資料開(kāi)展測(cè)評(píng)。
實(shí)施過(guò)程:
主要包括準(zhǔn)備、實(shí)施、結(jié)果判斷、報(bào)告編寫四個(gè)階段,如圖所示。

測(cè)評(píng)方法:
綜合采用,文件審查、服務(wù)端核查、功能驗(yàn)證、技術(shù)檢測(cè)、人員訪談等方式。
其實(shí),文件審查、服務(wù)端檢查、功能驗(yàn)證、人員訪談都比較容易理解,后續(xù)也可以自己去查看相關(guān)文檔。
==下面重點(diǎn)說(shuō)下技術(shù)檢測(cè)(標(biāo)準(zhǔn)里沒(méi)有的哦)==
檢測(cè)原理:
以靜態(tài)檢測(cè)&動(dòng)態(tài)檢測(cè)的方法進(jìn)行檢查,如:在用戶同意《隱私政策》之前,App是否已在程序后端獲取敏感數(shù)據(jù)。
檢測(cè)方法:
在講方法之前我們先擬定一個(gè)場(chǎng)景:
在用戶同意《隱私政策》之前,App是否已在程序后端獲取了敏感數(shù)據(jù)。
-
==靜態(tài)檢測(cè)(代碼)==
優(yōu)點(diǎn):檢測(cè)速度快、通用性強(qiáng)、技術(shù)簡(jiǎn)單
缺點(diǎn):無(wú)法確定是否合規(guī)、加固后無(wú)法檢測(cè)
操作方式:
通過(guò)逆向Apk,反編譯出Apk代碼文件,再通過(guò)關(guān)鍵詞(API)檢索源代碼的方式來(lái)進(jìn)行合規(guī)判定。
場(chǎng)景解讀:
這里我們可以搜索《隱私政策》去確定代碼位置,再查找在此之前的代碼是否存在收集敏感數(shù)據(jù)行為,或搜索如下敏感函數(shù)。
android.telephony.TelephonyManager.getNetworkOperator() # 獲取運(yùn)營(yíng)商信息 android.telephony.TelephonyManager.getDeviceId() # 獲取設(shè)備信息 android.telephony.TelephonyManager.getPhoneType() # 獲取手機(jī)信息 android.telephony.TelephonyManager.getSubscriberId() # 獲取設(shè)備信息 android.telephony.TelephonyManager.getLine1Number() # 獲取手機(jī)號(hào) android.telephony.TelephonyManager.getCellLocation() # 獲取位置信息 android.telephony.TelephonyManager.listen() # 電話監(jiān)聽(tīng) android.telephony.TelephonyManager.getSimOperator() # 獲取SIM卡信息 android.app.ActivityManager.getRunningAppProcesses() # 獲取運(yùn)行APP android.app.ActivityManager.getRunningTasks() # 獲取正運(yùn)行的task android.content.pm.PackageManager.getInstalledPackages() # 獲取安裝APP ...Ps:App逆向操作流程及工具使用可以翻我之前寫的文章。
==動(dòng)態(tài)檢測(cè)(行為)==
優(yōu)點(diǎn):檢測(cè)確認(rèn)性高100%能檢測(cè)(不會(huì)受加固影響)
缺點(diǎn):技術(shù)復(fù)雜、通用性差
操作方式:
通過(guò)抓包&Hook沙箱或操作系統(tǒng)沙箱技術(shù),在App運(yùn)行的過(guò)程中,針對(duì)特定API進(jìn)行埋點(diǎn)(可參考上文敏感函數(shù)),查看App是否執(zhí)行了埋點(diǎn)的API,從而判斷是否合規(guī)。
場(chǎng)景解讀:
1.通過(guò)抓包的方式,在同意《隱私政策》之前查看流量中是否出現(xiàn)敏感數(shù)據(jù)。
2.通過(guò)Hook技術(shù),對(duì)敏感函數(shù)進(jìn)行埋點(diǎn),在同意《隱私政策》之前查看埋點(diǎn)的函數(shù)是否執(zhí)行。
工具推薦:
1.抓包工具,burpsuite/charles/fiddler 等
2.Hook框架,frida/Xposed框架等
**場(chǎng)景解讀:**
1.通過(guò)抓包的方式,在同意《隱私政策》之前查看流量中是否出現(xiàn)敏感數(shù)據(jù)。
2.通過(guò)Hook技術(shù),對(duì)敏感函數(shù)進(jìn)行埋點(diǎn),在同意《隱私政策》之前查看埋點(diǎn)的函數(shù)是否執(zhí)行。
工具推薦:
1.抓包工具,burpsuite/charles/fiddler 等
2.Hook框架,frida/Xposed框架等
以上,就是本人對(duì)App隱私合規(guī)粗略的理解,有很多不足也有很多需要大家一起去實(shí)踐驗(yàn)證,有感興趣的朋友歡迎一起交流。
Ps:關(guān)注公眾號(hào)回復(fù)“35273”可獲取文中提到的相關(guān)文檔。
附錄-取自《GB/T-2020-35273 信息安全技術(shù)-個(gè)人信息安全規(guī)范》
個(gè)人信息列舉:

個(gè)人敏感信息列舉:
