您好,登錄后才能下訂單哦!
目前,Android應(yīng)用程序市場的發(fā)展速度飛快,不少開發(fā)者為了追求開發(fā)速度而忽視應(yīng)用程序的安全。但由于Android系統(tǒng)的開源性及其Java編寫的特殊性,各類Android App經(jīng)常被爆出漏洞,有的Android開發(fā)者只是對App進行混淆代碼或是防二次打包,對于源碼的保護并不到位,同時也不清楚其中所隱藏的漏洞。
騰訊御安全作為一個專注于為個人和企業(yè)移動應(yīng)用開發(fā)者提供全面的應(yīng)用安全服務(wù)的平臺,其豐富的漏洞特征庫,能夠全面覆蓋已知漏洞,可對99%的安卓APP進行漏洞風險掃描。同時,基于廣大用戶的漏洞掃描案例,總結(jié)出以下幾點常見的漏洞。
一、門戶大開:常見漏洞***的3個入口
1)導(dǎo)出組件
導(dǎo)出組件,是Android上最常見,門檻最低的***入口,如manifest中組件設(shè)置不當?shù)脑挘痛嬖诒蝗我庹{(diào)用的可能,最常見的是拒絕服務(wù)***。
示例:
防護措施:對外暴露的組件要做到“最小化”輸出,發(fā)布前做好安全檢測分析,提前發(fā)現(xiàn)風險。
2)端口開放
應(yīng)用通過監(jiān)聽固定接口,使用socket來實現(xiàn)本地IPC、遠程網(wǎng)絡(luò)通信。這種監(jiān)聽固定端口的方式很容易被局域網(wǎng)內(nèi)***程序探測到,這些暴露的socket如果沒有協(xié)議加密、沒有權(quán)限控制的話,就很容被利用,作為***入口,輕者拒絕服務(wù),重者遠程代碼執(zhí)行。
示例:固定端口的監(jiān)控掃描
Socket實現(xiàn),如果不做訪問控制,協(xié)議安全性又比較弱,那后果就嚴重了。
防護措施:端口隨機化,訪問要控制,協(xié)議要加密。
3)插件加載
插件加載設(shè)計很普遍, so加載、dex加載…..但因為插件存儲不安全,很容易被人篡改和替換,如果沒有在加載過程做校驗的話,那就有可能被人用偽造的插件來進行任意代碼執(zhí)行。
示例:公共目錄存儲的插件
Dex加載沒校驗,存在任意代碼執(zhí)行的風險…
用System.load來進行so加載,如無校驗,存在被替換、篡改的風險。
防護措施:存儲要安全,別讓別人碰。加載要校驗,我的地盤我做主。
二、偷梁換柱:常見漏洞***的2種手段
1)偽造通信
常見偽造通信類型有:進程內(nèi)組件間的Intent通信、遠程Service通信、Socket的IPC通信等,如果沒有嚴格的通信校驗,***者通過偽造通信數(shù)據(jù),達到不可告人的目的。
示例:通過暴露的遠程service,偽造通信數(shù)據(jù),實現(xiàn)應(yīng)用程序遠程下載和安裝。
偽造socket通信數(shù)據(jù),實現(xiàn)應(yīng)用特定指令執(zhí)行,盜取敏感數(shù)據(jù)。
防護措施:協(xié)議數(shù)據(jù)要加密,通信訪問要驗證。
2)偽造文件
文件權(quán)限和校驗的失控,讓***者有機可乘。代碼文件存放在公共目錄,程序沒有對文件進行完整性校驗,就很容易造成應(yīng)用的代碼被劫持,從而進行注入。
示例:sdcard公共目錄下的so文件
應(yīng)用程序的進程信息:
代碼注入:
、
防護措施:注意插件存儲安全,盡量避免公共目錄存儲;同時插件加載要校驗,以免被劫持注入。
APP作為通向海量用戶信息的入口,涉及到直接的金錢交易或個人隱私相關(guān)的應(yīng)用的重要性是不言而喻的。而Android應(yīng)用市場對app的審核相對iOS來說也比較寬泛,為很多漏洞提供了可乘之機。
所以安卓應(yīng)用程序要做好自身的防護措施,同時借助專業(yè)的安全服務(wù)平臺,如騰訊御安全,除了擁有專業(yè)級加固解決方案之外,還提供APP漏洞掃描服務(wù),開發(fā)者可發(fā)現(xiàn)常見的漏洞及風險,完美避開大規(guī)模工具***。有需求的團隊可以登錄騰訊御安全官網(wǎng)試用,或聯(lián)系我們(郵箱:yaq@tencent.com)。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。