sql注入 1-1_基于报错的注入
sql注入 1-1_ 基于報錯注入
1.判斷是否存在報錯注入
通過 id =1
可以看到服務器返回正常頁面
通過 id=1 and 1=1
通過 id=1 and 1=2
服務器也返回正常
通過 id=1’ 提交
可以看到服務器報錯
通過 ’ 1’’ limit0,1 ’
可以推測出sql語句中提交的參數為:select * from 某數據庫 where id =‘id’
–加 空格(注釋符) 閉合前面的單引號
服務器返回正常頁面,說明url中帶入sql語句
由此推斷存在sql注入
2.漏洞利用
既然存在漏洞
我們就使用order by 來檢查存在幾個字段
切記用 --空格閉合前面的單引號否則會報錯
通過對比發現輸入字段3時正常,字段4報錯,則可以確定存在3個字段。
使用聯合查詢
此時需要修改id的參數為任意字符或0,這樣就可以判斷出存在注入的點在1還是2還是3
以下是修改前
修改后
可以看到報出存在注入的位置
此時則可以在相應的位置輸入相應的sql語句,如圖得到了數據的名稱,和數據庫的版本
其他詳細的注入,可以參考此表
3.基于報錯的 sqlmap 注入
基于報錯的sqlmap注入很簡單,直接提交url再輸入相應的參數及可以得到銘感數據
4.總結
1.判斷是否存在sql報錯注入,在url id=1參數后添加單引號,雙引號,反斜杠,如果報錯則有可能存在注入
2.通過報錯分析出sql語句,更好的下一步滲透
3.總結,報錯注入,一般是程序員沒有給sql語句中的參數添加過濾機制,
造成代碼中的報錯語句出現信息泄露,并且可以直接拼接sql語句到url。
總結
以上是生活随笔為你收集整理的sql注入 1-1_基于报错的注入的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大话西游维护完怎么刷服务器,大话西游2很
- 下一篇: sql_1-2_get基于盲注