xss防御在html属性输出,Web安全之XSShtmlspecialchars,href输出,js输出

本文详细介绍了XSS防御中的关键方法,如使用htmlspecialchars函数进行HTML属性输出的防御,分析了不同引号类型的编码效果,并通过实例展示了如何绕过(href输出)和防范(js输出)XSS攻击。最后总结了XSS的常见防御措施,强调输入过滤和输出转义的重要性。
摘要由CSDN通过智能技术生成

xss之htmlspecialchars

htmlspecialchars()是PHP里面把预定义的字符转换为HTML实体的函数

预定义的字符是

& 成为 &amp

" 成为 &quot

‘ 成为 '

< 成为 &lt

> 成为 &gt

可用引号类型

ENT_COMPAT:默认,仅编码双引号

ENT_QUOTES:编码双引号和单引号

ENT_NOQUOTES:不编码任何引号

首先打开pikachu的XSS之htmlspecialchars,按照xss漏洞测试流程,先输入一段特殊字符‘"<>6666,

411bf95cc50e5ef74ee3041492c6b608.png

接着查看页面源码,搜索到我们之前输入的特殊字符中的唯一识别字符

4686969e110481a595a98199d2de06d8.png

可以看到输出点的a标签里,我们输入的特殊字符被htmlspecialchars函数转化成了PHP的实体编码

但是单引号没被编码,说明后端用的默认的htmlsspecialchars函数做处理

接着我们可以利用单引号来

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值