在京东在线客服 系统 中,客服端页面可以执行客户编写的任意JS代码。
流程:
1.客服接入。
2.上传一个图片。
3.由于京东的编辑器是一个contenteditable=true的div,所以我们能对其内容进行编辑。
4.在图片上添加事件
这里添加一个onload,内容是跳转到天猫。
5.点击发送
6.在network中我们检查请求内容,会看到一个message
将其转码后我们得到
在这里,我们看到图片上的onload事件并没有被过滤掉,在客服端会直接执行。
客服端的工作人员证实了代码执行。
再次发现问题,聊天记录竟然是存库的!
在我的京东》消息精灵里,代码输出也没过滤
修复方案:
对于用户提交的内容进行更加严格的过滤,去除在一些媒体元素上的onload onerror等事件
查看更多关于京东IM web客户端的文件上传致任意JS执行 - 网站安的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did14078