午夜视频在线网站,日韩视频精品在线,中文字幕精品一区二区三区在线,在线播放精品,1024你懂我懂的旧版人,欧美日韩一级黄色片,一区二区三区在线观看视频

分享

SQL注入測試工具:Pangolin(穿山甲)

 昵稱13655030 2013-08-27

第一章、簡介

 

1.1 Pangolin是什么?

Pangolin是一款幫助滲透測試人員進行Sql注入測試的安全工具。

所謂的SQL注入測試就是通過利用目標網(wǎng)站的某個頁面缺少對用戶傳遞參數(shù)控制或者控制的不夠好的情況下出現(xiàn)的漏洞,從而達到獲取、修改、刪除數(shù)據(jù),甚至控制數(shù)據(jù)庫服務(wù)器、Web服務(wù)器的目的的測試方法。

Pangolin能夠通過一系列非常簡單的操作,達到最大化的攻擊測試效果。它從檢測注入開始到最后控制目標系統(tǒng)都給出了測試步驟。

過去有許多Sql注入工具,不過有些功能不完全,支持的數(shù)據(jù)庫不夠多,或者是速度比較慢。但是,在Pangolin發(fā)布以后,這些問題都得到了解決。Pangolin也許是目前已有的注入工具中最好的之一。

1.2 使用Pangolin可以用來做什么

如下是一些示例:

  • 滲透測試人員用于發(fā)現(xiàn)目標存在的漏洞并評估漏洞可能產(chǎn)生后果的嚴重程度
  • 網(wǎng)站管理員可以用于對自己開發(fā)的代碼進行安全檢測從而進行修補
  • 安全技術(shù)研究人員能夠通過Pangolin來更多更深入的理解SQL注入的技術(shù)細節(jié)

1.3 特色

如下是Pangolin提供的一部分特點:

  • 全面的數(shù)據(jù)庫支持
  • 獨創(chuàng)的自動關(guān)鍵字分析能夠減少人為操作且更判斷結(jié)果準確
  • 獨創(chuàng)的內(nèi)容大小判斷方法能夠減少網(wǎng)絡(luò)數(shù)據(jù)流量
  • 最大話的Union操作能夠極大的提高SQL注入操作速度
  • 預(yù)登陸功能,在需要驗證的情況下照樣注入
  • 代理支持
  • 支持HTTPS
  • 自定義HTTP標題頭功能
  • 豐富的繞過防火墻過濾功能
  • 注入站(點)管理功能
  • 數(shù)據(jù)導(dǎo)出功能
  • ……等其他更多

1.4 它不能做什么

Pangolin只是一個注入驗證利用工具,不是一個Web漏洞掃描軟件。因此您不能用它來做整網(wǎng)站的掃描。

另外,他也不支持注入目錄遍歷等功能,這些功能您可以借助其他的安全工具進行。

1.5 到哪里獲取Pangolin

Pangolin的更新速度很快,你可以經(jīng)常到http://www./web/pangolin去下載最新版本。

1.6 運行環(huán)境

目前Pangolin只能運行在Windows系統(tǒng)平臺,支持32位/64位Windows NT/2000/XP/2003/Vista/2008。

支持的數(shù)據(jù)庫類型

數(shù)據(jù)庫類型 目標信息獲取 其他
MS SQL 服務(wù)器版本、服務(wù)器名稱、數(shù)據(jù)庫名稱、當前用戶、當前用戶權(quán)限、數(shù)據(jù)庫列表 執(zhí)行系統(tǒng)命令、讀取注冊表、讀文件、寫文件、下載遠程文件、導(dǎo)出數(shù)據(jù)到指定的數(shù)據(jù)庫服務(wù)器
Oracle 版本信息、IP地址、當前用戶、當前會話權(quán)限、主機名、實例名稱、用戶賬號信息、外部IP地址 賬號破解、注入提權(quán)(adding)、遠程數(shù)據(jù)存儲讀取
Mysql 版本、GPC判斷、數(shù)據(jù)庫列表、臨時目錄、當前用戶、操作系統(tǒng)信息、用戶賬號 讀文件、寫文件
Access 數(shù)據(jù)庫路徑、根目錄、磁盤信息 只能暴力
PostgreSQL 版本信息、數(shù)據(jù)庫、當前用戶、當前會話用戶、端口、數(shù)據(jù)路徑、搜索路徑 讀文件
DB2 版本信息、數(shù)據(jù)庫、當前用戶、操作系統(tǒng)名稱、操作系統(tǒng)版本、主機名稱 ……
Sybase …… ……
Informix …… ……
Sqlite …… ……


1.7 報告問題和獲取幫助

如果您在使用過程中有任何的意見或者建議,您可以到http://www.網(wǎng)站上進行評論留言,這里會有一群共同興趣的朋友幫助您。或者您可以直接給我發(fā)送郵件:zwell@sohu.com。

 

第二章、用戶界面

下圖為主界面圖


如上圖所示,我們可以看到Pangolin的主界面是很簡單明了的,它分為幾個區(qū)域:

  • 最上面的是注入控制區(qū)域,在這里您可以進行一些注入?yún)?shù)設(shè)置,以及通過點擊按鈕進入到高級配置界面;
  • 中間的一大塊區(qū)域為數(shù)據(jù)顯示區(qū)域,用于顯示注入獲取的數(shù)據(jù)已經(jīng)進行針對不同數(shù)據(jù)庫的高級注入操作;
  • 下面有日志信息區(qū)還有狀態(tài)欄區(qū),能夠告訴您當前的工作狀態(tài)信息。

下面我們就這些控件進行詳細的說明:

2.1.1 URL輸入框

在這里輸入待測試目標的URL地址,

注意,該URL地址必須是攜帶參數(shù)的格式,例如http://www./news.asp?id=100這樣的格式。

2.1.2 注入方式選擇框

HTTP常用的數(shù)據(jù)傳輸方法有GET和POST方式,通常情況下,請求數(shù)據(jù)用GET方式,傳遞數(shù)據(jù)用POST方式。如果服務(wù)器端代碼處理GET和POST參數(shù)的操作是一致的話(JSP編程中經(jīng)??梢砸姷剑敲赐ㄟ^GET和POST傳遞參數(shù)的效果是一樣的。這時使用POST可以避免服務(wù)端日志的產(chǎn)生。

另外需要注意的是,如果待測參數(shù)是通過表單傳遞,那么您需要進行地址拼接。假設(shè)參數(shù)傳遞的目標地址為http://www./login.asp,參數(shù)分別為username和password,那么測試時,您需要在URL輸入框中輸入http://www./login.asp?username=aa&password=bb這樣的格式,并且將注入方式設(shè)置成POST。

普通模式下,我們建議您使用GET方式。

2.1.3 注入控制按鍵

Pangolin的注入過程采用了多線程的方式,您在注入過程中隨時可以進行暫停/繼續(xù)操作和停止操作。

在您輸入了待測試目標的URL后,您可以點擊Check進行掃描操作,這時Check按鍵變灰,Pause和Stop按鍵變?yōu)榭捎茫@時您就可以進行暫?;蛑兄共僮髁?。

這里提醒您一點,在后面我們提到的所有的操作,無論是猜解數(shù)據(jù)也好,高級功能操作也好,在操作過程中,您隨時可以暫?;蛘咧兄梗荂heck按鍵只能用于注入掃描。

2.1.4 注入類型選擇框

掃描不同的參數(shù)類型我們將注入類型分為interger和String還有Search型。分別對應(yīng)數(shù)值型,字符型還有搜索型。在掃描到注入點以后,該選擇框?qū)⒆詣舆x擇對應(yīng)的注入類型。

在注入前,如果我們已知了某個參數(shù)的注入類型,那么我們可以先從該下拉框中選擇合適的值,這樣能夠縮短注入掃描的時間。

2.1.5 數(shù)據(jù)庫類型選擇框

順便提及一點:SQL注入是跟數(shù)據(jù)庫強相關(guān)的,而不是頁面的代碼語言,這一點許多文章都誤導(dǎo)了讀者。我們看到什么asp注入,php注入,jsp注入之類的概念都是不正確的。而應(yīng)當說是MSSQL注入,Mysql注入或者Oracle注入等等。

在這個選擇框中指明了目標Web連接的數(shù)據(jù)庫類型。在掃描到注入點以后,該選擇框?qū)⒆詣舆x擇對應(yīng)的數(shù)據(jù)庫類型。

在注入前,如果我們已知了目標的數(shù)據(jù)庫類型,那么我們可以先從該下拉框中選擇合適的值,這樣能夠縮短注入掃描的時間。

2.1.6 關(guān)鍵字輸入框

什么叫關(guān)鍵字呢?在自動化工具的測試過程中,如果目標針對不同的注入語句進行了錯誤提示的話那么程序能夠知道這是一個典型的錯誤,然后就能夠提取信息。但是如果頁面返回的結(jié)果中并沒有帶有明確的錯誤提示信息的話,那么程序?qū)o法判斷哪一種情況下是正常頁面哪一種情況下是錯誤頁面。因為,測試人員需要手動的告之程序一個正常的頁面或者錯誤的頁面有什么特殊字符串能夠標明,這時候您就需要在這里輸入這個字符串了。

在其他的一些注入工具中,如果測試人員沒有輸入關(guān)鍵字的話是無法進行測試的,但是在Pangolin中我獨創(chuàng)了自動分析關(guān)鍵字的功能,它能夠讓你在不干預(yù)的情況下自動的分析關(guān)鍵字從而更掃描出漏洞。

在2.2節(jié)中,我們將給您描述如何啟用或者關(guān)閉該功能。

2.1.7 配置按鈕

Options按鈕將帶您進入到一些全局參數(shù)的配置界面中,這一部分我們將在下一節(jié)中為您詳細介紹。

2.1.8 掃描狀態(tài)重置按鈕

如果您在完成了一次對某個URL的注入操作以后,還想對另一個URL進行掃描操作,那么建議您點擊一下該按鈕,從而將掃描注入的全局狀態(tài)清空。

2.1.9 注入點手工配置按鈕

本按鈕屬于高級選項,通常不建議您點擊進行配置的修改。具體用途待整理。

好了,如果您進入了本界面,說明您已經(jīng)知道如何點擊"Options"按鈕了,那么恭喜 ;)先看看如下界面圖:


從上圖可以清楚的看到,配置界面中包含四大部分:

2.2.1 HTTP標題頭編輯界面

在本界面中,您可以完全自定義HTTP標題頭域的字段,如最常用的User-Agent和Cookie標題頭,通常你需要知道一些特定含義的字符串。

這里也做一個簡單的說明:User-Agent可以用來進行客戶端偽造,您知道為什么很多情況下Google能返回某些正文而我們?nèi)フ埱髸r需要我們登錄嗎?原因很簡單,網(wǎng)站為了自身更好的推廣,所以針對Google的robots開放了通行證,所以我們就可以利用這種關(guān)系進行更深入的工作。而對于Cookie標題頭而言,它的作用更明顯了,說直白一點,它是我們身份的象征。一些站點需要先登錄才能進行注入(如管理后臺的頁面),其他的一些注入工具需要你手動輸入或者讓你手工輸入登錄界面的參數(shù)字段來進行。但是在Pangolin中,您可以直接點擊以下按鈕來完成這些生澀的操作。

除此之外,你也可以自定其他一些個性化的標題頭。

2.2.1.1User-Agent選擇按鈕

這個按鈕的功能顯而易見,Pangolin預(yù)置了一些最常見的Web瀏覽器的客戶端類型以及搜索引擎的類型,在點擊按鈕以后,您可以直接選擇一個作為您注入時使用的對象,這樣您就能偽造客戶端類型了。


2.2.1.2 預(yù)登錄界面


2.2.2 代理配置界面


2.2.3 注入掃描參數(shù)配置界面


2.2.4 高級參數(shù)配置界面


2.2.5 注入數(shù)據(jù)管理界面

第三章、基本的操作步驟


3.1 開始注入

  1. 啟動Pangolin
  2. 在URL輸入框中輸入待測試的URL地址,注意該地址是攜帶參數(shù)的格式
  3. 點擊Check
  4. 如果在注入數(shù)據(jù)庫中已經(jīng)存在了該網(wǎng)站的某個注入點的話,那么您將會看到如下的對話框:
  5. 如果你想使用已經(jīng)存在的注入點,那么選中一個并點擊Use this按鍵;
  6. 如果您不需要的話,直接點擊Cancel按鍵繼續(xù)。
  7. 好了,如果您足夠幸運的話,您應(yīng)該看到注入類型和數(shù)據(jù)庫類型都已經(jīng)獲取到了,
  8. 那么恭喜,我們可以進入下面的一些操作步驟,如下圖所示,目標系統(tǒng)采用的是Mysql數(shù)據(jù)庫,那么除了最基本的Information和Datas標簽頁以外還會有FileReader和MySqlFileWriter分別可以用于讀寫文件,本章將只關(guān)注基本的操作,其他內(nèi)容將放入到下一章進行說明:

3.2 獲取基本的信息

  1. 切換到Information標簽頁
  2. 我們可以看到里面有一些選項可以選擇,選中您想獲取的信息,如果您不想挨個點擊的話,可以直接點擊Select All按鈕
  3. 點擊Go按鈕
  4. 相信你應(yīng)該可以看到Pangolin返回了這些信息;)

3.3 獲取表

  1. 切換到Datas標簽頁
  2. 點擊Tables按鍵,開始您的獲取表清單之旅
  3. 下圖是獲取數(shù)據(jù)表后的截圖:

3.4 獲取列

  1. 在您想獲取列結(jié)構(gòu)的表上點擊,選中表(很多朋友以為要獲取列需要勾上前面的選擇框,其實在這一步是不需要的)
  2. 這時Columns按鍵將會變?yōu)榭捎?
  3. 點擊Columns按鍵,如下是可能的結(jié)果圖:

3.5 獲取數(shù)據(jù)

  1. 在左邊的表和列樹形選擇視圖中選擇要獲取數(shù)據(jù)的表及其對應(yīng)的列,注意一次只能針對一個表進行,在您點擊一個列后,右邊的數(shù)據(jù)視圖會相應(yīng)的增加該列
  2. 這時Datas按鍵變?yōu)榭梢?
  3. 在1=1那個輸入框中輸入您自定義的獲取數(shù)據(jù)的條件表達式,如果你不清楚是什么或者想獲取所有數(shù)據(jù)的話,你直接保留不動即可
  4. 點擊Datas按鍵,Pangolin將會進行數(shù)據(jù)的猜,如下圖為可能的結(jié)果圖:

3.6 保存數(shù)據(jù)

您可以直接點擊Save按鍵保存當前獲取的數(shù)據(jù)。

 

四、貢獻者列表(Contributors)

在Pangolin的開發(fā)過程中,得到了許多朋友的支持和幫助,這里特別要感謝如下人員:

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多