隨著移動互聯(lián)網(wǎng)的普及,企業(yè)越來越需要開發(fā)適用于多種移動平臺的應(yīng)用程序,從而深化其客戶體驗,擴展其顧客購買產(chǎn)品的方式方法。
對移動應(yīng)用程序的這種需求推動著企業(yè)開發(fā)。但是,需要注意的是,與移動應(yīng)用程序相關(guān)的風(fēng)險不同于傳統(tǒng)的企業(yè)軟件。我們看到,在移動軟件領(lǐng)域,安全性很少成為開發(fā)過程中的重要因素。
業(yè)務(wù)經(jīng)理需要確保銷售和IT管理人員在構(gòu)建移動應(yīng)用程序時能夠保護客戶的數(shù)據(jù),不會向外部的攻擊者打開無法預(yù)料的安全漏洞。下面,我們給出企業(yè)在開發(fā)移動應(yīng)用程序之前需要考慮的八大問題:
一、移動設(shè)備上的軟件風(fēng)險與傳統(tǒng)的企業(yè)軟件有什么不同?
移動設(shè)備應(yīng)用程序的定義決定了它存在于企業(yè)環(huán)境之外的手持設(shè)備上,如一個客戶的設(shè)備。不妨設(shè)想一下這種設(shè)備被竊取,而其中的軟件又被惡意人員實施了逆向工程的情況。還有,如果某人正在胡亂地修補、改變你的移動應(yīng)用程序,你幾乎是很難知道的。對于攻擊的預(yù)防和檢測,必須依賴于檢測移動設(shè)備與內(nèi)部服務(wù)器的交互方式上。
二、這些移動應(yīng)用程序如何與內(nèi)部服務(wù)器交互?
許多人將對移動安全的重視主要放在了設(shè)備的安全上。事實上,多數(shù)風(fēng)險存在于移動設(shè)備與面向外部的服務(wù)器進行交互的過程中。企業(yè)的風(fēng)險建模和測試方式應(yīng)該反映這個現(xiàn)實問題。如果設(shè)備被竊取,其中的代碼被逆向工程,適當(dāng)水平的攻擊者就可以確認接收內(nèi)部請求(即移動設(shè)備發(fā)送的請求)的目標(biāo)服務(wù)器。這樣,服務(wù)器就必須能夠承受不同的應(yīng)用程序攻擊和網(wǎng)絡(luò)攻擊。
三、企業(yè)內(nèi)部擁有管理這種風(fēng)險的技能和技巧嗎?
由于對移動設(shè)備應(yīng)用程序的需求不斷增長,即使開發(fā)經(jīng)驗不太豐富的軟件開發(fā)人員也受到企業(yè)領(lǐng)導(dǎo)的青睞。但是,企業(yè)應(yīng)重視移動開發(fā)領(lǐng)域的內(nèi)部技巧,或招聘適當(dāng)?shù)囊苿影踩珜<遥靡詮娀苿討?yīng)用程序的安全性。
四.移動代碼的開發(fā)人員是否比其它開發(fā)人員更理解安全概念呢?
不幸的是,許多人的回答者否定的,但移動代碼的安全問題必然會改變這種狀況。如今,該領(lǐng)域中的許多才能都來自現(xiàn)實世界,來自封閉的設(shè)備開發(fā)領(lǐng)域。用這種才能開發(fā)的移動應(yīng)用程序只能是過于粗糙,無法承受來自互聯(lián)網(wǎng)的攻擊的。而且,如果開發(fā)人員對移動環(huán)境不夠熟悉,會帶來一些安全隱患。
五.在完成一次會話后,能否確保機密的客戶信息不留在移動設(shè)備上?
軟件開發(fā)人員應(yīng)當(dāng)編寫這樣的代碼:在客戶已經(jīng)完成瀏覽會話后,不準(zhǔn)許再保留私密數(shù)據(jù)。這是因為有些移動設(shè)備易于攻擊。同時,企業(yè)必須采取措施杜絕某些瀏覽器或操作系統(tǒng)繞過這些控制,要及時修補移動瀏覽器和操作系統(tǒng)的漏洞。
六.一旦與移動應(yīng)用程序相關(guān)的客戶數(shù)據(jù)丟失或受破壞,應(yīng)部署哪些過程進行應(yīng)對呢?
應(yīng)當(dāng)把事件響應(yīng)過程設(shè)計到移動領(lǐng)域中,無論是內(nèi)部人員還是外部人員都應(yīng)如此。要以客戶數(shù)據(jù)的損失情況為基礎(chǔ)進行評估和訓(xùn)練。在某個嚴(yán)重的漏洞被暴光之時,你已經(jīng)準(zhǔn)備好斷開移動設(shè)備的措施了嗎?
七.什么機構(gòu)(企業(yè)、設(shè)備供應(yīng)商、移動操作系統(tǒng)供應(yīng)商等)需要為安全問題負責(zé)?
在架構(gòu)問題上,企業(yè)都有多種關(guān)鍵的依賴,如果發(fā)生了損害,誰要為環(huán)境的哪個方面負責(zé)呢,是設(shè)備、操作系統(tǒng)或是應(yīng)用程序呢?理解這個問題有助于你管理移動應(yīng)用程序的安全事件。
八.為了開發(fā)更安全的移動應(yīng)用程序,需要部署哪些開發(fā)方法呢?
你要問一下這些問題:考慮到移動環(huán)境所固有的弱點,移動應(yīng)用程序的開發(fā)方法是否已經(jīng)發(fā)生了改變?你為移動代碼制定了哪些編碼標(biāo)準(zhǔn)?如何強化這些標(biāo)準(zhǔn)?經(jīng)常檢查這些標(biāo)準(zhǔn)嗎?是否僅針對高版本的程序檢查標(biāo)準(zhǔn)呢?最先進的移動開發(fā)項目必須遵循企業(yè)的標(biāo)準(zhǔn),這樣才能開發(fā)出更安全的軟件。必須強化、補充這些標(biāo)準(zhǔn),其目的是為了反映與移動應(yīng)用程序有關(guān)的更復(fù)雜的威脅模式。
精明的安全管理人員都應(yīng)當(dāng)在開發(fā)和部署移動應(yīng)用程序前就關(guān)注這些問題,而不是在開發(fā)的后期。任何企業(yè)必須盡快地定義其移動安全的策略,遏制移動應(yīng)用程序給企業(yè)帶來的風(fēng)險。