Web應(yīng)用安全掃描逐漸升溫 職業(yè)人士來說WASS評估標準
WASS全稱是Web Application Security Scanner,中文翻譯即是Web應(yīng)用安全掃描器。說白一點就是Web漏洞掃描軟件,國外的產(chǎn)品有IBM Appscan、HP WebInspect、Acunetix Web Security Scanner等;國內(nèi)的產(chǎn)品有JSky、Matrixy、WebRavor等。目前WASS也是逐步升溫,廠家也是越來越多。
WASS被廣泛關(guān)注是有背景的:一來是原有網(wǎng)絡(luò)和系統(tǒng)漏洞的減少,許多“有志之士”將目標轉(zhuǎn)向了Web應(yīng)用程序,伴隨著大量的SQL注入蠕蟲掛馬以及由社交網(wǎng)站的XSS蠕蟲出現(xiàn),業(yè)界對Web應(yīng)用安全也是越來越重視;二來,未來的技術(shù)趨勢也是越來越向Web平臺遷移,比如微軟和GOOGLE都向網(wǎng)絡(luò)應(yīng)用程序和網(wǎng)絡(luò)操作系統(tǒng)方面演進,這些都是戰(zhàn)略性的;最后,從廠商角度來說,利益的驅(qū)動還是比較大的,這主要是源自IBM上億美金收購Watchfire和HP上億美金收購spidynamics的這幾次大手筆。不只是WASS關(guān)注度很大,WAF的發(fā)展也是很迅速的,不過關(guān)于WAF的內(nèi)容在這里暫且不表。
很長一段時間以來,Web應(yīng)用安全掃描工具的市場基本都是國外的廠商壟斷,國內(nèi)缺少自動化的評估工具,啟明星辰,綠盟等國內(nèi)少數(shù)的幾家具有一定規(guī)模的廠商在進行安全評估時很大程度上依賴于安全專家,這其實也是有利有弊。因為安全評估不像滲透測試,滲透測試只要找準點攻破目標系統(tǒng)就行;安全評估則在保證有效的情況下還得保證全面性。在這個過程中,人的精力畢竟是有限的,小網(wǎng)站還好,要是來個大網(wǎng)站,上萬個目錄頁面,人力成本是很高的。
再換句話說,即使在有充足的人力成本情況下,你就能保證安全評估工程師不會出現(xiàn)重復(fù)勞動下的疲憊或者遺漏?從服務(wù)商角度而言也是如此,一個成指數(shù)增長(資源增長遠小于客戶數(shù)增長)的企業(yè)才是個好企業(yè),一個依賴大量的專家來保持增長的企業(yè)就很難想象有多大的發(fā)展空間了。再說了,在國內(nèi)有那么多稱職的安全專家?總之,WASS的出現(xiàn)是符合市場需求的,市場就這么起來了,因此國內(nèi)這幾年也出現(xiàn)了像諾賽科技、安域領(lǐng)創(chuàng)還有安恒科技等公司。好歹WASS的市場也呈現(xiàn)百花齊放的景象,越來越多的公司正在加入這個行業(yè)。
新的問題就來了,如此多的WASS,如何保證主要功能的完整性呢?或者說對于一個客戶而言,如何確保購買的WASS是能夠有效的全面的找出系統(tǒng)中的漏洞呢?我們姑且可以認為幾個處于霸主地位的WASS廠商也是這么為客戶著想的,他們在Web Application Security Consortium的組織下,于一個漆黑的夜晚一個漆黑的小屋內(nèi)小聲的討論,完成了一份“Web Application Security Scanner uation Criteria”,也就是Web應(yīng)用安全評估標準,下文中均簡寫為WASSEC。(稍微遺憾的是,里面沒有一個中國廠商參與)
WASSEC可以通過如下地址下載(部分國內(nèi)用戶可能不太方便訪問):http://projects.webappsec.org/f/Web+Application+Security+Scanner+uation+Criteria+-+Version+1.0.pdf,共分為如下幾個大章節(jié):
1、 協(xié)議支持
2、 認證
3、 會話管理
4、 鏈接分析
5、 解析
6、 測試
7、 命令和控制
8、 報表
#p#
9、 附錄A:考慮購買掃描器時的建議
內(nèi)容寫的比較細,這里并不一一細數(shù),我們也不用太陷入里面的章節(jié)??梢詮娜缦驴蚣芾斫?,因為一個WASS無非是滿足這些框架功能的組合體:
a. 網(wǎng)頁爬蟲:評價WASS一個很重要的因素來自于鏈接分析能力,如是否支持從Javascript中提取鏈接,是否支持從flash文件中提取鏈接,是否支持從復(fù)雜的ajax應(yīng)用中提取鏈接等等。另外也包括標簽的事件,重定向請求等。至于認證和協(xié)議都是非?;A(chǔ)的,缺少這些的我們甚至可以理解它壓根就不是一個WASS。
b. 安全測試:WASS是否有效的核心模塊來自于漏洞的分析能力。支持的漏洞種類(SQL注入,跨站腳本,信息泄露等)是否齊全,是否能夠準確分析誤報(如自定義404頁面等),是否支持權(quán)限測試等等。
c. 報表:對于采購WASS的用戶而言,一份漂亮的報表是必不可少的。是否包含漏洞描述,解決建議;是否滿足業(yè)界的安全標準(如OWASP TOP 10,薩班斯法案等,這些老外很看重);是針對開發(fā)者還是測試人員;是否支持PDF,HTML格式等等
d. 操作性:對于自動話工具而言,越少的操作達到越大的效果是很重要的,因此像掃描操作,暫停操作等是必須的;同時應(yīng)當能夠及時顯示進度,查看已經(jīng)發(fā)現(xiàn)的漏洞細節(jié)等。
如果您是一位經(jīng)常關(guān)注Web應(yīng)用安全的朋友,應(yīng)該會有一個感覺,這個WASSEC里面有點貓膩。向來咱們中國人都是屬于那種悶聲做事的那種,尤其對于負責(zé)技術(shù)的人員而言,對于沒有親眼見著的事情持有很強烈的反對態(tài)度。假設(shè)我們把場景放在測試人員用工具掃描完然后將漏洞遞交給開發(fā)人員的時候,開發(fā)人員說“這怎么會是漏洞呢,我們一直都是這么操作的啊”,如果這位可憐的測試人員在安全方面不是比較精通的話就很麻煩了。
事實上這種情況并不少見。在我東塔亮看來,合格的WASS必須具備滲透測試功能,否則很難去解釋這為什么是個漏洞了。巧的很,咱們國內(nèi)的WASS廠商都具備這個功能,JSky就不用說了,搭配了包含Pangolin和IISPUTScanner在內(nèi)的一系列用于滲透測試的模塊,在Matrixy和Webravor中也內(nèi)置了SQL注入滲透測試模塊。而這些剛好是國外的WASS中都沒有的??磥砗跓粝禄痍P(guān)門討論的成果也不是太全面。至少不符合少數(shù)滲透測試人員的需求;)
對于本地化來說的話,在WASSEC中也沒有提及到。國內(nèi)的市場需要有本地化語言,這在一些大型采購單位基本都是硬性規(guī)定。國內(nèi)的WASS廠商做的都還比較好。國外的就差遠了,像IBM的Appscan采用了自動化的翻譯軟件翻譯出來的語言看起來真是別扭的不行,不過總比沒有好,其他廠商的就不說了。
除了本身軟件本地化的問題以外,對于編碼的支持也是國外WASS所不具備的。比如說,在WASSEC中明確提出了ISO-8859-1、UTF-7、UTF-8、UTF-16編碼,對于包括GB2312編碼在內(nèi)的所有東亞或者西歐的編碼方式均沒有提到,這也就是為什么在國外WASS的一些報表中出現(xiàn)大量亂碼的原因。
目前大量網(wǎng)站的表單認證都是帶有驗證碼的,對于一個WASS而言,如何能夠繞過驗證碼繼續(xù)掃描是一個很重要的技術(shù)細節(jié),在WASSEC中也沒有提及,我想這是因為與會者所在的那些廠商的產(chǎn)品均不具備這個功能導(dǎo)致的吧。這也是能理解,但是,你們沒有,不代表別人沒有,這么大一個功能需求怎么就被給“河蟹”掉了呢?
另外我覺得還有一個很重要的因素在WASSEC中是被忽略掉的。大家認為安全評估時只在實驗室的調(diào)試環(huán)境下測試,還是在現(xiàn)網(wǎng)部署的情況下測試下更有效呢?我舉個例子,當年中國移動被黑本身官網(wǎng)的應(yīng)用程序是沒有任何問題的,但是不代表第三方程序沒有問題啊,更不代表其他虛擬主機沒有問題。那么如何去評估虛擬主機呢?怎么知道有哪些虛擬主機呢?這些現(xiàn)網(wǎng)的情況對開發(fā)人員而言都是不可知的。WASS應(yīng)該提供這些手段。
最后,剩下一個最最重要的問題:該份WASSEC并不具備可操作性。為什么這么說呢?從文檔的內(nèi)容來看,讀者應(yīng)當是普通的具有購買傾向的客戶,那么從專業(yè)性上來說應(yīng)當是相對較弱的,畢竟不是專業(yè)的安全人士。在這個過程中,如何確認文檔中的內(nèi)容對于某個廠商的WASS是否滿足呢?舉個實例來說,我們對于WASS對flash文件提取鏈接的能力應(yīng)當如何去測試呢?甚至能否提取鏈接都是個未知數(shù),難道客戶都得自己先請開發(fā)人員做一個flash文件,將不同的鏈接方式加入進去?這樣的可能性基本為零了。到目前為止,沒有任何一個廠商或組織發(fā)布一份可以用于滿足WASSEC中提到所有屬性的測試環(huán)境。又或者說,該份文檔根本就是一個煙霧,只是為了后面出現(xiàn)一個可供具體操作的環(huán)境或者第三方測評機構(gòu)。當然一個不爭的事實是,文檔的成員廠商是可以堂而皇之的對外宣稱他們是完全支持WASSEC標準的,而其他某某某不是。
與國外相比較而言,國內(nèi)的安全研究人員更利益驅(qū)使一點(短視?),很少有人進行大趨勢或者技術(shù)上的一些總結(jié)輸出,并且也很少有人體現(xiàn)出“板凳甘坐10年冷”的氣魄。這就就是為什么myspace的蠕蟲和twitter的蠕蟲在國外非常成型且穩(wěn)定,而國內(nèi)到目前為止沒有一個實際廣為人知的社區(qū)蠕蟲。這肯定不是技術(shù)問題,國內(nèi)在Web安全方面的牛人非常多,技術(shù)也很扎實,我甚至覺得國內(nèi)在Web安全技術(shù)方面的研究是超越國外的(我們不否認有國家政策的因素在里面)。我們可以回過頭來看看早在05年,美國一個高中生寫的MySpace蠕蟲的相關(guān)技術(shù)細節(jié):http://namb.la/popular/tech.html。國內(nèi)的安全人士是否在敬佩之余也稍微有點汗顏呢?不過話又說回來,國內(nèi)的這種形勢也是好的,技術(shù)還掌握在自己手上不是,只是稍微有些遺憾的是,集大成者還是太少。
如今是個科技化的時代,軍事戰(zhàn)爭一部分已經(jīng)轉(zhuǎn)化為信息化戰(zhàn)爭。咱們國人也應(yīng)當多總結(jié)多輸出。咱們稍微細心一點,是能夠發(fā)現(xiàn)在WASSEC中帶有排他性的,要說排誰,大家只要減去貢獻者清單所在的廠商就能得出來。咱們的綠盟啊,啟明啊,安恒啊,諾賽啊啥時候也能在某個月黑風(fēng)高之夜一起討論得出一個基線標準出來,更適合本土化一點,更專業(yè)化一點。畢竟安全類產(chǎn)品國家還是得掂量掂量著引進,這個責(zé)任你們不承擔(dān)誰承擔(dān)?
總之,未來的Web應(yīng)用安全有一段高峰期快來了,不管是WASS也好,WAF也好都會迎來一個高速增長期,希望國內(nèi)的一些安全廠商能夠爭氣一把,抓緊時機,爭取出現(xiàn)許多個安全界的百年企業(yè)。
【編輯推薦】