朱冠達(dá) 吳江麗 劉侃
摘 要:隨著科技的不斷發(fā)展與更新,手機(jī)等產(chǎn)品已經(jīng)成為了人們的生活必需品。雖然網(wǎng)絡(luò)的普及為我們的生活帶來(lái)了很多的便利,但是正因?yàn)樗械氖虑槎加袃擅嫘砸粯?,網(wǎng)絡(luò)安全是我們使用網(wǎng)絡(luò)時(shí)的一大威脅。而網(wǎng)絡(luò)安全問(wèn)題因?yàn)閲?yán)重的威脅著手機(jī)等產(chǎn)品客戶端的信息安全性,對(duì)人們的生活、工作帶了了很多的弊端。因此,研究移動(dòng)應(yīng)用的安全軟件是十分必要的,可以為提高手機(jī)客戶端的安全性能提供不同的研究思路?;诖?,本文主要研究IBM Security AppScan實(shí)現(xiàn)移動(dòng)應(yīng)用安全測(cè)試自動(dòng)化的方式。
關(guān)鍵詞:IBM Security AppScan 移動(dòng)應(yīng)用 安全測(cè)試
中圖分類(lèi)號(hào):TP311.52 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2018)09(c)-0012-02
最近幾年隨著互聯(lián)網(wǎng)的都逐漸發(fā)展,智能終端的興起帶動(dòng)了大部分的客戶逐漸由PC端轉(zhuǎn)站移動(dòng)上網(wǎng),移動(dòng)互聯(lián)網(wǎng)逐漸成為了一種生活模式,覆蓋生活中的各方面,當(dāng)然辦公室應(yīng)用領(lǐng)域也不例外,這在一定程度上面提高了辦公室的工作效率也實(shí)現(xiàn)了隨時(shí)隨地辦公的目的。由于移動(dòng)應(yīng)用逐漸地滲透到人們的生活工作中,其安全性也逐漸的收到人們的關(guān)注,一個(gè)很小的移動(dòng)應(yīng)用安全漏洞就有可能會(huì)造成很大的經(jīng)濟(jì)人力損失,所以保證移動(dòng)應(yīng)用安全性是一個(gè)急需解決的問(wèn)題。
1 移動(dòng)應(yīng)用的安全性特點(diǎn)
移動(dòng)應(yīng)用主要分為客戶端和服務(wù)端,客戶端和服務(wù)端的數(shù)據(jù)交互大部分都是用Web service來(lái)進(jìn)行的。Web service是用應(yīng)用程序一個(gè)與平臺(tái)與編程語(yǔ)言不相關(guān)的方法進(jìn)行相互通信的技術(shù),Web service大部分都是用SOAP協(xié)議來(lái)完成數(shù)據(jù)交互,這些Web service大部分有準(zhǔn)確的WSDL文件來(lái)精準(zhǔn)地描述其接口規(guī)范。可以通過(guò)掃描WSDL文件,能很簡(jiǎn)單地從根目錄持續(xù)得到所有接口的輸出輸入?yún)?shù),與此同時(shí)還可以做到分析和模擬黑客攻擊找到漏洞。使用Appscan,工作人員幾下URL或WSDL文件地址,就可以完成支柱式的搜尋,找出安全問(wèn)題的隱患,尋找出待測(cè)應(yīng)用的漏洞。
移動(dòng)端應(yīng)用程序是通過(guò)移動(dòng)平臺(tái)客戶端和服務(wù)器一起組成,移動(dòng)平臺(tái)客戶端和服務(wù)器的中間存在著有多種通信協(xié)議,為了確保準(zhǔn)確地測(cè)試出移動(dòng)應(yīng)用程序的安全隱患問(wèn)題,在現(xiàn)實(shí)中通常采用探索、測(cè)試、再探索、再測(cè)試的方法,或許在AppScan中配置參數(shù)和模式讓最終的結(jié)果更精準(zhǔn)。
2 配置AppScan測(cè)試移動(dòng)應(yīng)用程序
一般在程序編碼完成之后需要首先進(jìn)行測(cè)試,檢測(cè)其性能。而在檢測(cè)之前首先需要將軟件與對(duì)應(yīng)的客戶端、服務(wù)器相連接,然后設(shè)置 AppScan程序。之后,AppScan控制的主程序就可以對(duì)連接的客戶端、服務(wù)器進(jìn)行實(shí)時(shí)監(jiān)控,并且對(duì)客戶端與服務(wù)器之間的信息交流進(jìn)行反饋,在必要的時(shí)候攔截他們之間鏈接的信號(hào),對(duì)移動(dòng)端安裝的軟件進(jìn)行安全檢測(cè)。目前,AppScan程序主要是采用兩種配置方式。
2.1 通過(guò)端口映射工具配置移動(dòng)端和AppScan之間的數(shù)據(jù)連接
首先,在移動(dòng)設(shè)備的一個(gè)端口的映射配置程序中設(shè)置AppScan程序,然后與服務(wù)器進(jìn)行連接。目前采用的大多數(shù)是rinetd進(jìn)行配置,它具有定向傳輸?shù)墓δ?,并且是具有安全控制協(xié)議的一個(gè)源軟件。因此,客戶端只要設(shè)置在發(fā)送文件的時(shí)候自動(dòng)啟動(dòng)rinetd軟件,就可以保障文件的安全性。
端口映射工具安裝、設(shè)置完成之后,需要根據(jù)客戶端需要連接的網(wǎng)絡(luò)特點(diǎn),將移動(dòng)客戶端中已經(jīng)安裝的各種軟件、程序聯(lián)網(wǎng),上傳到AppScan中進(jìn)行檢測(cè)。此時(shí),手機(jī)客戶端需要選擇連接無(wú)線網(wǎng)絡(luò),在設(shè)置網(wǎng)絡(luò)連接的事時(shí)候的代理器為HTTP,然后根據(jù)設(shè)備上的端口和服務(wù)器的型號(hào)進(jìn)行設(shè)置。一般服務(wù)器的IP地址就是客戶端連接的AppScan所在端口的地址,例如端口為 rinetd.conf的AppScan,在移動(dòng)客戶端與其連接之后進(jìn)行常規(guī)掃描的時(shí)候會(huì)自動(dòng)啟動(dòng)AppScan,然后進(jìn)行程序設(shè)置,這個(gè)時(shí)候 rinetd.conf就是該客戶端的IP地址。
探索站點(diǎn)的常用方法:外部設(shè)備或者手機(jī)客戶端,在點(diǎn)擊“下一步”之后,會(huì)自動(dòng)彈出“選擇代理端口”“記錄位置”設(shè)置選項(xiàng),一般選擇rinetd.conf 端口即可,選擇“該機(jī)器上的外部客戶機(jī)”為位置選擇,然后就可以進(jìn)行下一步設(shè)置。一般點(diǎn)擊“下一步”之后會(huì)自動(dòng)跳轉(zhuǎn)到“登陸管理”頁(yè)面,在這個(gè)界面中就可以點(diǎn)擊已經(jīng)安裝的應(yīng)用程序軟件,進(jìn)行軟件登錄和使用,這個(gè)時(shí)候AppScan會(huì)將用戶輸入的“用戶名”和對(duì)應(yīng)的“密碼”進(jìn)行記憶和儲(chǔ)存。因?yàn)锳ppScan具有安全性設(shè)置特點(diǎn),有時(shí)候無(wú)法直接登錄已經(jīng)輸入過(guò)的用戶信息,這個(gè)時(shí)候需要進(jìn)入到掃描頁(yè)面,通過(guò)“完全掃描配置→登陸管理→自動(dòng)登陸”來(lái)重新設(shè)置,這樣就可以解決這一問(wèn)題。測(cè)試方法:一般先導(dǎo)入需要測(cè)試的文件,然后進(jìn)行特定的文件掃描。在上述操作都已經(jīng)全部完成之后,AppScan會(huì)開(kāi)啟外部非客戶端流量模式,相關(guān)人員只要手動(dòng)輸入移動(dòng)端IP地址就可以立即查詢相關(guān)的記錄
2.2 通過(guò)AppScan代理模式直接建立和移動(dòng)端的數(shù)據(jù)鏈接
這一模式需要客戶端配置AppScan9及以上的軟件版本。打開(kāi)文件初始界面,選擇“新建文件夾”,界面會(huì)彈出不同規(guī)格的文件類(lèi)型,選擇“常規(guī)模板”。然后進(jìn)入軟件安裝的“向?qū)ы?yè)面”,選擇“外部設(shè)備/客戶機(jī)”為探索站點(diǎn)。然后在下一步種勾選任意一個(gè)空閑端口為代理端口,選擇本機(jī)IP為IP地址。接下來(lái)的設(shè)置同文章中的上一個(gè)步驟一致。在外部流量記錄器設(shè)置中點(diǎn)擊“記錄代理配置”,可以修改客戶端的IP名稱(chēng)和網(wǎng)絡(luò)掩碼。所有的步驟操作完成之后,需要在客戶端上安裝AppScan SSL,同時(shí)導(dǎo)出安全證書(shū)。
3 使用AppScan測(cè)試移動(dòng)應(yīng)用程序
在完成配置后,與此同時(shí)AppScan作為代理會(huì)把客戶端與服務(wù)器端的交互,并基于用戶行為去完成探測(cè)和分析記錄。但是安全性分析的操作是基于用戶對(duì)移動(dòng)應(yīng)用程序的,所以迭代的方式更有利于確保測(cè)試質(zhì)量。在操作中,測(cè)試人員一般先采用“探索”,其次在移動(dòng)端完整的點(diǎn)擊全部的頁(yè)面以及輸入控件,AppScan代理能把這些流量信息自動(dòng)記錄下來(lái)。接著點(diǎn)擊“測(cè)試”,能看到這一輪的測(cè)試結(jié)果。測(cè)試人員會(huì)確認(rèn)接下來(lái)測(cè)試的主要目的,通常會(huì)在高發(fā)區(qū)域進(jìn)行探索,從而發(fā)現(xiàn)問(wèn)題所在。經(jīng)過(guò)連續(xù)的迭代,能使安全測(cè)試到達(dá)很高的覆蓋率。
4 結(jié)語(yǔ)
總的來(lái)說(shuō),在今天能被軟件安全性脅迫,截然不同的是我們信息安全工程師數(shù)量上的缺失。與此同時(shí),在自動(dòng)化安全測(cè)試的愈發(fā)重要下,業(yè)界主流的黑盒安全自動(dòng)化測(cè)試工具主要針對(duì)傳統(tǒng)的Web程序,對(duì)主要依賴(lài)安全測(cè)試工程師的移動(dòng)安全性,自動(dòng)化相比較低。本文謹(jǐn)提供了需要大量人力來(lái)測(cè)驗(yàn)bug的自動(dòng)化思路,僅供從業(yè)人員參考。
參考文獻(xiàn)
[1] 張恩海,王鐸,于晉瑄.移動(dòng)終端應(yīng)用層軟件自動(dòng)化測(cè)試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].科技資訊,2015,13(3):12-13.
[2] 余勇,郭騫.基于Smali Code的移動(dòng)應(yīng)用行為模型的自動(dòng)構(gòu)建方法[J].計(jì)算機(jī)科學(xué),2017,44(11):207-220.
[3] 劉艷.移動(dòng)應(yīng)用軟件安全性測(cè)試研究[J].數(shù)碼世界,2017(12):544.