了解XSS

1、什么是XSS?

	XSS是crosing-site-script的简写,称为跨域脚本攻击,重点在于脚本。
	攻击者想尽方法将可执行代码注入到访问网页中,对访问者进行攻击。

2、常见的XSS攻击

用人将常见的XSS攻击分为以下几种:
1. Reflected XSS(基于反射的XSS攻击)
2. Stored XSS(基于存储的XSS攻击)
3. DOM-based or local XSS(基于DOM或本地的XSS攻击) 
知道这么回事就好,这里不深究。。。还是再介绍一下:

**Reflect XSS**  发生原因: 服务端返回脚本,客户端直接解析脚本
	如服务端返回,`http://www.test.com/message.php?send=<script>alert(‘foolish!’)</script>!`
这个时候客户端解析send参数时,会执行脚本信息,遭到攻击。

**Stored XSS** 发生原因: 用户提交恶意代码段,未经过滤就存到服务器。其他用户从服务器请求信息时,执行了该代码段被攻击。
常见于留言板,用户恶意提交评论`<script>alert('handsome boy')</script>`,其他用户请求到该评论信息时即被攻击。

3、怎么防范XSS?

首先,以上情况因为对用户输出的信任。
**采取措施一:** **转义字符转义用户输入**
 包含< > '' \ 等进行转义
此方法能解决一部分问题,但可能会影响到格式。
**采取措施二:CSP (content security policy)网页安全政策**
 维护一个白名单,浏览器只可以加载白名单的资源。
 开发者提供配置,如
  a) 设置 HTTP Header 中的 Content-Security-Policy
  	Content-Security-Policy: default-src ‘self’ : 只加载本地资源
  	Content-Security-Policy: img-src https://* :只加载HTTPS协议图片
  	。。。
  b) 设置 meta 标签的方式 <meta http-equiv="Content-Security-Policy">
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值