vue 如何防止xss攻击 框架_TP 防止XSS 攻击

1 如果您的项目没有富文本编辑器 然后就可以使用全局过滤方法 在application下面的config配置文件 加上 htmlspecialchars

// 默认全局过滤方法 用逗号分隔多个

'default_filter' => 'htmlspecialchars',

c21b7b8651ee06a4dcdef244393c3f8b.png

如果有富文本编辑器的话 就不适合 使用这种防XSS攻击

那么使用 composer 安装插件来处理

命令

composer require ezyang/htmlpurifier

d18b5fd56fcefb4494811fdf48ba15b4.png

安装成功以后在application 下面的 common.php 放公共函数的地方添加如下代码

874781d6ef75dd72879572917d289c1f.png

if (!function_exists('remove_xss')) {

//使用htmlpurifier防范xss攻击

function remove_xss($string){

//composer安装的,不需要此步骤。相对index.php入口文件,引入HTMLPurifier.auto.php核心文件

// require_once './plugins/htmlpurifier/HTMLPurifier.auto.php';

// 生成配置对象

$cfg = HTMLPurifier_Config::createDefault();

// 以下就是配置:

$cfg -> set('Core.Encoding', 'UTF-8');

// 设置允许使用的HTML标签

$cfg -> set('HTML.Allowed','div,b,strong,i,em,a[href|title],ul,ol,li,br,p[style],span[style],img[width|height|alt|src]');

// 设置允许出现的CSS样式属性

$cfg -> set('CSS.AllowedProperties', 'font,font-size,font-weight,font-style,font-family,text-decoration,padding-left,color,background-color,text-align');

// 设置a标签上是否允许使用target="_blank"

$cfg -> set('HTML.TargetBlank', TRUE);

// 使用配置生成过滤用的对象

$obj = new HTMLPurifier($cfg);

// 过滤字符串

return $obj -> purify($string);

}

然后在 application目录下的config.php 配置文件

把这个过滤方法改成那个方法名即可

5fdf20936a78dfbcda2ca001fc4b7666.png

结合框架的使用 和插件的使用可以使用这个 上面的代码可以可以直接使用的

也可以针对某个字段进行xss验证

1 修改 command的文件把改成这个 'default_filter' => 'htmlspecialchars',

2 然后在你要更改的字段 上面 修改成

a6f94a09268245ea228a81fd0ba6cb35.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值