网络安全中的XSS攻击

一.简介

通过系列8中同源的策略我们知道,由于其非绝对性,能通过在页面嵌入跨域资源,通过cors来来允许跨源访问和通过js中的API来实现跨文档消息机制,这些机制同时带了很多安全问题。

当页面被注入了恶意 JavaScript 脚本时,浏览器无法区分这些脚本是被恶意注入的还是正 常的页面内容,所以恶意注入 JavaScript 脚本也拥有所有的脚本权限。

这其中最典型的就是XSS(Cross-site scripting,XSS)攻击了,为了与“CSS”区分开来,故简称 XSS,翻译过来就 是“跨站脚本。是一种安全漏洞,攻击者可以利用这种漏洞在网站上注入恶意的客户端代码。

当被攻击者登陆网站时就会自动运行这些恶意代码,从而,攻击者可以突破网站的访问权限,冒充受害者。根据开放式 Web 应用安全项目(OWASP),XSS Z在2017 年被认为 7 种最常见的 Web 应用程序漏洞之一。

如果 Web 应用程序没有部署足够的安全验证,那么,这些攻击很容易成功。浏览器无法探测到这些恶意脚本是不可信的,所以,这些脚本可以任意读取 cookie,session tokens,或者其它敏感的网站信息,或者让恶意脚本重写HTML内容。

恶意内容一般包括 JavaScript,但是,有时候也会包括 HTML,FLASH 或是其他浏览器可执行的代码。XSS 攻击的形式千差万别,但他们通常都会:将 cookies 或其他隐私信息发送给攻击者,将受害者重定向到由攻击者控制的网页,或是经由恶意网站在受害者的机器上进行其他恶意操作。

XSS攻击分类

1.存储型XSS(持久型)

注入型脚本永久存储在目标服务器上。当浏览器请求数据时,脚本从服务器上传回并执行。
步骤 :
1.攻击者将恶意代码提交到目标网站的数据库中。

2.用户打开目标网站时,网站服务端将恶意代码从数据库取出,拼接在 HTML 中返回给浏览器。

3.用户浏览器接收到响应后解析执行,混在其中的恶意代码也被执行。

4.恶意代码窃取用户数据并发送到攻击者的网站,或者冒充用户的行为,调用目标网站接口执行攻击者指定的操作.

这种攻击常见于带有用户保存数据的网站功能,如论坛发帖、商品评论、用户私信等。

2.反射型 XSS(非持久性)

当用户点击一个恶意链接,或者提交一个表单,或者进入一个恶意网站时,注入脚本进入被攻击者的网站。Web服务器将注入脚本,比如一个错误信息,搜索结果等 返回到用户的浏览器上(反射)。由于浏览器认为这个响应来自"可信任"的服务器,所以会执行这段脚本。
步骤
1.攻击者构造

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值