◆王輝鵬
移動(dòng)應(yīng)用軟件架構(gòu)安全技術(shù)研究
◆王輝鵬
(廣州供電局有限公司 廣東 510620)
TD-LTE網(wǎng)絡(luò)、單片機(jī)等技術(shù)的發(fā)展和應(yīng)用,有效促進(jìn)了智能移動(dòng)設(shè)備的普及,比如智能手機(jī)、平板電腦等,這些移動(dòng)設(shè)備部署的應(yīng)用軟件也越來(lái)越廣泛,提高了人們社交通訊、在線學(xué)習(xí)、智能旅游、移動(dòng)辦公的便捷性,但是移動(dòng)應(yīng)用軟件架構(gòu)也面臨著較多的安全威脅,比如勒索病毒、DDOS攻擊等,這些木馬病毒利用移動(dòng)應(yīng)用軟件架構(gòu)通信接口存在的漏洞,大肆攻擊移動(dòng)應(yīng)用軟件,給使用者帶來(lái)了極大的損失。本文基于筆者多年的工作實(shí)踐,詳細(xì)地描述移動(dòng)應(yīng)用軟件架構(gòu)特點(diǎn)及其面臨的安全威脅,同時(shí)利用先進(jìn)的免疫網(wǎng)絡(luò)、非對(duì)稱(chēng)加密、訪問(wèn)控制、安全訪問(wèn)等技術(shù)進(jìn)一步提高系統(tǒng)移動(dòng)應(yīng)用軟件的防御能力,具有重要的作用和意義。
移動(dòng)應(yīng)用軟件;四層架構(gòu);勒索病毒;非對(duì)稱(chēng)加密
移動(dòng)通信已經(jīng)進(jìn)入到4G和5G時(shí)代,為人們提供了更高的移動(dòng)通信帶寬,基于移動(dòng)通信的智能設(shè)備也層出不窮,比如華為P20、三星蓋世S9、蘋(píng)果智能手機(jī)、平板電腦等,這些智能設(shè)備承載的應(yīng)用軟件也非常多,比如手機(jī)QQ、微信、微博、手機(jī)銀行等,進(jìn)一步提升了移動(dòng)通信應(yīng)用范圍,方便了人們工作、生活和學(xué)習(xí)。移動(dòng)應(yīng)用軟件開(kāi)發(fā)時(shí)采用的架構(gòu)種類(lèi)多種多樣,開(kāi)發(fā)語(yǔ)言也非常多,不同應(yīng)用軟件的模塊在集成時(shí)難免會(huì)存在一些漏洞,因此許多病毒、木馬都利用這些軟件架構(gòu)漏洞進(jìn)行攻擊,比如勒索病毒、DDOS攻擊等,可以盜竊應(yīng)用軟件的登錄用戶(hù)名和密碼,破壞用戶(hù)數(shù)據(jù)的完整性和安全性,給人們帶來(lái)了嚴(yán)重的財(cái)產(chǎn)損失[1]。
移動(dòng)應(yīng)用軟件架構(gòu)是基于PC軟件的基礎(chǔ)改進(jìn)而來(lái)的,其可以更好地適用于移動(dòng)智能設(shè)備,常用的架構(gòu)主要包括經(jīng)典MVC架構(gòu)、三層架構(gòu)和四層架構(gòu)。
(1)經(jīng)典MVC架構(gòu)。經(jīng)典MVC架構(gòu)包括模型層、視圖層、控制器層,模型層可以封裝軟件應(yīng)用數(shù)據(jù),定義軟件操作,包括數(shù)據(jù)計(jì)算邏輯規(guī)則等;視圖層可以為用戶(hù)提供交互界面,響應(yīng)用戶(hù)的邏輯業(yè)務(wù)請(qǐng)求;控制層可以控制視圖層和模型層之間的交互。
(2)三層架構(gòu)。三層架構(gòu)包括表現(xiàn)層(UI)、業(yè)務(wù)邏輯層(BLL)和數(shù)據(jù)訪問(wèn)層(DAL),表現(xiàn)層可以向用戶(hù)展現(xiàn)特定業(yè)務(wù)數(shù)據(jù),采集用戶(hù)輸入信息和操作;業(yè)務(wù)邏輯層可以從DAL中獲取數(shù)據(jù),輸出顯示到UI,完成UI輸出的操作指令和數(shù)據(jù)請(qǐng)求,執(zhí)行業(yè)務(wù)邏輯或訪問(wèn)DAL;數(shù)據(jù)訪問(wèn)層可以直接操作數(shù)據(jù)庫(kù),完成信息的添加、修改、刪除和查詢(xún)。
(3)四層架構(gòu)。四層架構(gòu)是在三層架構(gòu)的基礎(chǔ)上發(fā)展而來(lái)的,添加了業(yè)務(wù)規(guī)則層,將三層架構(gòu)的業(yè)務(wù)邏輯層拆分為業(yè)務(wù)邏輯和業(yè)務(wù)規(guī)則,業(yè)務(wù)規(guī)則可以及時(shí)處理用戶(hù)輸入的不合法信息,同時(shí)還可以及時(shí)處理數(shù)據(jù)庫(kù)操作存在的錯(cuò)誤,增大了業(yè)務(wù)邏輯層的結(jié)構(gòu)清晰度。具體的,四層架構(gòu)分別是表現(xiàn)層、業(yè)務(wù)規(guī)則層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問(wèn)層。
移動(dòng)應(yīng)用軟件架構(gòu)的每一層之間都采用接口進(jìn)行通信,實(shí)現(xiàn)了業(yè)務(wù)的集成和解析,因此在這種集成化模式下難免存在漏洞,如果移動(dòng)應(yīng)用軟件升級(jí)不及時(shí),將會(huì)吸引病毒和木馬攻擊移動(dòng)應(yīng)用軟件[2]。比如2017年初爆發(fā)的勒索病毒,該病毒是一種變異式木馬,感染移動(dòng)應(yīng)用軟件之后將會(huì)阻止用戶(hù)訪問(wèn)文件系統(tǒng)。目前,勒索病毒可以劃分為兩類(lèi),分別是加密型勒索病毒和鎖定型勒索病毒。加密型勒索病毒采用加密算法加密移動(dòng)應(yīng)用軟件,如果想獲得解密密碼就需要支付錢(qián)財(cái)。鎖定型勒索病毒能夠遠(yuǎn)程鎖定移動(dòng)應(yīng)用軟件,用戶(hù)無(wú)法進(jìn)入系統(tǒng)訪問(wèn)數(shù)據(jù)資源。移動(dòng)通信應(yīng)用軟件需要部署于各類(lèi)型通信設(shè)備,并且這些設(shè)備部署的軟件資源、數(shù)據(jù)資源和用戶(hù)資源越來(lái)越多,因此移動(dòng)通信軟件需要與其他軟件一起共享通信平臺(tái),這些應(yīng)用軟件通信過(guò)程中將會(huì)采用很多的無(wú)線通信協(xié)議,共享通信帶寬資源。DDOS攻擊可以利用移動(dòng)應(yīng)用軟件多用戶(hù)多并發(fā)程序在一定時(shí)間內(nèi)占用帶寬資源、通信資源、CPU資源,導(dǎo)致合法的用戶(hù)無(wú)法訪問(wèn)服務(wù)器,因此大大地降低了系統(tǒng)處理效率。2017年12月,我國(guó)移動(dòng)應(yīng)用軟件受到DDOS攻擊超過(guò)億次,造成了數(shù)以萬(wàn)計(jì)的移動(dòng)應(yīng)用軟件下線,嚴(yán)重阻礙了移動(dòng)應(yīng)用軟件通信數(shù)據(jù)共享。目前,DDOS攻擊開(kāi)發(fā)技術(shù)得到了極大的改進(jìn),許多的DDOS攻擊威脅潛藏得更加隱蔽,不再以可執(zhí)行文件的形式傳播,而是采取迂回策略,將自身嵌入到了移動(dòng)應(yīng)用軟件中的文本、圖片、視頻、音頻等數(shù)據(jù)文件中,隱藏的時(shí)間也非常長(zhǎng),不利于殺毒軟件的掃描和發(fā)現(xiàn),無(wú)法及時(shí)地清除病毒。
為了提高移動(dòng)應(yīng)用軟件的安全防御能力,國(guó)內(nèi)外安全研究學(xué)者以及企業(yè)從不同角度構(gòu)建了防御規(guī)則,覆蓋了應(yīng)用軟件架構(gòu)、應(yīng)用軟件通信等方面,進(jìn)一步提高了全環(huán)節(jié)防御鏈條,保證移動(dòng)通信應(yīng)用軟件安全[4]。具體的,移動(dòng)應(yīng)用軟件架構(gòu)安全防御關(guān)鍵技術(shù)包括非對(duì)稱(chēng)加密技術(shù)、安全認(rèn)證技術(shù)、訪問(wèn)控制和免疫網(wǎng)絡(luò)等。
非對(duì)稱(chēng)加密是移動(dòng)應(yīng)用軟件安全的重要保障,非對(duì)稱(chēng)加密技術(shù)包含兩個(gè)關(guān)鍵密鑰,分別是公鑰和私鑰。非對(duì)稱(chēng)加密技術(shù)可以按照Base58轉(zhuǎn)換算法或SHA256哈希算法生成一個(gè)私鑰,私鑰是一串長(zhǎng)度固定的字符串,可以利用另外一個(gè)算法根據(jù)私鑰生成公鑰,公鑰的生成過(guò)程具有不可逆性,同時(shí)SHA256哈希生成的私鑰數(shù)量為2256個(gè),因此當(dāng)前的移動(dòng)應(yīng)用軟件非對(duì)稱(chēng)加密算法很難破解。非對(duì)稱(chēng)加密技術(shù)在移動(dòng)應(yīng)用軟件安全防御系統(tǒng)的應(yīng)用主要包括數(shù)據(jù)加密和數(shù)字簽名。
安全認(rèn)證是保證移動(dòng)應(yīng)用軟件安全的一個(gè)非常關(guān)鍵的技術(shù),其可以利用身份認(rèn)證技術(shù)確認(rèn)軟件操作者身份,為每一個(gè)軟件使用者賦予一組特定的安全認(rèn)證碼,只有該移動(dòng)應(yīng)用軟件識(shí)別用戶(hù)數(shù)字身份,安全認(rèn)證才能夠存儲(chǔ)用戶(hù)身份鑒別信息,保證身份認(rèn)證信息存儲(chǔ)到鑒別數(shù)據(jù)庫(kù)中,用戶(hù)登錄應(yīng)用軟件時(shí)就可以得到驗(yàn)證。
訪問(wèn)控制技術(shù)部署于移動(dòng)應(yīng)用軟件通信協(xié)議堆棧IP傳輸層上,是一種IP數(shù)據(jù)包過(guò)濾器,利用枚舉方法深入分析數(shù)據(jù)包中的相關(guān)內(nèi)容,按照既定規(guī)則進(jìn)行封包操作,禁止一切違反規(guī)則的數(shù)據(jù)包內(nèi)容通過(guò)協(xié)議侵入移動(dòng)應(yīng)用軟件,造成移動(dòng)應(yīng)用軟件的數(shù)據(jù)傳輸中斷,破壞移動(dòng)應(yīng)用軟件數(shù)據(jù)內(nèi)容。
Web安全服務(wù)關(guān)鍵組成部分為表單密碼技術(shù),該技術(shù)可以利用HTTPS對(duì)移動(dòng)應(yīng)用軟件傳輸數(shù)據(jù)進(jìn)行安全加密,引入了128非對(duì)稱(chēng)加密技術(shù),當(dāng)用戶(hù)輸入Web內(nèi)容請(qǐng)求之后即可將信息加密發(fā)送給目的方,網(wǎng)絡(luò)無(wú)法識(shí)別加密數(shù)據(jù)。常見(jiàn)的Web安全服務(wù)技術(shù)很多,Web安全服務(wù)可以針對(duì)HTTP流量進(jìn)行代理,并全面掃描七層數(shù)據(jù),確保網(wǎng)絡(luò)病毒攻擊在到達(dá)Web服務(wù)器之前就將其阻斷。Web安全服務(wù)采用的技術(shù)很多,比如脫殼技術(shù)、自我保護(hù)技術(shù)、修復(fù)技術(shù)、實(shí)時(shí)升級(jí)技術(shù),許多病毒和木馬都隱藏于正常的文件中,利用偽裝侵入移動(dòng)應(yīng)用軟件后再脫殼攻擊,造成數(shù)據(jù)傳輸中斷,移動(dòng)應(yīng)用軟件服務(wù)器保存內(nèi)容遭到破壞。因此,為了能夠防御病毒和木馬,Web安全服務(wù)采用了脫殼技術(shù),其可以對(duì)加殼文件、封裝類(lèi)文件、壓縮文件和加花文件進(jìn)行分析,更好地發(fā)現(xiàn)移動(dòng)應(yīng)用軟件中隱藏的病毒或木馬。
移動(dòng)應(yīng)用軟件架構(gòu)安全設(shè)計(jì)是一個(gè)系統(tǒng)的、復(fù)雜的工程,需要隨時(shí)隨地根據(jù)攻擊威脅提升防御水平,未來(lái)安全防御將會(huì)引入更多的高級(jí)技術(shù),比如模式識(shí)別、數(shù)據(jù)挖掘和深度學(xué)習(xí),從移動(dòng)應(yīng)用架構(gòu)設(shè)計(jì)數(shù)據(jù)、軟件用戶(hù)數(shù)據(jù)、軟件攻擊數(shù)據(jù)中提取潛在的有價(jià)值信息,構(gòu)建應(yīng)用安全防御主題模型,從而分析攻擊威脅存在的概率、受損失程度等,及時(shí)啟動(dòng)防御規(guī)則和工具,進(jìn)一步提高應(yīng)用軟件安全性。
[1]周志強(qiáng).基于移動(dòng)終端的應(yīng)用軟件架構(gòu)研究與設(shè)計(jì)[J]. 中國(guó)科技縱橫,2017.
[2]熊偉,王樂(lè)東,李孟君.基于可信計(jì)算的安卓移動(dòng)智能終端安全加固技術(shù)研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2017.
[3]丁小娜.基于移動(dòng)智能終端安全威脅與防護(hù)技術(shù)的研究[J].數(shù)字技術(shù)與應(yīng)用,2017.
[4]白浩,王朝清.Android系統(tǒng)惡意應(yīng)用程序的研究[J].網(wǎng)絡(luò)空間安全,2017.
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用2018年9期