解讀:
從一個(gè)常規(guī)流程來說,開發(fā)者開發(fā)APP调炬,然后推廣給用戶舱馅,一個(gè)很完美的流程缰泡,用戶如果中毒了,下個(gè)殺毒軟件查殺即可代嗤,用戶如果資料丟失了棘钞,那要怪就只能怪用戶,怪惡意病毒资溃。
根本原因:APP不夠安全
其實(shí)這其中也有開發(fā)者的責(zé)任烈炭,就是開發(fā)者開發(fā)的APP不夠安全,表面上開發(fā)者不要承擔(dān)什么責(zé)任符隙,但是你會(huì)失去用戶,用戶會(huì)往往會(huì)卸掉你的APP拱绑。
對(duì)于一個(gè)小白用戶來說丽蝎,只知道下了某家的APP中毒,趕緊卸載掉屠阻。
其實(shí)目前很多安全公司喜歡轉(zhuǎn)移用戶的視線,出了病毒不怪APP開發(fā)者国觉,只怪病毒,目的很明顯——推廣自己的殺毒軟件痕寓,久而久之,殺毒軟件推廣的很快呻率,開發(fā)者開發(fā)的APP,卻下載的越來越少昭殉,所以開發(fā)者更應(yīng)該保護(hù)自己APP的安全,防止惡意APP挪丢,開發(fā)者就是確保自身利益不會(huì)流失卢厂。
APP有漏洞:所有的知名APP幾乎都有惡意應(yīng)用
市場(chǎng)上很多惡意APP都是知名應(yīng)用,這句話現(xiàn)在其實(shí)可以用另一種說法:所有的知名APP幾乎都有惡意應(yīng)用慎恒,比如《小鱷魚愛洗澡》、《植物大戰(zhàn)僵尸2》死嗦、《憤怒的小鳥》等等哪兒出來呢粒氧?其實(shí)大家都知道,是被黑客惡意篡改后出來的外盯,黑客怎么能修改了你的APP?很明顯饱苟,開發(fā)者的開發(fā)的APP有漏洞。
首先类垦,反編譯漏洞
目前很多安卓應(yīng)用開發(fā)所使用的語言都是java城须,java經(jīng)過編譯后生成一個(gè)dex源程序文件,這個(gè)文件經(jīng)過反編譯后酿傍,可以很輕松的看到源代碼,反編譯的代碼和源代碼幾乎沒有什么區(qū)別氯析,一個(gè)稍微懂點(diǎn)技術(shù)的黑客,使用網(wǎng)上幾款流行的反編譯程序掩缓,把java代碼發(fā)編譯后,即可加入自己的惡意代碼巡通,然后經(jīng)過二次編譯,就可以生成一個(gè)新的APP宴凉,然后提交到應(yīng)用市場(chǎng)上提供用戶下載表悬,這樣一個(gè)正常的APP就變成了惡意APP,用戶只要下載了這個(gè)APP就“中招”蟆沫。
其次,內(nèi)存漏洞
其實(shí)大家都知道戒悠,APP就是一個(gè)程序舟山,下載到手機(jī)上之后,就是一個(gè)文件捏顺,用戶在點(diǎn)擊啟動(dòng)按鈕之后纬黎,程序就會(huì)啟動(dòng),會(huì)在手機(jī)的內(nèi)存中運(yùn)行本今,就會(huì)形成一個(gè)進(jìn)程。進(jìn)程是干嘛的挪凑,就是來存儲(chǔ)用戶數(shù)據(jù)的逛艰,這個(gè)存儲(chǔ)時(shí)動(dòng)態(tài)的,用戶在程序的任何操作都會(huì)被寫進(jìn)內(nèi)存里散怖,比如一個(gè)游戲的分?jǐn)?shù)肄渗,金幣等數(shù)值咬最,并且存放各種數(shù)據(jù)進(jìn)程是獨(dú)立的,不同進(jìn)程互相不影響永乌。這個(gè)時(shí)候,很明白就會(huì)有一個(gè)漏洞圈驼,什么漏洞望几,那就是當(dāng)程序運(yùn)行時(shí),有個(gè)惡意程序修改存儲(chǔ)在手機(jī)上數(shù)據(jù)橄妆,就像你安心的再做公交車,一個(gè)小偷偷偷的把手收到你的口袋里偷走你的錢包一樣矢劲。每個(gè)APP都是一個(gè)獨(dú)立的進(jìn)程慌随,惡意的代碼會(huì)偷偷修改其他APP的進(jìn)程。
再次阁猜,反調(diào)試漏洞
安卓系統(tǒng)允許程序在運(yùn)行時(shí),通過一個(gè)調(diào)試程序?qū)PP進(jìn)行調(diào)試黄刚,這個(gè)調(diào)試程序擁有手機(jī)最高的權(quán)限民效,一般情況下憔维,這個(gè)權(quán)限只是方便開發(fā)者對(duì)自己開發(fā)的APP進(jìn)行調(diào)試的畏邢。可是程储,一些黑客,卻利用這個(gè)功能用來搞破壞章鲤。比如,當(dāng)用戶使用支付軟件的時(shí)候斟或,偷走用戶的支付口令集嵌;當(dāng)用戶在使用發(fā)短信功能時(shí)候,偷走用戶的短信記錄……等很多惡意手段都可以利用這個(gè)漏洞根欧。
綜上所述,一款A(yù)PP可能還有其他漏洞酥泛,當(dāng)然上面所提的幾個(gè)漏洞是主要的,正所謂道高一尺一次魔高一丈柔袁,雖然一些開發(fā)者在寫代碼時(shí)异逐,做了一些安全保護(hù)措施,但是要想真正的做到APP安全灰瞻,就需要更加專業(yè)的手段,甚至需要更加專業(yè)的安全公司如鼎源科技(全稱:北京鼎源科技有限公司)來做燎竖。
開發(fā)者需要哪些安全保護(hù)要销?
很明顯,針對(duì)上述的漏洞的安全保護(hù)都需要蕉陋。首先拨扶,針對(duì)反編譯漏洞,需要代碼混淆缩举,更深一個(gè)層次的就是代碼加密,通過對(duì)源代碼加密仅孩,一方面保護(hù)APP源代碼的完整性,另一方面京腥,防止了黑客對(duì)APP的破壞溅蛉,同時(shí)數(shù)據(jù)加密,還可以防止二次打包惡意破船侧。
其次,內(nèi)存漏洞预柒,對(duì)一些應(yīng)用數(shù)值做打散處理。比如某個(gè)游戲的金幣數(shù)值為600時(shí)宜鸯,在內(nèi)存存儲(chǔ)時(shí)做打散處理遮怜,防止一些游戲修改器可以直接讀取完整的內(nèi)存數(shù)據(jù)做修改。
再次奈泪,存檔數(shù)據(jù)篡改漏洞,傳統(tǒng)校驗(yàn)的處理邏輯很容易被分析出來拜姿,只有從更底層的數(shù)據(jù)加密保護(hù)冯遂,才能保證數(shù)據(jù)的安全。
隨著傳統(tǒng)互聯(lián)網(wǎng)和傳統(tǒng)企業(yè)的移動(dòng)互聯(lián)網(wǎng)化壁却,越來越多的企業(yè)開始推出自己的APP裸准,APP的安全也成了行業(yè)的一大安全問題,一方面不僅要保護(hù)手機(jī)用戶的安全炒俱,還要保護(hù)開發(fā)者的安全爪膊, 開發(fā)者做為APP的源頭砸王,更是安全之重,從源頭上對(duì)APP做保護(hù)谦铃,在保護(hù)開發(fā)者自身利益和用戶信息安全的同時(shí),更是在保護(hù)移動(dòng)互聯(lián)網(wǎng)行業(yè)健康快速發(fā)展驹闰。