gpt4 book ai didi

laravel - 如何保护所见即所得的编辑器免受 XSS 攻击?

转载 作者:行者123 更新时间:2023-12-04 01:47:58 38 4
gpt4 key购买 nike

我正在使用 Summernote 所见即所得编辑器(如下所示),发现它使用 HTML 标签来格式化文本。

<textarea name="body" id="editor" value="{{old('body')}}" rows="10" required></textarea>

如何保护我的应用程序免受 XSS 攻击?我将输入存储为纯文本,并使用输出:{!! $body !!} .

是否可以过滤 textarea对于易受攻击的输入,例如:<script>alert("boom")</script>

最佳答案

默认情况下,Laravel 不提供任何机制来从给定输入中删除某些标签,因此您需要使用第三方包,如 Purifier。 .

安装净化器

如下所示,可以使用 Composer 简单地安装 Purifier .

composer require mews/purifier

配置

要自定义 Purifier 的默认设置,请发布配置文件 ( config/purifier.php )。

php artisan vendor:publish --provider="Mews\Purifier\PurifierServiceProvider"

现在,导航到 config/purifier.php并调整 HTML.Allowed根据需要输入。请注意,所有未在此条目中列出的标签都将被 clean() 删除。方法。

可以找到配置选项的详尽引用 here .


例子

clean("<p>Good</p> <script>alert('Bad')</script>")

Output: <p>Good</p>

关于laravel - 如何保护所见即所得的编辑器免受 XSS 攻击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54493149/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com