漏洞概要
关注数(24)
关注此漏洞
漏洞标题:ecshop csrf getshell
提交时间:2012-10-21 21:03
修复时间:2012-12-05 21:04
公开时间:2012-12-05 21:04
漏洞类型:CSRF
危害等级:高
自评Rank:15
漏洞状态:厂商已经确认
Tags标签:
无
漏洞详情
披露状态:
2012-10-21: 细节已通知厂商并且等待厂商处理中
2012-10-21: 厂商已经确认,细节仅向厂商公开
2012-10-31: 细节向核心白帽子及相关领域专家公开
2012-11-10: 细节向普通白帽子公开
2012-11-20: 细节向实习白帽子公开
2012-12-05: 细节向公众公开
简要描述:
吐槽下ecshop后台安全性真的太弱了。。前台组合xss来猥琐的让管理员后台getshell
详细说明:
0x0 后台getshell
在includes/cls_template.php fetch函数
可以看到如果$filename以"str:"开头那么就调用_eval()函数执行"str:"后面的代码, 不过在执行之前系统调用fetch_str函数进行字符查找和替换。
_eval():
过滤了php语言的标记。
现在需要查看有哪些代码调用了这个函数,找到了这段代码:wholesale.php
在提交订单的地方看到了代码调用了get_mail_template()获得remind_of_new_order模板的内容,然后放入到fetch中执行,如果可以控制remind_of_new_order模板的内容那就可以让ecshop执行我们的命令了。
在后台可以在模板管理中找到邮件模板,更改remind_of_new_order的内容为"{$phpinfo()'];phpinfo();/*}",然后在调试中可以看到代码被替换成了"<?php echo $this->_var['phpinfo()'];phpinfo();/*']; ?>",代码成功执行。
0x1 前台xss
前台在有些地方过滤不够充分,导致用户可以构造恶意javascript完成对后台管理员的xss攻击。
注册用户以后随便买个东西,收货人信息里电话一栏只有本地的客户端检查,而没有后端过滤,容易招到xss攻击。
0x2 xss+后台getshell
由于没有csrf的防护,因此可以前台xss到后台并让管理员帮我们getshell。
以下是实现getshell的js:
上传这个js的图片并引用或者直接从外部网站引用都可以。为了测试方便,从本地引用
最后提交订单,管理员访问该订单,用户找回密码,就会在根目录生成shell.php,密码207.
管理员访问订单前的找回密码模板:
管理员查看订单
管理员访问订单之后的邮件模板
最后用户前台找回密码,根目录下生成一句话shell.php
漏洞证明:
0x0 后台getshell
在includes/cls_template.php fetch函数
可以看到如果$filename以"str:"开头那么就调用_eval()函数执行"str:"后面的代码, 不过在执行之前系统调用fetch_str函数进行字符查找和替换。
_eval():
过滤了php语言的标记。
现在需要查看有哪些代码调用了这个函数,找到了这段代码:wholesale.php
在提交订单的地方看到了代码调用了get_mail_template()获得remind_of_new_order模板的内容,然后放入到fetch中执行,如果可以控制remind_of_new_order模板的内容那就可以让ecshop执行我们的命令了。
在后台可以在模板管理中找到邮件模板,更改remind_of_new_order的内容为"{$phpinfo()'];phpinfo();/*}",然后在调试中可以看到代码被替换成了"<?php echo $this->_var['phpinfo()'];phpinfo();/*']; ?>",代码成功执行。
0x1 前台xss
前台在有些地方过滤不够充分,导致用户可以构造恶意javascript完成对后台管理员的xss攻击。
注册用户以后随便买个东西,收货人信息里电话一栏只有本地的客户端检查,而没有后端过滤,容易招到xss攻击。
0x2 xss+后台getshell
由于没有csrf的防护,因此可以前台xss到后台并让管理员帮我们getshell。
以下是实现getshell的js:
上传这个js的图片并引用或者直接从外部网站引用都可以。为了测试方便,从本地引用
最后提交订单,管理员访问该订单,用户找回密码,就会在根目录生成shell.php,密码207.
管理员访问订单前的找回密码模板:
管理员查看订单
管理员访问订单之后的邮件模板
最后用户前台找回密码,根目录下生成一句话shell.php
修复方案:
版权声明:转载请注明来源 猪头子@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:15
确认时间:2012-10-21 23:03
厂商回复:
非常感谢您为shopex信息安全做的贡献
我们将尽快修复
非常感谢
最新状态:
暂无
漏洞评价:
评论
-
2012-10-21 21:51 |
疯子 ( 普通白帽子 | Rank:242 漏洞数:42 | 世人笑我太疯癫,我笑世人看不穿~)
-
2012-10-21 22:57 |
saline ( 普通白帽子 | Rank:231 漏洞数:32 | Focus On Web Secur1ty)
-
2012-10-21 23:35 |
x0ers ( 路人 | Rank:25 漏洞数:4 | 专注计算机:开机关机重启20年。)
-
2012-10-22 18:25 |
Grass ( 实习白帽子 | Rank:41 漏洞数:4 | s)
-
2012-11-02 20:44 |
yy520 ( 普通白帽子 | Rank:139 漏洞数:12 )
-
2012-11-11 16:39 |
xiaokinghk ( 实习白帽子 | Rank:82 漏洞数:16 | 【DBA】)
-
2012-11-12 04:21 |
冰锋刺客 ( 普通白帽子 | Rank:113 漏洞数:14 | 请在监护人陪同下与本人交流)
-
2012-11-23 22:50 |
猴子 ( 路人 | Rank:19 漏洞数:5 | 我是一只骚猴子)
-
2012-12-07 09:53 |
Missye ( 路人 | Rank:0 漏洞数:1 | wu)
-
2013-01-03 00:34 |
discovery ( 路人 | Rank:9 漏洞数:3 | www.google.com)
getshell 貌似没测试成功过,不过xss成功。
-
2013-05-02 23:56 |
hfy ( 路人 | Rank:5 漏洞数:3 | 打了个狗~)