SQL注入-二阶注入(十)
實驗?zāi)康?br /> 普及二階注入的原理及發(fā)生的場景,了解二階注入與普通注入的區(qū)別,熟悉二階注入的方法和過程。
實驗環(huán)境
攻擊機:Pentest-Atk
(1)操作系統(tǒng):Windows10
(2)安裝的應(yīng)用軟件:sqlmap 、Burpsuite 、FireFox瀏覽器及其插件Hackbar 、 等
(3)登錄賬號密碼:操作系統(tǒng)帳號Administrator,密碼Sangfor!7890
靶機:A-SQLi-Labs
(1)操作系統(tǒng):本機(建議用虛擬機)不過我太懶了[]~( ̄▽ ̄)~*
(2)安裝的應(yīng)用軟件:Apache、MySQL(MariaDB)、PHP:DVWA、SQLi-Labs、
webug3.0環(huán)境搭建
(3)登錄賬號密碼:操作系統(tǒng)帳號root,密碼Sangfor!7890
實驗原理
所謂二階注入(又稱存儲型注入)是指已存儲(數(shù)據(jù)庫、文件)的用戶輸入被讀取后再次進入到SQL查詢語句中導(dǎo)致的注入。
二階注入與普通注入的區(qū)別:
(1)普通SQL注入:發(fā)生在一個HTTP請求和響應(yīng)中,對系統(tǒng)的攻擊是立即執(zhí)行的:1)攻擊者在http請求中提交非法輸入:2)應(yīng)用程序處理非法輸入,使用非法輸入構(gòu)造SQL語句:3)在攻擊過程中向攻擊者返回結(jié)果。
(2)二階SQL注入:1)攻擊者在http請求中提交某種經(jīng)過構(gòu)思的輸入:2)應(yīng)用程序存儲該惡意輸入(通常保存在數(shù)據(jù)庫中)以便后面使用并響應(yīng)請求:3)攻擊者提交第二次(不同的)http請求:4)為處理第二次http請求,程序會檢索存儲在數(shù)據(jù)庫中的惡意輸入并進行處理,從而導(dǎo)致攻擊者構(gòu)造的SQL查詢被執(zhí)行:5)如果攻擊成功,在第二次請求響應(yīng)中向攻擊者返回查詢結(jié)果。
實驗步驟
本實驗的目標(biāo)是:以SQLi-Labs網(wǎng)站的Less-24為入口,利用二階注入的方式
將目標(biāo)用戶名admin的密碼更改成指定的aabbcc。
1.訪問SQLi-Labs網(wǎng)站
在攻擊機Pentest-Atk打開FireFox瀏覽器,并訪問粑機A-SQLi-Labs上的
SQLi-Labs網(wǎng)站Less-24。訪問的URL為:
2.注冊新用戶
在Less-24的初始頁面點擊右下方的“New...re?”(我網(wǎng)頁自動翻譯懶得關(guān)了)
?在用戶注冊頁面新建用戶admin#,并設(shè)置其登錄密碼(123456)
新用戶注冊成功后將自動跳轉(zhuǎn)至Less-24的初始頁面。
3.利用新用戶admin#登錄并修改密碼
利用剛剛注冊的新用戶admin'#登錄
登錄后出現(xiàn)可修改密碼的認證界面,在此處將admin#的密碼123456修改為
aabbcc,修改完成后點擊Reset按鈕確認
修改成功提示
4.用用戶名admin、密碼aabbcc嘗試登錄網(wǎng)站
(1)重新訪問SQLi-Labs網(wǎng)站Less-24,訪問的URL為
此時admin#用戶仍然處于登錄狀態(tài),點擊Logout按鈕退出登錄,會跳轉(zhuǎn)至Less-24的初始頁面。
(2)在Less-24的初始頁面,利用用戶名admin、密碼aabbcc登錄:
實驗至此結(jié)束。
思考一下:為什么明明執(zhí)行了修改 admin#用戶密碼的操作,實際上卻是修改了admin用戶的密碼呢?
從原理上來看,修改 admin#的密碼為 aabbcc時,此時后端數(shù)據(jù)庫執(zhí)行的命令
UPDATE users SET PASSWORD='aabbcc' where username='admin'#' andpassword='123456’;
#表示注釋,上述語句即等價于:
UPDATE users SET PASSWORD='aabbcc where username= 'admin'
所以這條語句執(zhí)行的最終效果是將用戶 admin的密碼修改為了 aabbcc
SOL注入——HTTP頭部注入(2)(七)_Gjqhs的博客-CSDN博客
SOL注入——基干聯(lián)合查詢的POST注入(四)_Gjqhs的博客-CSDN博客
SQL注入 ——sql數(shù)據(jù)庫操作基礎(chǔ)(一)_Gjqhs的博客-CSDN博客
...
更多包括而不限于SQL注入的文章,關(guān)注我全部帶走吧(≧?≦)ノ
總結(jié)
以上是生活随笔為你收集整理的SQL注入-二阶注入(十)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SQL注入——基于时间的盲注(九)
- 下一篇: SQL注入-SQLMAP基础使用(十二)