SQL堆疊注入簡介
今天繼續(xù)給大家介紹Linux運(yùn)維相關(guān)知識,本文主要內(nèi)容是SQL堆疊注入。
免責(zé)聲明:
本文所介紹的內(nèi)容僅做學(xué)習(xí)交流使用,嚴(yán)禁利用文中技術(shù)進(jìn)行非法行為,否則造成一切嚴(yán)重后果自負(fù)!
再次強(qiáng)調(diào):嚴(yán)禁對未授權(quán)設(shè)備進(jìn)行滲透測試!
一、SQL 堆疊注入簡介
所謂SQL堆疊注入,指的是在存在SQL語句交互的場景下,通過分號之間的間隔,使得能夠一次性得執(zhí)行多條SQL語句。
MySQL數(shù)據(jù)庫支持使用分號作為間隔,一次性的執(zhí)行多條SQL語句,執(zhí)行結(jié)果如下所示:
SQL堆疊注入通??梢詭椭覀兿蛘军c(diǎn)內(nèi)部的數(shù)據(jù)庫中插入或者刪除數(shù)據(jù),只需要在正常的而查詢SQL語句后面拼接insert或者delete語句即可。需要注意的是我們在進(jìn)行SQL堆疊注入的過程中,一定要注意SQL語句的閉合。
此外,SQL堆疊注入也有其局限性,并不是所有的數(shù)據(jù)庫都支持SQL堆疊注入,即使是支持堆疊注入的數(shù)據(jù)庫,也存在API或者引擎方面的限制。
二、SQL堆疊注入實(shí)戰(zhàn)
下面,我們就進(jìn)行SQL堆疊注入的實(shí)戰(zhàn)。
我們使用sqli_lab靶場的38關(guān),構(gòu)造payload如下所示:
http://127.0.0.1/sqli/Less-38/?id=1';insert into users values(17,%'admin','admin')--+
該payload執(zhí)行結(jié)果如下所示:
以上可以看出,我們的SQL堆疊注入實(shí)驗(yàn)成功,向數(shù)據(jù)庫內(nèi)插入了數(shù)據(jù)!
到此這篇關(guān)于SQL堆疊注入詳解的文章就介紹到這了,更多相關(guān)SQL堆疊注入詳解內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
sqlserver中向表中插入多行數(shù)據(jù)的insert語句
關(guān)于sql 2000中如何使用insert語句插入多行記錄,可是郁悶壞了我。2010-08-08SQL Server存儲過程中編寫事務(wù)處理的方法小結(jié)
這篇文章主要介紹了SQL Server存儲過程中編寫事務(wù)處理的方法,結(jié)合實(shí)例形式總結(jié)分析了三種存儲過程中編寫事務(wù)處理的方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2016-03-03必須會的SQL語句(七) 字符串函數(shù)、時(shí)間函數(shù)
這篇文章主要介紹了sqlserver中字符串函數(shù)、時(shí)間函數(shù)使用方法,需要的朋友可以參考下2015-01-01sqlserver存儲過程中SELECT 與 SET 對變量賦值的區(qū)別
SQLServer中對已經(jīng)定義的變量賦值的方式用兩種,分別是 SET 和 SELECT。對于這兩種方式的區(qū)別,SQL Server 聯(lián)機(jī)叢書中已經(jīng)有詳細(xì)的說明,但很多時(shí)候我們并沒有注意,其實(shí)這兩種方式還是有很多差別的。2011-04-04case?when?then?else?end語句的用法(附demo)
本文主要介紹了case?when?then?else?end語句的用法,主要介紹了兩種格式,簡單case函數(shù)和case搜索函數(shù),具有一定的參考價(jià)值,感興趣的可以了解一下2023-10-10sqlserver 2000數(shù)據(jù)庫同步 同步兩個(gè)SQLServer數(shù)據(jù)庫的內(nèi)容
程序代碼可以有版本管理CVS進(jìn)行同步管理,可是數(shù)據(jù)庫同步就非常麻煩,只能自己改了一個(gè)后再去改另一個(gè),如果忘記了更改另一個(gè)經(jīng)常造成兩個(gè)數(shù)據(jù)庫的結(jié)構(gòu)或內(nèi)容上不一致.2010-05-05如何在 SQL SERVER 中快速有條件刪除海量數(shù)據(jù)
如何在 SQL SERVER 中快速有條件刪除海量數(shù)據(jù)...2006-12-12