當前位置:
首頁 > 最新 > 隱私護盾 持續升級!安卓綠色聯盟應用體驗標準2.0啟動公示

隱私護盾 持續升級!安卓綠色聯盟應用體驗標準2.0啟動公示

引言

1

基礎安全標準

1.1 安裝,運行及卸載

應用在用戶未授權情況下,不能進行程序下載、安裝、或升級操作;

應用在用戶未授權情況下,不能執行自啟動操作;

應用在用戶強制關閉或退出後,不能繼續佔用系統資源;

應用中不能包含反卸載操作;


應用在用戶未授權情況下,不能執行撥打電話、發送簡訊等操作;

應用在用戶未授權情況下,不能執行攝像、錄音、截屏等操作;

應用在用戶未授權情況下,不能打開或關閉如WiFi、藍牙、GPS等;

1.3 數據操作

應用在用戶未授權情況下,不能讀寫用戶簡訊、聯繫人等隱私數據;

應用在用戶未授權情況下,不能收集或上報用戶設備、系統及應用程序信息;

應用在用戶未授權情況下,不能修改系統配置等資源文件;

應用在用戶未授權情況下,不能修改其他應用程序的許可權、數據等;


應用在用戶未授權情況下,不能進行消費操作;

應用不能包含故意破壞用戶使用體驗、阻礙用戶正常使用手機或應用的任何行為;

應用中不能包含任何侵犯用戶知情權、選擇權的惡意行為

應用在用戶未授權情況下,不能利用漏洞等方式獲取系統控制許可權,進行非授權操作;

如無必要的使用場景,應用不能在桌面、鎖屏和其他應用上,彈出懸浮窗、自定義後台Toast、後台彈出Activity等騷擾用戶的行為;

如無必要的使用場景,應用不能發送無法刪除的常駐通知;

應用不能彈出、顯示影響用戶體驗的廣告,如抬頭、強制插屏、側邊等;

應用不能引導用戶開啟開發者選項,禁止引導用戶開啟USB調試模式;


應用不能包含病毒、木馬;

應用不能包含漏洞、後門;

應用不能包含國家法律禁止的內容,包括但不限於色情,賭博,或任何危害國家安全的信息;

應用不能包含其他任何形式損害用戶利益及資產的行為;

應用不能通過熱補丁,引入惡意行為和不符合本標準的行為;

2

開發安全標準


不申請不需要使用的許可權,為自定義許可權設置合理的安全保護級別;

應用申請的許可權,都必須有明確、合理的功能和使用場景;

TargetSdkVersion>=23,必須適配Android M及以後版本的動態許可權機制。

對於非核心許可權,應用不能在許可權動態彈框授權提示被用戶拒絕後,強制要求用戶開啟,包括但不限於:(1)應用退出;(2)彈框提醒用戶打開>=2次;

2)功能項管理。關閉不需要及有風險的功能選項,如數據備份功能、調試功能;

3)組件管理。組件聲明的合理性,避免導出不需要外部調用的組件,如需導出應設置合理的許可權保護;

2.2 應用編碼安全規範

2.2.1 基礎編碼安全規範

保證開發環境的安全性,如使用官方渠道下載的開發工具;

避免硬編碼關鍵數據,如加密密鑰、後端伺服器敏感信息等;

應用代碼凈化,代碼邏輯優化、剔除應用中的死代碼塊;

統一的日誌管理介面,避免在日誌中記錄敏感信息;

應用發布之前,關閉調試介面和調試日誌。


使用官方推薦版本的API介面,不使用系統廢棄的API

熟悉並遵從安全規範,避免遺漏安全限制操作,引入安全風險;

對關鍵操作身份校驗和許可權檢查;

2.2.3 第三方代碼使用安全規範

代碼評估。來源可靠性評估、代碼質量評估、潛在安全風險評估;

許可權控制。確認引入代碼所需使用的許可權最小化;

更新維護。關注代碼的安全動態和版本更新情況,及時修復安全問題,更新代碼;

安全保護。對引入的代碼進行混淆,防止攻擊者針對性的攻擊;

2.2.4 代碼保護安全規範

代碼混淆。提高攻擊者代碼分析難度;

加固保護。使用自研或者第三方加固系統進行應用加固,進行代碼隱藏和加密保護;

2.3 數據安全規範

2.3.1 數據加密安全規範

數據密文和加密密鑰應存放在不同的位置;

密鑰存儲模塊應具備防調試及反編譯的能力;

密鑰數據應分散存儲,為獲取密鑰密文增大難度;

2.3.2 數據存儲安全規範

應用程序關鍵數據應該存放在私有目錄下,並設置合理的訪問許可權;

應用程序中的隱私數據應加密存儲。用於加密的密鑰應妥善保存;

禁止程序運行日誌中包含有用戶敏感數據、程序調試數據等;

2.3.3 數據使用安全規範

數據合法性保護。控制用戶輸入數據的類型、長度,進行惡意代碼過濾等;

數據完整和有效性保護。對於接收到的外部數據、載入的外部文件,進行完整、有效性性檢查;

2.4 通信安全


intent數據安全。避免在intent包含用戶敏感數據,從intent中獲取數據時加入必要的異常處理;

intentscheme url 協議安全。使用過程中加入安全限制,防止UXSS等安全問題;

組件調用方式安全。避免通過隱式方式進行調用組件,防止組件劫持;

本地socket通信安全。避免是使用socket方式進行本地通信,如需使用,localhost埠號隨機生成,並對埠連接對象進行身份認證和鑒權;

2.4.2 遠程通信安全

使用https代替http進行通信,並對https證書進行嚴格校驗;

避免進行遠程埠開發通信,如需使用,需要對埠連接對象進行身份認證和鑒權;

2.5 業務安全

2.5.1 認證和授權

認證和授權過程應在伺服器端完成,避免客戶端繞過問題;

對於涉及敏感信息的服務,每次使用前需進行身份認證;

控制登錄憑證token有效期,通信過程中進行token鑒權;

避免在終端設備上使用不安全的方法來存儲用戶名、口令及其它登錄憑證;

用戶密碼需要使用強不可逆的加密演算法加密後傳輸,並引入salt,提高破解難度;

賬戶號和終端設備信息進行綁定,防止終端模擬攻擊;

2.5.2 業務邏輯及數據安全

條件判斷。確保邏輯過程中前置判斷條件的有效性、不可繞 過性,防止攻擊者進行數據修改繞過安全限制;

邏輯設計。確保業務邏輯設計、分支條件及邊界條件處理的正確性和完備性,防止不可控執行流程;

工作分配。確保服務端和客戶端分工正確,防止一些應該放在服務端的校驗工作設置在了客戶端,造成許可權校驗繞過;

業務數據。關鍵業務數據防篡改、防偽造、防重放;

簡訊驗證碼安全。禁止驗證碼回傳行為,驗證碼至少6位,同時嚴格限定驗證碼時效;

2.5.3 業務運維安全

業務風險監控、預警、異常處理預案;

安全動態跟蹤及預警、安全事件排查、漏洞修復;

2.6 運行環境安全

運行期重打包檢測;

模擬器運行環境檢測;

調試、注入操作監控;

root環境運行檢測

2.7 隱私安全(修訂)

涉及到應用下載軟體、對用戶系統或軟體升級等修改用戶個人空間的行為,須得到用戶的同意;

收集或使用個人數據前,須明確提示用戶,並獲得用戶的明示同意,並且允許用戶隨時關閉對個人數據的收集和使用;

默認禁止收集數據主體的敏感個人數據,除非業務必需(如:運動健康類業務)或為了滿足法律與監管機構要求可收集和處理(含profiling),並且同意應該單獨收集;

應提供對用戶的同意和撤銷同意行為進行記錄的機制;

隱私聲明內容發生變化時,須告知用戶查看並獲得用戶同意;

個人數據收集範圍、使用目的不得超出隱私聲明,且遵循最小化原則,當個人數據的採集範圍、使用目的發生變更時,應及時更新隱私聲明;

於存儲個人數據的系統,需對存儲的個人數據定義存留期;

數據主體撤銷同意之後,產品必須禁止繼續收集和處理其相應個人數據;

將數據主體個人數據提供給第三方前,必須獲得數據主體的同意;

推送的內容(含廣告)必須是符合政治、法律和宗教要求,並且推送頻度不能干擾用戶正常使用;

第三方應用軟體調用移動智能終端敏感功能時,應先獲得用戶明確同意;

第三方應用軟體對用戶數據操作時,應先獲得用戶明確同意;

應用軟體不得申請和調用與提供服務無關的終端功能

意見反饋


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 安卓綠色聯盟 的精彩文章:

TAG:安卓綠色聯盟 |