Web漏洞扫描器
Web漏洞掃描器
- 【實驗目的】
- 【實驗環境】
- 【實驗預備知識點】
- 【實驗內容】
- 【實驗步驟】
- 【實驗思考題】
【實驗目的】
1、掌握漏洞掃描的基本概念;
2、掌握漏洞掃描的工作原理;
3、掌握Web掃描器的使用。
【實驗環境】
圖 1拓撲圖
備注:開啟windows和linux靶機,連接linux靶機使用漏洞掃描器Nikto2,對windows靶機站點進行漏洞掃描,將其結果保存下進行分析,進而發現漏洞。(nikto2在linux靶機->root->gongfang->web漏洞掃描器)
【實驗預備知識點】
Web漏洞掃描方法主要有兩類:信息獲取和模擬攻擊。信息獲取就是通過與目標主機TCP/IP的Http服務端口發送連接請求,記錄目標主機的應答。通過目標主機應答信息中狀態碼和返回數據與Http協議相關狀態碼和預定義返回信息做匹配,如果匹配條件則視為漏洞存在。模擬攻擊就是通過使用模擬黑客攻擊的方法,對目標主機Web系統進行攻擊性的安全漏洞掃描,比如認證與授權攻擊、支持文件攻擊、包含文件攻擊、SQL注入攻擊和利用編碼技術攻擊等對目標系統可能存在的已知漏洞進行逐項進行檢查,從而發現系統的漏洞。遠程字典攻擊也是漏洞掃描中模擬攻擊的一種,其原理與其他攻擊相差較大,若攻擊成功,可以直接得到登錄目標主機系統的用戶名和口令。
目前WEB服務器存在的主要漏洞有:
1.物理路徑泄露:物理路徑泄露一般是由于WEB服務器處理用戶請求出錯導致的,如通過提交一個超長的請求,或者是某個精心構造的特殊請求,或是請求一個WEB 服務器上不存在的文件。這些請求都有一個共同特點,那就是被請求的文件肯定屬于CGI腳本,而不是靜態HTML 頁面。還有一種情況,就是WEB服務器的某些顯示環境變量的程序錯誤的輸出了WEB服務器的物理路徑,這應該算是設計上的問題。
2.CGI源代碼泄露:CGI源代碼泄露的原因比較多,例如大小寫,編碼解碼,附加特殊字符或精心構造的特殊請求等都可能導致CGI源代碼泄露。
3.目錄遍歷:目錄遍歷對于WEB服務器來說并不多見,通過對任意目錄附加“…/”,或者是在有特殊意義的目錄附加“…/”,或者是附加“…/”的一些變形,如“…”或“…//”甚至其編碼,都可能導致目錄遍歷。前一種情況并不多見,但是后面的幾種情況就常見得多,如IIS 二次解碼漏洞和UNICODE 解碼漏洞都可以看作是變形后的編碼。
4.執行任意命令:執行任意命令即執行任意操作系統命令,主要包括兩種情況。一是通過遍歷目錄,如前面提到的二次解碼和UNICODE 解碼漏洞,來執行系統命令。另外一種就是WEB服務器把用戶提交的請求作為SSI 指令解析,因此導致執行任意命令。
5.緩沖區溢出:緩沖區溢出漏洞是WEB服務器沒有對用戶提交的超長請求進行合適的處理,這種請求可能包括超長URL,超長HTTP Header域,或者是其它超長的數據。這種漏洞可能導致執行任意命令或者是拒絕服務,這一般取決于構造的數據。
6.拒絕服務:拒絕服務產生的原因多種多樣,主要包括超長URL,特殊目錄,超長HTTP Header域,畸形HTTP Header域或者是DOS 設備文件等。由于WEB 服務器在處理這些特殊請求時不知所措或者是處理方式不當,因此出錯終止或掛起。
7.條件競爭:這里的條件競爭主要針對一些管理服務器而言,這類服務器一般是以system或root身份運行的。當它們需要使用一些臨時文件,而在對這些文件進行寫操作之前,卻沒有對文件的屬性進行檢查,一般可能導致重要系統文件被重寫,甚至獲得系統控制權。
8.跨站腳本執行漏洞:由于網頁可以包含由服務器生成的、并且由客戶機瀏覽器解釋的文本和HTML 標記。如果不可信的內容被引入到動態頁面中,則無論是網站還是客戶機都沒有足夠的信息識別這種情況并采取保護措施。攻擊者如果知道某一網站上的應用程序接收跨站點腳本的提交,他就可以在網上提交可以完成攻擊的腳本,如JavaScript、VBScript、ActiveX、HTML 或 Flash 等內容,普通用戶一旦點擊了網頁上這些攻擊者提交的腳本,那么就會在用戶客戶機上執行,完成從截獲賬戶、更改用戶設置、竊取和篡改cookie 到虛假廣告在內的種種攻擊行為。
9.SQL注入:對于和后臺數據庫產生交互的網頁,如果沒有對用戶輸入數據的合法性進行全面的判斷,就會使應用程序存在安全隱患。用戶可以在可以提交正常數據的URL 或者表單輸入框中提交一段精心構造的數據庫查詢代碼,使后臺應用執行攻擊者的SQL 代碼,攻擊者根據程序返回的結果,獲得某些他想得知的敏感數據,如管理員密碼,保密商業資料等。
Web漏洞掃描程序可以在幫助人們造就安全的Web站點上助一臂之力,也就是說在黑客入侵之前,先檢測一下系統中的漏洞,鞏固web服務器的安全。如下是典型的十個Web漏洞掃描程序。
防御策略。由于Web的作用和特殊情況,web的安全管理一直是業界面臨的難題。針對其安全管理,業界也提出了許多參考意見,如下是一些安全防御建議:
1.及時更新補丁程序;
2.合理配置web服務器安全策略;
3.合理配置用戶的權限;
4.加強腳本安全的管理。
【實驗內容】
WEB服務器也稱為WWW(WORLD WIDE WEB)服務器,主要功能是提供網上信息瀏覽服務。 WWW 是 Internet 的多媒體信息查詢工具,是 Internet 上近年才發展起來的服務,也是發展最快和目前用的最廣泛的服務。正是因為有了WWW工具,才使得近年來 Internet 迅速發展,且用戶數量飛速增長。隨著web 應用的日益增多,如電子商務,交流論壇,公司網站等等都使用web 作為應用的平臺,如何保證web應用的安全性也成為當前日益重要、必須解決的問題。
由于網絡技術的飛速發展,網絡規模迅猛增長,據Netcraft公布的2010年2月份的全球Web服務器使用情況調查報告顯示:目前全球web服務器的數量超過了2億個,并且數量還在持續增長:2010年2月期間Apache主機名稱數量增長了1600萬個,排在增長趨勢的第一位,增長第二位的是微軟的Web服務器,主機名稱增長數量為1100萬個。迅猛增加的web服務器,導致新的系統漏洞不斷增加。
另據瑞典互聯網監測機構—Pingdom—2010年7月份發布的全球20大互聯網國家排行數據顯示:全球互聯網用戶數量已經達到了18億,其中中國互聯網用戶數量為達到了4.2億。許多互聯網用戶出于好奇或別有用心,針對web服務器漏洞,不停的窺視網上資源。由此導致的web安全事件數不勝數,web服務器安全的嚴峻形勢迫使人們不得不嚴陣以待。
【實驗步驟】
1、登錄linux靶機172.16.5.124,打開終端:cd gongfang/web-scaner/nikto-2.1.4。
2、在終端輸入掃描命令:
perl nikto.pl –h 172.16.5.121 –o ./result.html(圖2)
命令含義是:用nikto掃描IP為172.16.5.121的主機,并把結果儲存在result.html里面。
圖 2輸入命令截圖
3、由于掃描過程比較長,大概需要十分鐘左右,請耐心等待。
4、得出掃描結果后,用瀏覽器打開result.html。(圖3)
圖 3輸入命令截圖
5、分析掃描的結果,找出是否有漏洞存在。(圖4)
圖 4report.html頁面
【實驗思考題】
1.web漏洞掃描的作用.
答:目的是為了發現網站資產和關聯資產存在的安全風險,避免遭受品牌形象和經濟損失,同時滿足內等保合規要容求,及時發現各類安全風險,包括資產漏洞、安全違法違規內容(如暴力恐怖、涉政、色情內容等)、網頁篡改、掛馬暗鏈、垃圾廣告等。
2.還有哪些優秀的web漏洞掃描器?
答:
(1) Nikto是一個開源的Web服務器掃描程序,它可以對Web服務器的多種項目(包括3500個潛在的危險文件/CGI,以及超過900個服務器版本,還有250多個服務器上的版本特定問題)進行全面的測試。其掃描項目和插件經常更新并且可以自動更新。
(2) Paros是一個對Web應用程序的漏洞進行評估的代理程序,即一個基于Java的web代理程序,可以評估Web應用程序的漏洞。
(3) WebScarab可以分析使用HTTP 和HTTPS協議進行通信的應用程序,WebScarab可以用最簡單地形式記錄它觀察的會話,并允許操作人員以各種方式觀查會話。如果你需要觀察一個基于HTTP(S)應用程序的運行狀態,那么WebScarabi就可以滿足你這種需要。不管是幫助開發人員調試其它方面的難題,還是允許安全專業人員識別漏洞,它都是一款不錯的工具。
(4) WebInspect是一款強大的Web應用程序掃描程序。SPI Dynamics的這款應用程序安全評估工具有助于確認Web應用中已知的和未知的漏洞。它還可以檢查一個Web服務器是否正確配置,并會嘗試一些常見的Web攻擊,如參數注入、跨站腳本、目錄遍歷攻擊(directory traversal)等。
(5) Whisker/libwhisker,Libwhisker是一個Perla模塊,適合于HTTP測試。它可以針對許多已知的安全漏洞,測試HTTP服務器,特別是檢測危險CGI的存在。Whisker是一個使用libwhisker的掃描程序。
(6) Burpsuite是一個可以用于攻擊Web應用程序的集成平臺。Burp套件允許一個攻擊者將人工的和自動的技術結合起來,以列舉、分析、攻擊Web應用程序,或利用這些程序的漏洞。各種各樣的burp工具協同工作,共享信息,并允許將一種工具發現的漏洞形成另外一種工具的基礎。
(7) Wikto是一個Web服務器評估工具,它可以檢查Web服務器中的漏洞,并提供與Nikto一樣的很多功能,但增加了許多有趣的功能部分,如后端miner和緊密的Google集成。它為MS.NET環境編寫,但用戶需要注冊才能下載其二進制文件和源代碼。
(8) Acunetix Web Vulnerability Scanner是一款商業級的Web漏洞掃描程序,它可以檢查Web應用程序中的漏洞,如SQL注入、跨站腳本攻擊、身份驗證頁上的弱口令長度等。它擁有一個操作方便的圖形用戶界面,并且能夠創建專業級的Web站點安全審核報告。
(9) Watchfire AppScan是一款商業類的Web漏洞掃描程序。AppScan在應用程序的整個開發周期都提供安全測試,從而測試簡化了部件測試和開發早期的安全保證。它可以掃描許多常見的漏洞,如跨站腳本攻擊、HTTP響應拆分漏洞、參數篡改、隱式字段處理、后門/調試選項、緩沖區溢出等等。
(10) N-Stealth是一款商業級的Web服務器安全掃描程序。它比一些免費的Web掃描程序,如Whisker/libwhisker、 Nikto等的升級頻率更高,它宣稱含有“30000個漏洞和漏洞程序”以及“每天增加大量的漏洞檢查”,不過這種說法令人質疑。還要注意,實際上所有通用的VA工具,如Nessus, ISS Internet Scanner, Retina, SAINT, Sara等都包含Web 掃描部件。(雖然這些工具并非總能保持軟件更新,也不一定很靈活。)N-Stealth主要為Windows平臺提供掃描,但并不提供源代碼。
總結
- 上一篇: office2019 图目录_【设计图文
- 下一篇: xshell添加vbs脚本