1. 程式人生 > >使用Nikto漏洞掃描工具檢測網站安全

使用Nikto漏洞掃描工具檢測網站安全

分類: 網路技術 linux 除錯心得 586人閱讀 評論(0) 收藏 舉報  Nikto是一款開放原始碼的、功能強大的WEB掃描評估軟體,能對web伺服器多種安全專案進行測試的掃描軟體,能在230多種伺服器上掃描出2600多種有潛在危險的檔案、CGI及其他問題,它可以掃描指定主機的WEB型別、主機名、特定目錄、COOKIE、特定CGI漏洞、返回主機允許的http模式等等。它也使用LibWhiske庫,但通常比Whisker更新的更為頻繁。Nikto是網管安全人員必備的WEB審計工具之一。
    需要有perl語言環境。

Nikto的使用說明:
---------
Nikto掃描需要主機目標IP、主機埠。預設掃描的是80埠。掃描主機目標IP地址可以使用選項-h(host)。下面將掃描IP為192.168.0.1的TCP 80埠,如下所示:

perl nkito.pl –h 192.168.0.1

也可以自定義掃描的埠,可以使用選項-p(port),下面將掃描IP為192.168.0.1的TCP 443埠,如下所示:

perl nikto.pl –h 192.168.0.1 –p 443

Nikto也可以同時掃描多個埠,使用選項-p(port),可以掃描一段範圍(比如:80-90),也可以掃描多個埠(比如:80,88,90)。下面掃描主機的80/88/443埠,如下所示:

Perl nikto.pl –h 192.168.0.1 –p 80,88,443

如果執行Nikto的主機是通過HTTP proxy來訪問網際網路的,也可以使用代理來掃描,使用選項-u(useproxy)。下面將通過HTTP proxy來掃描,如下所示:

Perl nikto.ph –h 192.168.0.1 –p 80 –u

Nikto的更新:

Nikto的升級可以通過-update的命令來更新外掛和資料庫,如下所示:

Perl nikto.ph –update

也可以通過從網站下載來更新外掛和資料庫:
http://updates.cirt.net/


Nikto的選項說明:

-Cgidirs
掃描CGI目錄。

-config
使用指定的config檔案來替代安裝在本地的config.txt檔案

-dbcheck
選擇語法錯誤的掃描資料庫。

-evasion
使用LibWhisker中對IDS的躲避技術,可使用以下幾種型別:
1.隨機URL編碼(非UTF-8方式)
2.自選擇路徑(/./)
3.虛假的請求結束
4.長的URL請求
5.引數隱藏
6.使用TAB作為命令的分隔符
7.大小寫敏感
8.使用Windows路徑分隔符/替換/
9.會話重組

-findonly
僅用來發現HTTP和HTTPS埠,而不執行檢測規則

-Format
指定檢測報告輸出檔案的格式,預設是txt檔案格式(csv/txt/htm)

-host
目標主機,主機名、IP地址、主機列表檔案。

-id
ID和密碼對於授權的HTTP認證。格式:id:password

-mutate
變化猜測技術
1.使用所有的root目錄測試所有檔案
2.猜測密碼檔名字
3.列舉Apache的使用者名稱字(/~user)
4.列舉cgiwrap的使用者名稱字(/cgi-bin/cgiwrap/~user)

-nolookup
不執行主機名查詢

-output
報告輸出指定地點

-port
掃描埠指定,預設為80埠。

-Pause
每次操作之間的延遲時間

- Display
控制Nikto輸出的顯示
1.直接顯示資訊
2.顯示的cookies資訊
3.顯示所有200/OK的反應
4.顯示認證請求的URLs
5.Debug輸出

-ssl
強制在埠上使用SSL模式

-Single
執行單個對目標服務的請求操作。

-timeout
每個請求的超時時間,預設為10秒

-Tuning
Tuning 選項控制Nikto使用不同的方式來掃描目標。
0.檔案上傳
1.日誌檔案
2.預設的檔案
3.資訊洩漏
4.注射(XSS/Script/HTML)
5.遠端檔案檢索(Web 目錄中)
6.拒絕服務
7.遠端檔案檢索(伺服器)
8.程式碼執行-遠端shell
9.SQL注入
a.認證繞過
b.軟體關聯
g.屬性(不要依懶banner的資訊)
x.反向連線選項

-useproxy
使用指定代理掃描

-update
更新外掛和資料庫

執行./nikto.pl -h 192.168.1.10
- ***** SSL support not available (see docs for SSL install instructions) *****
---------------------------------------------------------------------------
- Nikto 2.02/2.03     -     cirt.net
+ Target IP:       192.168.1.10
+ Target Hostname: 192.168.1.10
+ Target Port:     80
+ Start Time:      2008-07-32 13:16:17
---------------------------------------------------------------------------
+ Server: Apache-Coyote/1.1
- Root page / redirects to: http://192.168.1.10:80/manage/html/ff808181126bebda01126bec4dd03245/index.html
- Allowed HTTP Methods: GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS
+ OSVDB-397: HTTP method ('Allow' Header): 'PUT' method could allow clients to save files on the web server.
+ OSVDB-5646: HTTP method ('Allow' Header): 'DELETE' may allow clients to remove files on the web server.
+ OSVDB-877: HTTP method ('Allow' Header): 'TRACE' is typically only used for debugging and should be disabled. This message does not mean it is vulnerable to XST.
+ OSVDB-39272: /favicon.ico file identifies this server as: Apache Tomcat
+ OSVDB-0: GET /examples/servlets/index.html : Apache Tomcat default JSP pages present.
+ OSVDB-3233: GET /admin/ : Tomcat is installed, however the administration package does not appear to be.
+ OSVDB-3720: GET /examples/jsp/snp/snoop.jsp : Displays information about page retrievals, including other users.
+ OSVDB-3092: GET /admin/ : This might be interesting...
+ OSVDB-3268: GET /docs/ : Directory indexing is enabled: /docs
+ OSVDB-6659: GET /DC3awyw0LYJsjbAO0zrpJkklD9WCP2ZM6tXxB5WVWcjm2F9vbK0OgW3j5LGNYuVLiREjvljozcH9alAHvv0ZksNBRgu2wRId9Qvo3KEy4rf7SyOUgNDSHFCbl5dwM5zXrZ9N6V5J4of5uHHWSsNg7kLoGPKJQvY39OSSqeKLTszBcpWyOC91M6F9enkUVxu0S6vWwCTFAf6nSq5SPp0sXulkPuER4LFuD<font%20size=50>DEFACED<!--//-- : MyWebServer 1.0.2 is vulnerable to HTML injection. Upgrade to a later version.
+ 2967 items checked: 11 item(s) reported on remote host
+ End Time:        2008-07-32 13:16:37 (20 seconds)
---------------------------------------------------------------------------
+ 1 host(s) tested