编辑器带来的XSS漏洞问题解决方案

接上一篇编辑器的使用,自己尝试着写了一段js代码,本以为laravel的 {{ $item }} 渲染可以完美的避免 XSS 的攻击(确实可以避免),但是由于 Editor 生成的时候,重新渲染了一遍,导致了可能出现的XSS漏洞。 可以看到,Editor已经帮助我们做了html的编码,于是我觉得不需要进行二次编码,就直接存到了数据库里,并且直接在前端进行了渲染。 Controller $res = Notification::updateById($notice_id, [ 'content' => $content, 'title' => $title, 'fileName' => $file_name, 'filePath' => $file_path ]); view <textarea id="editor" name="editor" rows="10" cols="80"> {{ $notice['content'] }} </textarea> 看起来一点问题也没有对不对!! 然而当渲染的时候缺弹出了一个框框······ 查看代码发现变成了整个样子     阅读全文
Liebes's avatar
Liebes 7月 11, 2017