如何在Laravel中应用XSS保护?
我想知道如何在Laravel中提供XSS保护(如果有的话)。我在文档中找不到有关它的任何内容。
问题
我正在使用Eloquent的方法将数据插入数据库(/属性在模型中设置)。事实证明,我可以自由地将这样的东西放在任何表单的文本输入中:create()
$fillable
$guarded
<script>alert('Hacking Sony in 3...2...')</script>
,则该值将插入到数据库中。然后,在进行时 - 显示警报。echo
可能的解决方案
现在,Laravel是一个非常好的框架,所以我认为一定有一些东西可以防止XSS开箱即用。但是,我无法找出那是什么。
如果我错了,处理问题的最佳方法是什么?
- 我是否使用花哨的正则表达式验证来禁止特定字符?
- 我是否每次使用都使用?
mysql_real_escape_string()
Input::get()
- 我呢?
strip_tags()
仅靠视图级转义是不够的
我知道我可以使用Blade的三重大括号来转义视图中的字符串,但这不是重点。对我来说,首先不要让那些偷偷摸摸的混蛋进入数据库更有意义。
有人已经遇到过这个问题了吗?