信安学习day10:XSS平台使用,防御和编码

跨站脚本漏洞接收平台

输入127.0.0.1/xsser/login.php进入到XSS平台

点击生成payload,通过payload给的代码向网站里输入,查看是否存在XSS漏洞

获取信息

跨站脚本攻击漏洞绕过及防御:

               绕过方法

1.<>被过滤的情况下:
在特殊标签下,可以构造一些事件

 

当源代码是

<input type=”text” name=”name” value=””>——这种形式的代码,输入在value里,需要用”来合并,然后输入事件 如:
                      ” autofocus οnfοcus=alert(1)

自动集中到输入里,onfocus事件会发出alert弹窗1.

2.alert被过滤的情况下:

使用另一种形式也能达到弹窗的效果——编码,prompt和confirm

编码:

                       使用加密的字符串,实际上是<script>alert(3)</script>

 

 使用JavaScript的伪协议(字符实体的编码)

Prompt:

 

3.on事件被过滤的情况下:

 

4.其他

防御:

  1. 阻止恶意代码注入;         2.阻止恶意操作执行;

对于反射型和存储型xss,都可通过服务端进行过滤防御:

~黑名单:过滤特殊符号及字符

 

~白名单:只允许特定类型及符号

~编码及转义: 

~cookie中设置httponly:

 ~确保执行脚本来源可信:

~不使用有缺陷的第三方库(数据库)

~过滤函数

 

 注:htmlspecialchars()默认配置是不过滤单引号的,只有设置了:quotestyle选项为ENT_QUOTES才会过滤单引号。

 

XSS编码

HTML编码:字符实体

URL编码:

Javascript编码;

 

 

 

 

 

 

 

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值