自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

應(yīng)用程序安全漏洞評估方法剖析

安全 應(yīng)用安全
安全管理人員對以下情景一定不會(huì)陌生:盡管企業(yè)要求安全管理人員保護(hù)企業(yè)業(yè)務(wù),以防受到應(yīng)用程序安全漏洞的威脅,但在企業(yè)部署的數(shù)百個(gè)甚至數(shù)千個(gè)應(yīng)用程序中,很少有應(yīng)用程序進(jìn)行了充分的安全評估。

安全管理人員對以下情景一定不會(huì)陌生:盡管企業(yè)要求安全管理人員保護(hù)企業(yè)業(yè)務(wù),以防受到應(yīng)用程序安全漏洞的威脅,但在企業(yè)部署的數(shù)百個(gè)甚至數(shù)千個(gè)應(yīng)用程序中,很少有應(yīng)用程序進(jìn)行了充分的安全評估。

面對大量可能不安全的應(yīng)用程序、有限的評估資源和難以承受的壓力,在對企業(yè)的應(yīng)用程序進(jìn)行安全評估這一問題上,許多安全管理人員只能疲于應(yīng)付。隨著應(yīng)用程序迅速成為最受惡意攻擊者青睞的載體,攻擊者試圖利用應(yīng)用程序中的漏洞破壞企業(yè)的日常業(yè)務(wù)活動(dòng),或者滲透企業(yè)的防御體系以竊取敏感數(shù)據(jù)。因此,安全管理人員應(yīng)該確保對應(yīng)用程序進(jìn)行安全評估。

本文將對幾種應(yīng)用程序安全評估技術(shù)進(jìn)行分析,并對應(yīng)用程序評估的策略范例進(jìn)行比較,以進(jìn)一步闡明企業(yè)應(yīng)用程序安全評估流程。

專業(yè)的應(yīng)用程序安全評估方法

對于不熟悉應(yīng)用程序安全性的人來說,下面的三種評估方法可能會(huì)令他們暈頭轉(zhuǎn)向。不過,每種方法都有其值得稱道的地方,適用于不同的評估類型。

運(yùn)行時(shí)漏洞評估(Runtime Vulnerability Assessment)——運(yùn)行時(shí)漏洞評估有三種方式:自動(dòng)、手動(dòng)和兩者結(jié)合。一般來說,與手動(dòng)評估相比,自動(dòng)評估的速度更快,評估的范圍更廣。但是,自動(dòng)評估往往會(huì)漏掉不明顯的漏洞,也不能發(fā)現(xiàn)業(yè)務(wù)邏輯缺陷。因此,大多數(shù)經(jīng)驗(yàn)豐富的應(yīng)用程序安全專家通常傾向于采用自動(dòng)和手動(dòng)相結(jié)合的方式。

源代碼審查(Source-Code Review)——利用源代碼審查,評估人員可以發(fā)現(xiàn)應(yīng)用程序中存在的各種漏洞,但該方法要求評估人員具有深厚的編程語言和安全功底,而且通常需要比運(yùn)行時(shí)漏洞評估更長的時(shí)間。與運(yùn)行時(shí)漏洞評估一樣,源代碼審查也有自動(dòng)、手動(dòng)和兩者結(jié)合三種方式。這些方式各有利弊,類似于運(yùn)行時(shí)漏洞評估的三種方式。

威脅建模技術(shù)(Threat-Modeling Technique)——威脅建模技術(shù)主要是從設(shè)計(jì)的角度評估相關(guān)的、理論性的應(yīng)用程序威脅。通常情況下,威脅建模先于源代碼審查和運(yùn)行時(shí)漏洞評估進(jìn)行。

然而,選擇適當(dāng)?shù)脑u估方法組合并不容易。許多企業(yè)都深受這一問題的困擾。下面我們將介紹幾種方法,以幫助企業(yè)確定適當(dāng)?shù)膽?yīng)用程序安全評估流程:

1、重點(diǎn)論法:或許,最傳統(tǒng)的方法是集中測試資源評估公開程度最高的應(yīng)用程序,例如使用最為廣泛的面向Internet的Web應(yīng)用程序。一旦確定了公開程度最高的應(yīng)用程序,評估人員就可以對其執(zhí)行全面的自動(dòng)和手動(dòng)運(yùn)行時(shí)漏洞評估。然而,這種方法忽略了其他雖不顯眼但卻重要的應(yīng)用程序,例如企業(yè)外部網(wǎng)應(yīng)用程序、內(nèi)部財(cái)務(wù)應(yīng)用程序和關(guān)鍵的內(nèi)部網(wǎng)站應(yīng)用程序。

需要指出的是,盡管面向Internet的應(yīng)用程序十分流行,但也往往容易受到外部攻擊。而且,由內(nèi)部威脅和客戶端漏洞引起的風(fēng)險(xiǎn)也與日俱增。因此,忽略內(nèi)部應(yīng)用程序的安全性將會(huì)導(dǎo)致巨大的風(fēng)險(xiǎn)。此外,許多應(yīng)用程序安全專家認(rèn)為,單純的黑盒測試的效果不如源代碼審查與黑盒/灰盒評估相結(jié)合的方式。

2、兩點(diǎn)論法:通常情況下,當(dāng)認(rèn)識到重點(diǎn)論法帶來的風(fēng)險(xiǎn)以后,企業(yè)便會(huì)改弦更張,在較長的一段時(shí)間內(nèi)將全面的測試計(jì)劃擴(kuò)展到更多的應(yīng)用程序上。我們已經(jīng)看到,有些企業(yè)聘請了滲透測試團(tuán)隊(duì),對企業(yè)的每個(gè)Web應(yīng)用程序進(jìn)行測試??梢韵胂竦牡?,只有少數(shù)企業(yè)有實(shí)力采用這種方法。更為重要的是,對于那些尚未被立即測試的應(yīng)用程序來說,在完成測試和漏洞修復(fù)之前,它們可能會(huì)受到攻擊,而測試和漏洞修復(fù)往往需要一年甚至更長的時(shí)間。

3、應(yīng)用程序風(fēng)險(xiǎn)程度分級法:一個(gè)可取的方法是根據(jù)多個(gè)因素對應(yīng)用程序的風(fēng)險(xiǎn)程度進(jìn)行分級,這些因素包括基于應(yīng)用程序風(fēng)險(xiǎn)程度的各種評估技術(shù)。在開始介紹該方法之前,我們先來看一下每個(gè)應(yīng)用程序的以下方面:

應(yīng)用程序的目的:該應(yīng)用程序要用來干什么?有多少人使用它?顯然,一個(gè)電話簿應(yīng)用程序的風(fēng)險(xiǎn)程度不會(huì)高于一個(gè)財(cái)務(wù)應(yīng)用程序。

數(shù)據(jù)風(fēng)險(xiǎn):該應(yīng)用程序是否有機(jī)密性和完整性要求?該應(yīng)用程序或運(yùn)行該應(yīng)用程序的服務(wù)器是否需要提供99.999%的可用性?該應(yīng)用程序是否受任何合規(guī)性法規(guī)(例如支付卡行業(yè)數(shù)據(jù)安全標(biāo)準(zhǔn)PCI DSS、健康保險(xiǎn)流通與責(zé)任法案HIPAA等)的影響?

架構(gòu)與設(shè)計(jì):該應(yīng)用程序?qū)儆赪eb應(yīng)用程序還是Web服務(wù),是運(yùn)行在客戶端/服務(wù)器、大型機(jī)、中間層、臺式機(jī)還是其他地方?該應(yīng)用程序是面向Internet還是企業(yè)內(nèi)網(wǎng)的?該應(yīng)用程序是使用何種程序設(shè)計(jì)語言、在什么框架下開發(fā)的?該應(yīng)用程序是否使用了任何已知的高風(fēng)險(xiǎn)組件(例如Ajax或PHP)?該應(yīng)用程序的規(guī)模大約有多大(以源代碼的行數(shù)計(jì))?

現(xiàn)有安全功能:該應(yīng)用程序已經(jīng)具有哪些安全功能?例如,該應(yīng)用程序如何執(zhí)行身份驗(yàn)證、授權(quán)、輸入驗(yàn)證等?

采用這種方法,確立為上述各個(gè)因素賦以相應(yīng)的風(fēng)險(xiǎn)值的準(zhǔn)則至關(guān)重要。例如,“面向Internet的應(yīng)用程序加25分”,“不共享數(shù)據(jù)和不與任何其他應(yīng)用程序交互的應(yīng)用程序減5分”,等等。最終的結(jié)果是,每個(gè)應(yīng)用程序獲得一個(gè)表示其風(fēng)險(xiǎn)程度的數(shù)值,你可以根據(jù)該數(shù)值對應(yīng)用程序的風(fēng)險(xiǎn)程度進(jìn)行分級。需要記住的是,分析應(yīng)用程序往往十分耗時(shí),而且難以完全準(zhǔn)確。因此,你應(yīng)該嘗試設(shè)定一個(gè)采集應(yīng)用程序信息花費(fèi)時(shí)間的上限,而不是強(qiáng)迫自己采集所有應(yīng)用程序的所有信息。你的評分方法應(yīng)該接受不完全準(zhǔn)確的信息,并能夠?qū)⑦@些應(yīng)用程序的風(fēng)險(xiǎn)程度區(qū)分開來,即使你對這些應(yīng)用程序的安全性有比較透徹的了解。不要過分迷信評分系統(tǒng)——如果安全專家認(rèn)為一個(gè)應(yīng)用程序的風(fēng)險(xiǎn)程度很高,而評分系統(tǒng)的結(jié)果與安全專家的意見不一致,則應(yīng)以安全專家的意見為準(zhǔn)。

對于高風(fēng)險(xiǎn)等級的應(yīng)用程序,首先應(yīng)該對其進(jìn)行威脅建模,然后進(jìn)行手動(dòng)和自動(dòng)運(yùn)行時(shí)漏洞評估與源代碼審查。對于中度風(fēng)險(xiǎn)等級的應(yīng)用程序,應(yīng)該對其進(jìn)行手動(dòng)和自動(dòng)運(yùn)行時(shí)漏洞評估與源代碼審查。對于低風(fēng)險(xiǎn)等級的應(yīng)用程序,可能只需對其進(jìn)行自動(dòng)運(yùn)行時(shí)漏洞評估。如果時(shí)間允許,還可以對其執(zhí)行手動(dòng)運(yùn)行時(shí)漏洞評估。如果低風(fēng)險(xiǎn)等級應(yīng)用程序的測試結(jié)果特別糟糕,則應(yīng)該對該應(yīng)用程序進(jìn)行更加全面的測試。

4、健康檢查法:一種替代常規(guī)風(fēng)險(xiǎn)程度分級法的方法是,采用手動(dòng)和自動(dòng)相結(jié)合的方式,對所有應(yīng)用程序執(zhí)行為期一天的短期運(yùn)行時(shí)漏洞評估。在這種情況下,評估人員可以將自動(dòng)掃描限制在較少的測試用例中,從而可以顯著減少掃描時(shí)間(通常約為一個(gè)小時(shí))。為此,需要減少每種攻擊類型的測試用例的數(shù)目,例如10個(gè)跨站點(diǎn)腳本攻擊、10個(gè)SQL注入攻擊等等,這一點(diǎn)非常重要。如果采用健康檢查法,則需要對掃描結(jié)果進(jìn)行審查和驗(yàn)證,甚至還可能需要花費(fèi)額外的時(shí)間執(zhí)行有限的手動(dòng)測試。經(jīng)驗(yàn)豐富的評估人員根據(jù)測試結(jié)果可以確定,究竟是優(yōu)先對該應(yīng)用程序進(jìn)行額外的測試,還是將額外測試推遲到風(fēng)險(xiǎn)等級更高的應(yīng)用程序評估完成之后進(jìn)行。

5、未經(jīng)身份驗(yàn)證的健康檢查法:另一種健康檢查方法是不需要提供身份驗(yàn)證憑據(jù),在很短的時(shí)間內(nèi)對所有應(yīng)用程序執(zhí)行為期1至2天的短期自動(dòng)運(yùn)行時(shí)漏洞評估。這種方法類似于腳本小子(script kiddies)和工具小子(bots)所使用的攻擊方法,例如一直困擾Web應(yīng)用程序的、臭名昭著的ASP SQL注入工具。當(dāng)獲得身份驗(yàn)證憑據(jù)極為困難或耗時(shí)時(shí),可以考慮采用未經(jīng)身份驗(yàn)證的健康檢查法。但需要注意的是,通過身份驗(yàn)證的用戶可能導(dǎo)致非常嚴(yán)重的風(fēng)險(xiǎn),而未經(jīng)身份驗(yàn)證的掃描將會(huì)漏掉所有針對這些漏洞的攻擊。

那么,究竟采用什么方法最好呢?通過協(xié)調(diào)應(yīng)用程序安全評估與業(yè)務(wù)風(fēng)險(xiǎn)評估,企業(yè)可以更好地安排時(shí)間和資金。多種方法相結(jié)合的方式是最合適的:立即確定風(fēng)險(xiǎn)等級最高的一小部分應(yīng)用程序(例如公司網(wǎng)站的Web應(yīng)用程序),并對其進(jìn)行全面測試。與此同時(shí),對應(yīng)用程序風(fēng)險(xiǎn)程度進(jìn)行分級,以確定應(yīng)該對哪些應(yīng)用程序執(zhí)行進(jìn)一步的測試。如果測試資源允許的話,在對應(yīng)用程序風(fēng)險(xiǎn)程度分級的同時(shí),開始執(zhí)行未經(jīng)身份驗(yàn)證的健康檢查評估。采用這樣的評估流程,你可以獲得對應(yīng)用程序的全面分析和快速掃描的客觀結(jié)果,從而準(zhǔn)確了解應(yīng)用程序的安全性。接下來的評估流程與常規(guī)的應(yīng)用程序風(fēng)險(xiǎn)程度分級法類似:先測試風(fēng)險(xiǎn)等級最高的應(yīng)用程序,再測試風(fēng)險(xiǎn)等級較低的應(yīng)用程序。

當(dāng)然,評估只是整個(gè)應(yīng)用程序安全體系的一部分,接下來的重要步驟是漏洞修復(fù)。幸運(yùn)的是,應(yīng)用程序風(fēng)險(xiǎn)程度分級為確定漏洞修復(fù)的優(yōu)先順序奠定了基礎(chǔ):從風(fēng)險(xiǎn)等級最高的應(yīng)用程序中風(fēng)險(xiǎn)最高的漏洞開始,依次解決各個(gè)風(fēng)險(xiǎn)等級的應(yīng)用程序中存在的漏洞。此外,優(yōu)秀的應(yīng)用程序安全評估團(tuán)隊(duì)還能找出應(yīng)用程序漏洞的根源,并在軟件開發(fā)生命周期中提出修復(fù)建議,從而使應(yīng)用程序從源頭上更加安全。

需要強(qiáng)調(diào)的是,無論你采用何種應(yīng)用程序安全評估方法,都比對不安全的企業(yè)應(yīng)用程序引起的許多風(fēng)險(xiǎn)視而不見要好得多。

作者:Rohit Sethi and Nish Bhalla

 

【編輯推薦】

  1. Paros proxy:網(wǎng)頁程序漏洞評估代理
  2. 未來最具威脅的病毒:漏洞評估病毒
責(zé)任編輯:佚名 來源: TechTarget中國
相關(guān)推薦

2013-09-03 15:45:50

2014-06-03 09:23:41

2014-06-03 11:36:18

2023-12-13 13:10:02

2010-02-01 14:05:03

2009-12-15 17:21:10

BackTrack檢查

2013-01-29 14:56:52

2010-01-26 17:16:33

C++應(yīng)用程序

2010-01-25 17:14:44

Android應(yīng)用程序

2010-02-22 15:49:35

Python應(yīng)用程序

2010-08-30 09:50:34

2010-07-26 15:37:12

telnet安全漏洞

2015-07-09 09:35:37

2012-05-29 10:04:08

2022-12-17 00:08:36

2010-09-29 14:05:23

2010-03-04 16:21:15

Android Mar

2010-03-04 10:11:17

Android手機(jī)系統(tǒng)

2009-09-03 17:36:13

C#創(chuàng)建Web應(yīng)用程序

2020-12-08 12:18:09

安卓應(yīng)用漏洞
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號