賽門(mén)鐵克高級(jí)技術(shù)總監(jiān)Gary Phillips

賽門(mén)鐵克高級(jí)技術(shù)總監(jiān)、SAFECode董事會(huì)成員Gary Phillips稱,隨著應(yīng)用程序?qū)⒏嗟牟渴鸬教摂M化環(huán)境、云計(jì)算環(huán)境甚至是移動(dòng)平臺(tái)中,一個(gè)安全的程序設(shè)計(jì)要在開(kāi)發(fā)完成前和開(kāi)發(fā)期間都對(duì)應(yīng)用程序進(jìn)行測(cè)試。

據(jù)Phillips透露,安全的代碼開(kāi)發(fā)實(shí)例正在商務(wù)供應(yīng)商之間興起。最新的IBM X-Force 2011 年中趨勢(shì)與威脅報(bào)告中提到的Web應(yīng)用程序漏洞在減少也證明了這一點(diǎn)。報(bào)告中提到這是六年來(lái)Web應(yīng)用程序漏洞第一次出現(xiàn)減少,從去年的49%降到了 37%(占2011上半年所報(bào)告漏洞總和的比例)。

IBM高級(jí)安全總監(jiān)Jack Danahy

另一方面,IBM高級(jí)安全總監(jiān)Jack Danahy稱,漏洞的數(shù)量翻了三番,而寫(xiě)這份報(bào)告的人預(yù)計(jì)移動(dòng)漏洞的數(shù)量在2012年會(huì)翻兩倍。SQL注入,XSS,輸入驗(yàn)證和大量傳統(tǒng)攻擊方法都盛行于Web應(yīng)用程序當(dāng)中,這些則不應(yīng)該帶到云中去。

為了在應(yīng)用完成開(kāi)發(fā)前確認(rèn)哪些漏洞可能被攻擊者利用,必須從整體的角度看應(yīng)用。應(yīng)用開(kāi)發(fā)顧問(wèn)公司Denim 集團(tuán)CTO Dan Cornell稱這就是通常所說(shuō)的攻擊面。

OWASP,SAFECode,云安全聯(lián)盟提供的工具,庫(kù)和API等可以幫助程序員模擬應(yīng)用威脅,發(fā)現(xiàn)應(yīng)用程序中可能出現(xiàn)故障的代碼,調(diào)用,互動(dòng)和功能。

Cornell稱,從確定數(shù)據(jù)價(jià)值開(kāi)始,應(yīng)用程序會(huì)包含或訪問(wèn)。例如,如果涉及個(gè)人可識(shí)別信息(PII),醫(yī)療保健或金融信息,應(yīng)用就會(huì)成為目標(biāo)。然后,通過(guò)查看應(yīng)用的單獨(dú)組件模擬威脅。

Cornell建議企業(yè)設(shè)計(jì)安全的工作區(qū),如連接器,API,增強(qiáng)系統(tǒng)??赡艿脑?,使用新的應(yīng)用設(shè)計(jì)作為升級(jí)舊的不安全系統(tǒng)的契機(jī)。

配置

Verizon公司Terremark安全方案總監(jiān)Omar Khawaja

Verizon云服務(wù)子公司Terremark安全方案總監(jiān)Omar Khawaja舉例稱,假設(shè)一個(gè)客戶面對(duì)的是處理金融交易的Web應(yīng)用程序。在設(shè)計(jì)期間,必須在Web和交易服務(wù)器之間創(chuàng)建信任邊界來(lái)保護(hù)數(shù)據(jù)。這看似明顯的設(shè)計(jì)點(diǎn),但是在虛擬環(huán)境和云環(huán)境中,這些信任區(qū)域常被忽視了。

賽門(mén)鐵克Phillips稱,當(dāng)設(shè)計(jì)商務(wù)云服務(wù)供應(yīng)商時(shí),安全的區(qū)域也包括云中的客戶是如何彼此分隔的。

身份與訪問(wèn)管理供應(yīng)商Symplified公司CEO Eric Olden稱,身份聯(lián)盟,驗(yàn)證和訪問(wèn)標(biāo)準(zhǔn)——如OAUTH,XACML,SCIM和SAML——現(xiàn)正處于設(shè)計(jì)種,目的就是滿足訪問(wèn)需求。

業(yè)內(nèi)專家認(rèn)為敏感數(shù)據(jù)加密還應(yīng)該與驗(yàn)證聯(lián)系起來(lái)。不過(guò),據(jù)云安全聯(lián)盟去年十一月發(fā)布的一項(xiàng)調(diào)查結(jié)果顯示,云加密產(chǎn)品并不是非常有效。該份由Trend Micro贊助的報(bào)告推薦給傳輸,存儲(chǔ)中的數(shù)據(jù)設(shè)置多層加密,并進(jìn)行密鑰管理。

▲Voltage安全產(chǎn)品管理副總裁Mark Bower

Voltage安全產(chǎn)品管理副總裁Mark Bower透露,驗(yàn)證應(yīng)該與數(shù)據(jù)加密聯(lián)系起來(lái)以減少實(shí)時(shí)數(shù)據(jù)的暴露——特別是新技術(shù),如隔世保存加密。他說(shuō),“加密還應(yīng)該用于保護(hù)授權(quán)用戶的實(shí)時(shí)數(shù)據(jù),例如,為了驗(yàn)證一個(gè)交易或是將用戶與其賬號(hào)匹配,運(yùn)營(yíng)商或許只要查看社??ㄌ?hào)碼碼的最后四位數(shù)字或者只查看信用卡號(hào)碼的最后一節(jié)。”

目前,大多數(shù)企業(yè)應(yīng)該可以用數(shù)據(jù)集中方式加密自己的敏感數(shù)據(jù),這意味著存儲(chǔ)中,傳輸中和使用中的敏感信息都處于加密狀態(tài)。如果企業(yè)過(guò)渡到IaaS,他們就要為自己的應(yīng)用負(fù)責(zé),或許他們可以通過(guò)基于標(biāo)準(zhǔn)的API在云中復(fù)制相同技術(shù)。

如果購(gòu)買(mǎi)SaaS,企業(yè)應(yīng)該了解供應(yīng)商如何幫助自己加密數(shù)據(jù),特別是如何進(jìn)行云中的密鑰管理。例如,Voltage為Voltage云服務(wù)文件和郵件加密客戶管理云中密鑰。企業(yè)或許也想用on-premise密鑰服務(wù)器控制自己的密鑰。

OWASP Manico稱,當(dāng)思考云中的應(yīng)用程序部署時(shí),托管環(huán)境的特殊類(lèi)型決定了安全功能(如加密和監(jiān)控)會(huì)怎樣獲得支持。

例如,在IaaS模式中,要求這項(xiàng)服務(wù)的企業(yè)要對(duì)自己的應(yīng)用程序負(fù)責(zé)。而如果是SaaS,供應(yīng)商則會(huì)為企業(yè)管理應(yīng)用。SaaS服務(wù)供應(yīng)商還能管理云中的安全應(yīng)用,并為客戶提供新的安全服務(wù)。

可視性和維護(hù)

在研發(fā)的關(guān)鍵階段和應(yīng)用程序投入生產(chǎn)后,靜態(tài)分析和功能性測(cè)試也同樣重要。所以必須在設(shè)計(jì),開(kāi)發(fā)和后期生產(chǎn)期間測(cè)試應(yīng)用程序以維護(hù)應(yīng)用程序的安全態(tài)勢(shì)。

賽門(mén)鐵克Phillips稱,這意味著設(shè)計(jì)必須包括基本的監(jiān)控支持,如產(chǎn)生有用的日志,數(shù)據(jù)和訪問(wèn)注冊(cè)的更改。

有大量工具與服務(wù)可用來(lái)測(cè)試Web應(yīng)用程序看是否存在SQL注入,XSS和其他源于代碼的功能型漏洞。不過(guò),專家認(rèn)為在公共云應(yīng)用的可視性方面,企業(yè)必須依靠其云服務(wù)供應(yīng)商提供的監(jiān)控工具來(lái)監(jiān)視自己的數(shù)據(jù)。對(duì)供應(yīng)商網(wǎng)絡(luò)的監(jiān)視主要依靠合同和年度審核。

安全的設(shè)計(jì)需要在業(yè)務(wù),開(kāi)發(fā)和安全部門(mén)之間共同計(jì)劃和協(xié)調(diào)。做起來(lái)雖難但并非不可能。

程序安全設(shè)計(jì)的資源

為程序員尋找指導(dǎo)方針比為設(shè)計(jì)師和規(guī)劃者尋找指導(dǎo)方針要容易。下面就是例子:

云安全聯(lián)盟有很多用于開(kāi)發(fā)和部署云的指導(dǎo)方針,包括:

• 云計(jì)算重點(diǎn)領(lǐng)域安全指南——描述了云類(lèi)型和組成要素以及映射出架構(gòu),管理和運(yùn)營(yíng)中關(guān)鍵區(qū)域威脅的方法。

• 一個(gè)Cloud Controls Matrix樣式表為云服務(wù)運(yùn)營(yíng)商和客戶列出了控件區(qū)域,規(guī)格和架構(gòu)組件。

• 訪問(wèn)公共云,私有云和混合云環(huán)境的工具集

OWASP有一個(gè)常用的代碼審查指南,它將安全,設(shè)計(jì)和業(yè)務(wù)環(huán)境聯(lián)系起來(lái)。其他流行的資源包括:

• 給程序員的安全小抄;

• 威脅建模指導(dǎo);

• 安全編碼與測(cè)試指引。

SAFECode最近發(fā)布了安全軟件開(kāi)發(fā)基礎(chǔ)實(shí)例的第二版,其他資源包括:

• 供應(yīng)鏈應(yīng)用的軟件保障;

• 軟件完整性控制的概述;

• 軟件安全工程師培訓(xùn)。

程序安全設(shè)計(jì)要點(diǎn)

不論應(yīng)用程序被部署在何處,基礎(chǔ)設(shè)計(jì)架構(gòu)都適用。在賽門(mén)鐵克案例中,開(kāi)發(fā)團(tuán)隊(duì)都遵循這些基本設(shè)計(jì)原則:

1、在信任邊界數(shù)據(jù)重復(fù)驗(yàn)證與保護(hù)

在信任邊界進(jìn)行的數(shù)據(jù)傳輸必須受到保護(hù),如在跨優(yōu)先級(jí)別的處理或是兩個(gè)獨(dú)立電腦之間進(jìn)行處理。數(shù)據(jù)的類(lèi)型,數(shù)值范圍,客戶端和服務(wù)器端的語(yǔ)義都必須進(jìn)行驗(yàn)證。數(shù)據(jù)保護(hù)可通過(guò)數(shù)據(jù)簽名這類(lèi)機(jī)制來(lái)部署。

2、服務(wù)器和用戶代理的共同驗(yàn)證

由于許多不受信任的實(shí)體都涉及用戶代理和服務(wù)之間的互動(dòng),所以用戶代理和服務(wù)必須創(chuàng)建共同驗(yàn)證,而最好是通過(guò)PKI和多要素驗(yàn)證實(shí)現(xiàn)共同驗(yàn)證。

3、防止偷聽(tīng)——強(qiáng)加密

敏感數(shù)據(jù)和關(guān)鍵數(shù)據(jù)可能暴露在用戶代理和服務(wù)器之間不受信任的實(shí)體面前。FIPS 140-2服從加密法則必須用于傳輸中的數(shù)據(jù)。即便是閑置的敏感數(shù)據(jù)也必須加密。要使用加強(qiáng)型密碼增加解密的難度。

4、會(huì)話超時(shí)和一次性密碼

長(zhǎng)時(shí)會(huì)話可能導(dǎo)致攻擊重現(xiàn)和會(huì)話劫持。特別是在云應(yīng)用中,一次性密碼和短時(shí)會(huì)話可以顯著降低這類(lèi)漏洞的威脅。

5、最小特權(quán)

由多個(gè)要素組成的應(yīng)用程序只能授予最低許可和最小權(quán)限,以減少攻擊者提高優(yōu)先權(quán)帶來(lái)的風(fēng)險(xiǎn)。

6、分區(qū)

隔開(kāi)開(kāi)規(guī)定的權(quán)限和資源,從而減少資源消耗和ddos漏洞。

分享到

huanghui

相關(guān)推薦