喻 瀟,王 捷,劉 暢
(國網湖北省電力公司電力科學研究院,湖北 武漢 430077)
基于可視化的Web漏洞分析
喻 瀟,王 捷,劉 暢
(國網湖北省電力公司電力科學研究院,湖北 武漢 430077)
從基于可視化的角度詳細分析Web漏洞,通過邏輯匹配、構造參數請求、執行結果、對比、報文交互記錄等分析方法,再輔以可導出的場景文件,使得信息安全人員能夠更及時、準確地掌握漏洞,從而提高信息安全人員解決Web漏洞的效率。
可視化;Web漏洞;信息安全
隨著Web安全問題的日益嚴重,為提前發現潛在的信息安全隱患[1],及時開展安全加固,保障Web應用的正常開展,一般來說,網絡安全人員都會借助掃描工具來測試評估網站系統、業務應用等風險性,如何發現漏洞、識別漏洞以及定位漏洞存在于Web頁面的具體位置,以及什么樣的驗證場景可以確定漏洞真實存在,是網絡安全人員面對掃描結果時最棘手的問題。
對于大部分Web安全人員而言,掃描工具輸出的報告大都不易理解,大量漏洞存在于URL、弱點參數以及掃描器自身所構造的各種請求等問題,導致安全人員必須進行二次解讀,無法第一時間識別漏洞風險分布,及時修復安全漏洞,Web應用安全得不到有效保障。同時,由于Web網站和應用環境的不同,加上安全漏洞的種類繁多,掃描工具必然也存在一定的誤報率,為保證漏洞發現的準確性,增強掃描報告內容的高可信度,掃描工具必須清晰表明:漏洞是如何被發現的、具體詳情如何、什么樣的場景存在該漏洞以及如何重現漏洞發現場景進行二次驗證等情況。
基于以上問題,依據信息安全漏洞種類的不同,從漏洞確認的判斷角度,通過邏輯猜測匹配、構造參數請求、執行結果、對比、報文交互記錄等分析方法,再輔以可導出的場景文件,從漏洞發現的每一步直至全過程交互進行統一呈現展示,實現讓漏洞的發現過程通俗易懂,簡單透明,進而為漏洞下一步可能面臨的誤報確認,形成一種可視化的場景,達到讓閱讀報告的安全人員能夠更及時、準確地分析漏洞這一目的。包含以下方面:
1)判斷標準
Web漏洞的形成有很多因素,根據漏洞的表現形式和產生原因不同,給出針對每種漏洞是否存在的判斷標準,可以讓用戶明確知道該漏洞產生的原因以及外在的表現形式。
2)執行詳情
除了解漏洞的形成以及表現形式外,還需要構造產生漏洞的充分必要條件,展示觸發這個漏洞的具體操作和方法,讓漏洞以更加直觀的形式展示,最終達到與判斷標準相符的目的。
3)過程報文
漏洞的探索和發現不是一蹴而就的,是一個有強烈依賴關系的發包探測、規則匹配的邏輯過程。過程報文[2]還原了整個探測過程中的收發包情況,探測方對被探測Web站點都發送了哪些請求,對方服務器是如何應答的,過程報文都一一記錄,為分析漏洞和網站實時響應提供有利數據。
以下給出了針對不同漏洞類型,具體闡述利用可視化漏洞的分析。
2.1 特征值匹配

圖1 特征值匹配檢測Fig.1 Eigenvalue matching detection
對于基于特征值匹配來進行檢測的漏洞類型,其常見的檢測邏輯(如圖 1所示)是一個反復探測和驗證的過程,一般掃描工具中的爬蟲模塊需要爬取Web站點的有效鏈接并傳遞給相關插件探測掃描,插件在獲取到鏈接后,需要判斷此鏈接是否有存在該漏洞的條件,抽取所有可能存在漏洞的位置點,根據執行詳情中的描述步驟去探測和發包,根據該漏洞的表現形式來判斷返回的頁面是否存在漏洞。對應的特征值匹配檢測邏輯條件滿足后,漏洞發現條件也就形成,此時,掃描器把嘗試探測的URL鏈接,具體的請求方式,在哪個參數字段上構造的特征值,相關的判斷標準,最終構造的請求變量和URL語句函數,執行結果與預期結果的差異,頁面請求和響應報文結果等漏洞確認的詳情一一羅列出來。
2.2 相似度對比
對于SQL盲注這種不能通過特征值匹配來檢測的類型(如圖2所示),需要根據返回頁面的不同來判斷,插件在獲取到被檢測URL后,抽取可能存在漏洞的注入點,嘗試發送三次請求獲取充分條件。第一次采樣原始請求,將原始頁面內容作為采樣標準A;第二次采樣偽真頁面B,第三次采樣fasle頁面C。整個SQL盲注的檢測過程,需要計算B/A和 C/ A之間的相似度,在某個確定的范圍內就可以判定是否存在注入。

圖2 SQL盲注Fig.2 SQL blind injection
大部分基于相似度對比的掃描工具的檢測結果,未提供詳細的解讀分析,安全人員無法獲知真假頁面之間的區別和差異,可視化的漏洞分析要求掃描工具必須給出插件的檢測過程和漏洞表現形式,判斷詳情中給出了發送的偽真和假以及原始URL的請求和響應(如圖3所示)
圖4中展示了發送的原始頁面和偽真頁面的請求以及兩者之間的差異,差異往往非常小。

圖3 SQL盲注中URL請求與響應Fig.3 URL request and response in blind SQL injection
圖5展示了發送的原始頁面和錯誤頁面的請求以及兩者之間的差異,差異非常大。
根據以上兩組數據的頁面相似度對比結果,可以得出兩者之間的差異,當這個差異存在于特定范圍內就可以判斷存在SQL盲注漏洞,以上從漏洞探測到展示,能夠完整的重現漏洞,幫助安全人員直觀的判斷漏洞存在與否。
2.3 猜測破解
2.3.1 口令猜測

圖4 SQL盲注中的請求Fig.4 URL request in blind SQL injection

圖5 差異對比Fig.5 Comparision and contrast
Web掃描工具在檢測表單登錄存在弱口令時,會根據用戶配置的弱口令列表,枚舉用戶名和口令嘗試登錄,以上存在的漏洞是Web應用最常見漏洞。如圖6所示,在獲取到登錄頁面后,掃描工具會根據用戶配置的弱口令進行登錄探測,由于各個行業的弱口令標準不同,因此,應該支持用戶自定義配置。

圖6 弱口令檢測Fig.6 Weak password detection
在檢測出弱口令漏洞后,會給出具體的用戶名和密碼,用戶可以直接用給出的弱口令嘗試登錄漏洞URL。如圖7中理想的掃描工具所判斷詳情給出了具體的登錄頁面,檢測出來的弱口令為admin/ad?min,請求響應發現頁面跳轉到了主頁面后登錄成功,表示確實存在漏洞。信息安全人員可以輕松的根據判斷規則重現探測過程。

圖7 弱口令探測結果Fig.7 The result of weak password detection
2.3.2 文件猜測
對于存在IIS短文件泄露漏洞的服務器,攻擊者可以利用“~”字符猜解或遍歷服務器中的文件名,當IIS接收到一個文件路徑包含~的請求時,它的反應是不同的,對于可用的文件返回的HTTP響應碼是404,不可用的文件返回的是400,根據返回的狀態碼不同,進而可用猜測出完整的文件名,為了減少對服務器的壓力,插件的檢測是一個點到為止的過程,防止造成拒絕服務攻擊。
如圖8所示,插件獲取到需要掃描的鏈接后,如判斷標準中所述,根據規則庫中的規則嘗試發送多組有效(返回狀態碼404)和無效(狀態碼400)的請求,滿足條件后,可以判定存在該漏洞。

圖8 文件猜測Fig.8 File guessing
檢測到該漏洞后,會為信息安全人員展示中間構造的兩次請求,包括有效和無效請求,根據請求和響應,可以看到返回的狀態碼不同,繼續根據有效請求猜測,就可以猜出完整的目錄及文件結構(如圖9所示)為Web掃描器展示的漏洞詳情,對于一般用戶重放兩次請求,可以直接看出HTTP返回的狀態碼不同,對于返回碼為404的頁面,可以繼續猜測直到猜出整個文件名。

圖9 文件猜測結果Fig.9 The result of file guessing
綜上所述,通過基于可視化的Web漏洞分析,使得信息安全人員能夠由掃描報告提供的漏洞場景文件,以可視化的方式重現漏洞發現及確認的全過程,進一步獲取漏洞詳情,讓安全人員能夠更有效率地開展漏洞修復等安全工作,充分體現了基于可視化的Web漏洞分析對于信息安全工作的指導意義。
(References)
[1]Dafydd Stuttard,Marcus Pinto.黑客攻防技術寶典Web實戰篇[M].2版.北京:人民郵電出版社,2012:115-133.
Dafydd Stuttard,Marcus Pinto.The Web Applica?tion Hacker’s Handbook[M].2 ed.Beijing:The Peo?ple’s Posts and Telecommunications Press,2012:115-133.
[2]David Gourley,Brian Totty.HTTP權威指南[M].北京:人民郵電出版社,2012.
David Gourley,Brian Totty.HTTP:The Definitive Guide[M].Beijing:The People’s Posts and Telecom?munications Press,2012.
Analysis on Visualization-based Web Vulnerabilities
YU Xiao,WANG Jie,LIU Chang
(State Grid Hubei Electric Power Research Institute,Wuhan Hubei 430077,China)
From a visualization-based research viewpoint,Web vulnerabilities are analyzed in de?tail,from the analysis of logical matching,request parameter,results of execution,comparison and message,accompanied with offline scene files which can be exported,this method makes it timely and accurately for information security personnel to find the Web vulnerabilities,which can im?prove the efficiency ofsolving the Web vulnerability for information security personnel.
visualization;Web vulnerabilities;information security
TP393
A
1006-3986(2016)07-0037-05
10.19308/j.hep.2016.07.009
2016-06-07
喻 瀟(1984-),男,湖北武漢人,工程師。