漏洞概要
关注数(5)
关注此漏洞
漏洞标题: 易思espcms后台功能绕过[可直接利用后台sql注入]
提交时间: 2013-06-16 00:35
公开时间: 2013-09-14 00:36
漏洞类型: SQL注射漏洞
危害等级: 中
自评Rank: 10
漏洞状态:
厂商已经确认
漏洞详情
披露状态:
2013-06-16: 细节已通知厂商并且等待厂商处理中
2013-06-16: 厂商已经确认,细节仅向厂商公开
2013-06-19: 细节向第三方安全合作伙伴开放(绿盟科技、唐朝安全巡航、无声信息)
2013-08-10: 细节向核心白帽子及相关领域专家公开
2013-08-20: 细节向普通白帽子公开
2013-08-30: 细节向实习白帽子公开
2013-09-14: 细节向公众公开
简要描述:
后台功能绕过,后台存在sql注入
结合绕过漏洞,进行sql注入
详细说明:
本地测试使用默认的adminsoft为后台目录,使用类的构造函数验证用户的后台访问权限
后台各功能都为模版类important,该类构造函数如下:
该类为继承类,跟进父类,文件/public/class_connector.php中第14行
判断管理权限主要为代码$this->admin_purview();,跟进在该文件第330行如下:
跟上一个问题差不多,获取cookie里面的字段ecisp_admininfo,然后解密赋值,也就是说只要保证代码if (empty($this->esp_username) || empty($this->esp_adminuserid) || md5(admin_AGENT) != $this->esp_useragent || md5(admin_ClassURL) != $this->esp_softurl)不成立,则可以绕过逻辑验证,访问后台功能函数。
admin_AGENT和admin_ClassURL又为预定义数据,
由此可以伪造对应的cookie字段ecisp_admininfo,我这里使用火狐浏览器,
加密前:1|2|3|e0b858f1249c7bbe85c69dcf5eaac720|5|6|fae169abd4e73eb55567e2a202526274
内置加密函数加密一下:ZLCTsWitnWeabWVqy2WTZ5_IbciYyGqXm2tsmMSbapaZmJtsYmLhad1p4suXy2eZa8OamWeZmGiak21sbWtnl5eVk2OYmmicaJpm
添加这个cookie字段后可以绕过限制,访问任意函数了
下面我演示一下通过此漏洞利用后台文件adminsoft/control/acmessagemain.php的sql注入
漏洞证明:
文件/adminsoft/control/acmessagemain.php 第52行到63行
$limitkey直接通过$this->fun->accept('limitkey', 'R');获取未做处理,该函数默认进行gpc,htmlspecial过滤,由于此处不在引号内部,可直接忽略上述处理,
我这里不登陆直接添加上述cookie字段后,打印一下sql语句吧,
修复方案:
漏洞回应
厂商回应:
危害等级:低
漏洞Rank:3
确认时间:2013-06-16 12:03
厂商回复:
感谢对漏洞的提供,我们将会尽快修复!
最新状态:
暂无
漏洞评价:
对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值
漏洞评价(共0人评价):
评价
-
2013-06-16 11:05 |
xsser
( 普通白帽子 |
Rank:297 漏洞数:22 | 当我又回首一切,这个世界会好吗?)
2
-
2013-06-16 15:09 |
少校
( 实习白帽子 |
Rank:40 漏洞数:5 | 别开枪,自己人!)
1
-
2015-09-01 22:23 |
Elliott
( 实习白帽子 |
Rank:48 漏洞数:11 | 绝逼不当程序员)
0
每个程序 db_pscode 都不一样吧 ,你这dp_pscode怎么来??