專為復雜web環境設計的安全掃描器UnisWebScanner
【51CTO.com 綜合消息】隨著各種各樣的Web應用(電子商務、論壇、新聞、博客等)不斷進入人們的生活,越來越多的動態元素被加入到Web建設中來。表單、登錄、信息發布等動態內容允許訪問者獲得和提交動態的內容,如果這些Web應用存在不安全的隱患,那么整個數據庫甚至是Web站點系統都會面臨安全風險。據統計,目前75%的網絡攻擊行為都是通過Web來進行的。
對Web應用的安全性進行手工測試和審計是一項復雜且耗時的工作,不僅需要極大的耐心還需要專業的技術經驗。對于一般的Web管理人員來說,基于安全的管理將占用大量工作時間。自動化的漏洞掃描工具能夠大幅簡化對于未知安全隱患的檢測工作,有助于Web管理人員將精力轉向如何處理安全風險上。
UnisWebScanner 專為當前復雜的Web環境而設計,作為自動化的Web應用安全檢測工具,能夠對SQL注入、XSS、網站掛馬、敏感信息泄漏等風險進行全面審計,適用于通過internet、intranet、extranet進行網上交易或信息發布的大、中、小型應用,如金融、證券、政府、電子商務、電信運營商、基金、網游、科研院所等各類企事業單位。
結構說明
【UnisWebScanner主界面】
|
| 圖 1 主界面 |
【掃描引擎】
用于對網站進行安全掃描,包含2個步驟:
爬蟲 —— 自動分析網站,輸出網站結構。
掃描 —— 從攻擊者角度思考,智能化掃描。
【漏洞驗證】
如果發現有注入點,可以通過漏洞驗證模塊猜測數據庫類型、枚舉數據庫、表、讀取系統文件等。
【輔助工具】
代理測試臺提供代理的功能,幫助您截獲、檢查和修改HTTP客戶端到Web服務器的通信,如分析Session ID、越過客戶端javascript驗證等。
3.5產品許可證
您需要注冊后才可使用UnisWebScanner的全部功能。欲購買產品許可證,請聯系產品提供商。 #p#
一、安裝部署
1.安裝需求
|
| 表1 |
2.安裝過程
獲得產品
從產品提供商獲得產品及使用手冊。
安裝
運行安裝程序,直到安裝完成。
提供必要的注冊信息
在“關于”->“用戶注冊”對話框中獲取系統信息,并提供自己的名稱和網站域名授權信息。
獲得許可證
從產品提供商處獲得許可證。
注冊
在“關于”->“用戶注冊”輸入“用戶信息”和“注冊信息”。
升級插件在“關于”,點擊“升級”,更新漏洞庫、規則庫到最新版本。
3.卸載
可以在“添加/刪除程序”中卸載程序,也可以在開始菜單中通過快捷方式進行卸載。 #p#
二、使用說明
注意事項:根據中華人民共和國相關法律規定,本產品只適用于已獲得掃描授權的網站。任何違反法律規定的行為由使用者自行承擔,與UnisWebScanner及開發者無關,特此聲明。
1.向導
為了方便用戶直接使用本產品的功能,UnisWebScanner提供了使用向導,只需您填寫或選擇一些必要的信息,就可以快速開始(按照系統默認配置,適用于大多數的應用環境)進行掃描。
2.網站掃描
網站掃描是本產品第一大功能,對網站的安全漏洞進行檢測,如:SQL注入、跨站腳本、網頁掛馬、敏感文件泄漏、敏感目錄泄漏及后臺管理信息泄漏等。
| 圖2 網站掃描 |
對目標網站進行掃描時,需要提供如下的必要信息:
1)輸入掃描網站的起始URL
XXX
XXX:80 等
2)輸入Cookie
有些網站需要輸入用戶名、密碼后才能登入,在掃描前需要將登陸后的Cookie填入,并將登陸后的URL輸入“起始URL”輸入框中;其他地方可不必填寫。
3)選擇掃描策略
可以選擇特定的掃描策略模塊,也可以選擇全部掃描策略模塊(在“配置”->“策略配置”中選擇全部策略模塊中的例外模塊)。
4) 點擊“開始”進行掃描
掃描過程中右側的狀態窗口中會顯示進度及數據統計,下方日志窗口中顯示實時的日志信息和錯誤信息。
5)終止掃描
點擊停止按鈕,注意查看下方的日志信息,程序會終止工作線程。
在整個掃描過程中,您可以通過掃描狀態欄看到當前正在檢測的模塊,以及檢測結果的實時信息,如下圖所示:
|
| 圖3 掃描信息 |
您可以在圖3中的漏洞統計信息中查看詳細的漏洞列表。為了便于查看,軟件將同一鏈接的漏洞進行了歸類顯示,這樣可以很清楚的看到哪些鏈接存在安全隱患。如圖4和圖5所示。
|
| 圖4 漏洞列表信息 |
|
| 圖5 漏洞詳細信息 |
您可以右鍵點擊該漏洞,對該漏洞進行驗證,詳見漏洞驗證相關章節。
|
| 圖6 快捷驗證漏洞 |
#p#
3.漏洞驗證
3.1漏洞基本信息
漏洞基本信息的填寫有兩種方式:一是右鍵點擊掃描結果中的注入漏洞列表,選擇驗證漏洞,此時將自動輸入漏洞信息;二是手工填寫注入漏洞列表,需要填寫如下參數。
| 圖7 漏洞基本信息 |
1)鏈接
具有注入漏洞的鏈接地址,如果是GET方式,則該鏈接必須帶參數,即:XXX/XX.XXX?XX=XXX,如果是POST方式則可以帶參數也可以不帶。
2)Cookie
同網站掃描部分的Cookie,請參考網站掃描部分關于Cookie的說明。
3)方法
選擇GET或者POST
4)參數
此處為POST的參數
5)位置
此處為具有注入漏洞的參數的位置號
6)類型
注入漏洞的類型:整數型、字符串型以及搜索行,掃描結果中的注入漏洞列表中會提供相應的信息,如果是手動輸入,請手工確認漏洞信息。
7)關鍵字
關鍵字必須通過人工的方式來確認(可以通過本軟件的輔助工具中的手工測試臺),所謂關鍵字是指當參數后面所跟條件為恒成立時,網站反饋的網頁內容中必然包含的字符串,并且是當參數后面所跟條件為恒不成立時,網站反饋的網頁內容中必然不包含該字符串,則該字符串為關鍵字。【請注意閱讀此“關鍵字”部分】
8)數據庫類型
填入以上信息后,可以通過點擊猜測數據庫類型來進行猜測,根據數據庫不同的類型可以猜測相應數據庫的屬性以及數據的內容。
注意:
MSSQL With Error數據庫類型即后臺數據庫為MSSQL,并且WEB服務器支持錯誤信息的反饋。
對于Access數據庫類型的猜測只支持帶錯誤顯示的Web服務器。
3.2數據庫基本信息猜測
當猜測完數據庫類型后,可以利用注入漏洞來猜測相應數據庫的基本信息,如:數據庫名稱、版本、賬戶名稱等信息。
|
| 圖8 數據庫基本信息 |
3.3數據庫內容猜測
數據庫內容的猜測有兩種方式:一是根據數據庫自身的字典進行猜測,Oracle、MSSQL、MSSQLWithError屬于該類型;二是通過外部字典方式來進行猜解,Access屬于該類型,因此對Access數據庫的猜測依賴于外部字典的強大,本軟件默認使用dict目錄下的字典文件,用戶可以編輯該文件以增強字典的功能。數據庫的猜測順序為:猜測表名、猜測某一表的列名、猜測某一表某些列的內容。為了提高猜測的性能以及準確度,您需要填寫如下信息。
1)編碼方式
猜測非中文字符一般不需要指定,采用默認的ASCII碼方式即可,如果猜測結果出現亂碼或空字符,則可能是由于其中包含中文字符,此時需要更改編碼的方式,可以逐一嘗試,直到猜測到正確字符為止。
2)猜測條件
當猜測表名、列名以及數據內容時,數據量過大,猜測可能需要花費很長的時間,這時可以通過設定限制條件來進行過濾,如:猜測MSSQLServer數據庫的表名時,可以輸入:name like '%user%' ,猜測Oracle數據庫表名時,可以輸入:table_name like '%user%'。
|
| 圖9 數據庫內容 |
#p#
4.輔助工具
4.1手工測試
通過手動的方式來定制發送到WEB服務器的參數獲取網頁內容,通過這種方式可以測試漏洞、獲取關鍵字等。
|
| 圖10 手動測試臺 |
其中:
HTTP頭,顯示服務器反饋的信息頭內容。
網頁格式,顯示瀏覽器中顯示的內容。
網頁源代碼,即為該網頁的原始代碼。
5.設置
通常情況下,軟件已經默認定制了通用的掃描方式和屬性,適應大部分網站掃描。如果遇到一些特殊情況,可以通過設置來定制掃描方式和屬性。
5.1 HTTP選項設置
|
| 圖11 HTTP配置選項 |
UserAgent:掃描網站時在HTTP頭設置UserAgent的字符串,如果某些網站限制特定UserAgent的訪問,則需要修改默認值。 頁面大小:當遇到過大的網頁或者其他文件時,網頁爬蟲就不需要獲取,如,爬蟲爬到某一比較大的avi文件時,就不需要獲取其詳細內容。 網絡超時:您可以靈活設置。
5.2爬蟲設置
|
| 圖12 爬蟲設置 |
文件后綴過濾:爬蟲遇到一些二進制文件,由于其中不可能會包含下一級的鏈接地址,因此不需要獲取其具體內容。
表單內容填寫:當爬蟲爬到一些需要用戶輸入的表單內容時,爬蟲需要自動填寫的內容,軟件默認值為:1
5.3檢測設置
|
| 圖13 檢測設置 |
參數過濾:某些參數是WEB的一些通用參數,這些參數是某些語言的一些默認參數,因此不需要檢測這些參數,以提高檢測效率。
網頁檢測次數:對于同一網頁腳本不同參數,檢測結果一般相同,沒有必要連續檢測過多的次數。
5.4策略配置
|
| 圖14 策略配置 |
在掃描策略選擇時選擇全部策略,可能不希望進行某幾個模塊的檢測,可以在這里進行設定。#p#
三、常見問題
Q1: 當輸入掃描地址并點擊開始后,程序無反應。
A1: 產品沒有注冊,或沒有輸入注冊碼激活,請檢查您的許可證。
Q2: 安裝完成后,程序不能運行是怎么回事?
A2: UnisWebScanner是基于.NET框架構建進行開發的,運行這樣的程序您需要首先安裝 .NET框架,當前最新版本是3.5 SP1,可以在
http://msdn.microsoft.com/en-us/netframework/default.aspx處進行下載。
Q3: 開始掃描網站后,馬上就結束了,為什么?
3: 指定的目標網站首頁可能是flash等文件,請跳過該頁,指定一個包含該網站主要導航鏈接的“首頁”進行掃描。
Q4: 網站掃描了快10個小時了,還沒完,是不是出錯了?A4: 可能是指定的網站較大頁面數量較多,也可能是其他的原因,請及時聯系我們的技術服務團隊。
Q5: 謝謝您們的產品,但我希望能確定網站是否存在漏洞并獲得解決方案,能幫助我嗎?
A5: 是的。UnisWebScanner團隊多年來專注于Web安全研究,您可以隨時申請我們專業的服務支持。
四、 附錄
附錄1:HTTP狀態碼
摘自HTTP 協議(版本1.1)RFC 2616,詳細信息參見
http://www.ietf.org/rfc/rfc2616.txt
100: Continue
101: Switching Protocols
200: OK
201: Created
202: Accepted
203: Non-Authoritative Information
204: No Content
205: Reset Content
206: Partial Content
300: Multiple Choices
301: Moved Permanently
302: Found
303: See Other
304: Not Modified
305: Use Proxy
307: Temporary Redirect
400: Bad Request
401: Unauthorized
402: Payment Required
403: Forbidden
404: Not Found
405: Method Not Allowed
406: Not Acceptable
407: Proxy Authentication Required
408: Request Time-out
409: Conflict
410: Gone
411: Length Required
412: Precondition Failed
413: Request Entity Too Large
414: Request-URI Too Large
415: Unsupported Media Type
416: Requested range not satisfiable
417: Expectation Failed
500: Internal Server Error
501: Not Implemented
502: Bad Gateway
503: Service Unavailable
504: Gateway Time-out
505: HTTP Version not supported extension-code




































