Javascript 如何保护我的laravel应用程序不受跨站点脚本攻击?

Javascript 如何保护我的laravel应用程序不受跨站点脚本攻击?,javascript,laravel,Javascript,Laravel,我读了一篇关于跨站点脚本的文章,我想知道我的应用程序是否容易受到此类操作的攻击 我的应用程序中有一些模块需要详细描述。所以我使用summernote编辑器。为了正确显示文本,我必须在前面使用{!!!!}。在视图中使用它们来显示未扫描的数据是否危险 我的应用程序中有一些模块需要详细描述。所以我使用summernote编辑器。为了正确显示文本,我必须在前面使用{!!!!}。在视图中使用它们来显示未扫描的数据是否危险 是的。永远不要相信用户。永远不要依赖客户端转义。你需要在服务器端转义这个 我正在使用

我读了一篇关于跨站点脚本的文章,我想知道我的应用程序是否容易受到此类操作的攻击

我的应用程序中有一些模块需要详细描述。所以我使用summernote编辑器。为了正确显示文本,我必须在前面使用{!!!!}。在视图中使用它们来显示未扫描的数据是否危险

我的应用程序中有一些模块需要详细描述。所以我使用summernote编辑器。为了正确显示文本,我必须在前面使用{!!!!}。在视图中使用它们来显示未扫描的数据是否危险

是的。永远不要相信用户。永远不要依赖客户端转义。你需要在服务器端转义这个

我正在使用,您可以使用它来转义所有html标记,也可以定义允许使用哪些标记(例如,在文本字段上,应该允许使用类似
的标记,但您需要删除所有
标记

Laravel包括现成的csrf令牌管理,因此您可以保存到跨侧attacs

编辑

正如TE在评论中所问,以下是您如何使用净化器:

安装后,您可以在多个转义配置中定义(例如,如果您有不同的textares,在其中一个中您希望允许
而在另一个中不允许)。在
HTML.Allowed=>
中写入允许使用的所有标记,在
CSS.AllowedProperties=>
中设置允许的样式更改(例如,
颜色


要转义输入,只需使用
clean($input,'Configurationname'));
,其中
Configurationname
是配置的名称。默认值为
default
在视图中显示未扫描的数据是危险的,尤其是来自用户输入的数据。例如,用户可以通过将在此页面上运行的表单保存JS脚本


在无法使用{{}来防止XSS攻击的情况下,您可以在将输入数据存储到数据库之前对其进行过滤。例如,使用regexp,您可以删除
标记,或者您可以首先使用
非正则表达式:模式
验证请求输入。

不要使用{除非您非常确定您正在显示的内容是完全安全的。请使用{{}相反。还要确保您使用的是laravel的csrf令牌。

您可以阅读更多关于此的内容啊,是的,我已经有了一个想法,因此,如果我使用文档中显示的csrf令牌,我已经做到了,我将避免这些攻击?我认为这是我应该做的最好的事情。我只想知道如何定义允许哪些攻击,哪些被阻止?请回答我可以帮忙!这是一个很好的youtube视频,我已经学会了基本知识。如果你有问题,就问:)