web漏洞-xss漏洞绕过防护

web漏洞-xss漏洞绕过防护

前言

​ 介绍了xss漏洞的防护方法以及绕过方式。

防护及绕过分类

代码对输入输出作实体化

防护原理

​ 有些字符,像(<)这类的,对HTML(标准通用标记语言下的一个应用)来说是有特殊意义的,所以这些字符是不允许在文本中使用的。要在HTML中显示(<)这个字符,我们就必须使用实体字符。对输入输出作实体化后,对HTML有特殊意义的字符都会被转换,达到防护的目的。如php的htmlentities函数。

绕过方式

​ 看一下有没有刚刚好啥特殊字符都不用的攻击点,不然的话基本绕过不了了,换个地方吧。

启用session验证登录或开启httponly

防护原理

​ session存储在网站服务器,js代码无法获取session,启用了session验证登录会验证session,而httponly开启后也可以防止客户端脚本获取cookie。而xss攻击就是执行的js恶意代码,所以,开启session验证登录或者开启httponly可以防止xss攻击直接获取cookie伪装登录。

绕过方式

​ 既然不能利用cookie直接伪装登录了,我们就想办法直接获取账号和密码。

非保存密码

​ 如果用户的账号密码没有保存在浏览器中,我们就需要在登录界面插入xss恶意代码,再利用xss的表单劫持功能获取用户输入的账号密码。

保存密码

​ 如果用户的账号密码已经保存在了浏览器中,我们就直接获取浏览器记住的明文密码即可。

WAF

防护原理

​ 一般WAF软件都是通过匹配关键字来进行拦截的。

绕过方式
手动绕过

​ 和SQL注入绕过思维也是一样的,主要也是找到拦截的点,然后用不影响效果的一些垃圾字符,其它语句等来绕过。个人认为绕过效果最好的方法还是得找找html语句中一般我们不这么用但是能触发我们效果的语句,更像是卡html的bug。看图片例子。

工具绕过
xsstrike

​ 项目地址:https://github.com/s0md3v/XSStrike

burpsuite

​ 也可以直接用burpsuite跑字典。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值