使用HTML Purifier在thinkphp6中过滤富文本&防止XSS攻击
发表于:2023-05-09 01:04:37浏览:1438次
XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。比如这些代码包括HTML代码和客户端脚本。那么如何防止XSS?
这里推荐使用HTML Purifier的方式的过滤掉,比如编辑框里的文本是1 2 3 ,然后过滤之后,存进数据库的是1 2 3,所以访问文章就不会有提示框弹出啦。
HTML Purfiler怎么用?
官方文档:http://htmlpurifier.org/live/configdoc/plain.html
1、要在ThinkPHP6中使用HTMLPurifier进行输入过滤,需要先安装HTMLPurifier库。可以通过Composer来安装:
2、安装完成后,可以在控制器中使用以下代码对输入进行过滤:
在上面的示例中,添加了三个允许的HTML标签(p、b、a
)以及a
标签的href属性。任何不符合这些规则的标签或属性都将被过滤掉。
PS:官方有很多不同的配置,可以去官方文档里面深扒,我这里只列举一些常用的:
以下是HTMLPurifier增加HTML5标签不过滤,过滤script标签的示例:
推荐文章
- 图片变形处理,可设置CSS属性object-fit: cover完美解决
- 国产开源操作系统 深度操作系统deepin 23 Preview发布
- ThinkPHP 6.1.2 版本发布,兼容 PHP8.2以及对ThinkORM3.0 版本的支持
- 微信淘宝实现互通?有关部门开始要求即时通信软件解除屏蔽网址链接,公平竞争
- 微信推出输入法,打个字竟然需要508MB内存?说好的小而美呐?
- 微软推出 VS Code for the Web 无需在 PC 上进行安装 打开浏览器就可以开始工作
- ThinkPHP6的伪静态规则整理(apache、nginx 、IIS)
- composer 镜像操作以及常用命令收集
- Thinkphp6使用mPdf实现生成pdf文件
- 有了css变量这个神器,写css再也不需要less和sass了