漏洞概要
关注数(24)
关注此漏洞
漏洞标题:方维购物分享最新版前台代码漏洞
提交时间:2014-12-27 00:27
修复时间:2015-03-27 00:28
公开时间:2015-03-27 00:28
漏洞类型:命令执行
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
Tags标签:
无
漏洞详情
披露状态:
2014-12-27: 细节已通知厂商并且等待厂商处理中
2014-12-30: 厂商已经确认,细节仅向厂商公开
2015-01-02: 细节向第三方安全合作伙伴开放
2015-02-23: 细节向核心白帽子及相关领域专家公开
2015-03-05: 细节向普通白帽子公开
2015-03-15: 细节向实习白帽子公开
2015-03-27: 细节向公众公开
简要描述:
一步两步似魔鬼的步伐
详细说明:
缺陷文件:
/core/function/global.func.php
如下:
最后的preg_replace 使用了/e的命令执行符号。
$content可被控制。
即页面上如果出现<!--dynamic args=(phpinfo())--> 即被执行args里的命令
寻找一个变量能被没有过滤掉关键字符之类,并且能在页面上显示的就行。
找了半天,找了个album.php的模块下的一个tags .
缺陷文件
/core/module/album.module.php 的300多行:
Tags 变量只做了分割处理。分割字符串为空格即%20
前面的正则条件是需要匹配\s 即空白字符,其中包括\t \r \n 等
所以,提交tags标签时,提交如下类似的字符串即进入到模版缓存替换执行中。
<!--dynamic%09eval(@$_GET[test]);-->
本地测试如下图:
漏洞证明:
修复方案:
漏洞回应
厂商回应:
危害等级:低
漏洞Rank:1
确认时间:2014-12-30 15:47
厂商回复:
程序已暂停维护,不再销售
最新状态:
暂无
漏洞评价:
评论
-
2014-12-27 08:55 |
残废 ( 普通白帽子 | Rank:179 漏洞数:40 | 我是残废,啦啦啦啦)
你关注的白帽子 0x_Jin 发表了漏洞 方维购物分享最新版前台代码漏洞
-
2014-12-27 11:57 |
′雨。 ( 普通白帽子 | Rank:1231 漏洞数:190 | Only Code Never Lie To Me.)
-
2014-12-27 12:00 |
kydhzy ( 普通白帽子 | Rank:362 漏洞数:62 | 软件测试)
-
2015-02-09 19:45 |
蓝莓说 ( 实习白帽子 | Rank:60 漏洞数:18 | 爱网络安全 代码审计 php网站开发)
这个在新版3.1没用 你这个肯定是3.0的 看tag的编码就知道了
-
2015-03-27 09:59 |
ca1n ( 普通白帽子 | Rank:100 漏洞数:22 | not yet)
-
2015-03-31 03:19 |
蓝莓说 ( 实习白帽子 | Rank:60 漏洞数:18 | 爱网络安全 代码审计 php网站开发)
我测试了下怎么不可以 album.php?action=show&id=13&test=phpinfo(); <div class="element">时尚元素:<a href="/book.php?action=shopping&tag=%253C%2521--dynamic%252509eval%2528%2540%2524_GET%255Btest%255D%2529%253B--%253E"><!--dynamic%09eval(@$_GET[test]);--></a>