Web安全系列(二):XSS 攻击进阶(初探 XSS Payload)

什么是 XSS Payload

上一章我谈到了 XSS 攻击的几种分类以及造成的攻击的原理,并举了一些浅显的例子,接下来,我就阐述什么叫作 XSS Payload 以及从攻击者的角度来初探 XSS 攻击的威力。浏览器

在黑客 XSS 攻击成功以后,攻击者可以对用户当前浏览的页面植入各类恶意脚本,经过恶意脚原本控制浏览器,这些脚本实质上就是 JavaScript 脚本(或者是其余浏览器能够运行的脚本),这种恶意植入且具备完成各类具体功能的恶意脚本就被称为 XSS Payload服务器

初探 XSS Payload

一个最多见的 XSS Payload ,就是经过浏览器读取 Cookie 对象,进而发起 Cookie 劫持 攻击。网站

通常一个网站为了防止用户无心间关闭页面,从新打开须要从新输入帐号密码繁杂的状况下,通常都会把登陆信息(登陆凭证)加密存储在 CooKie 中,而且设置一个超时时间,在此时间段内,用户利用本身帐号信息随意进出该网站。若是该网站遭到 XSS Payload ,黑客盗取了该用户的 Cookie 信息,每每意味着该用户的登陆凭证丢失了,换句话说,攻击者不须要知道该用户的帐号密码,直接利用盗取的 Cookie 模拟凭证,直接登陆到该用户的帐户。加密

以下所示,攻击者先在一个社区发表一篇文章:url

image

你有意无心点了一下 点我得大奖 这个时候,XSS Payload 就生效了:3d

image

image

XSS Payload会请求一个 img 图片,图片请求地址即为黑客的服务器地址, url 参数带上 Cookie ,咱们在后台服务器接收到了这个请求:code

image

这个时候,黑客就能够获取到此 Cookie,而后模拟 CooKie 登录。cdn

固然传输的内容能够是任何内容,只要能获取到的,全均可以传输给后台服务器。对象

如何利用窃取的 Cookie 登录目标用户的帐户呢?这和利用自定义Cookie访问网站的过程是同样的,参考以下:blog

当没有登录的时候,Cookie 内容是空的:

image

当咱们手动添加 Cookie 后,登录的内容以下:

image

此时,咱们就已经登录上了该用户的帐户。

因此,经过 XSS 攻击,能够完成 Cookie 劫持 攻击,直接登录进用户的帐户。

其实都不须要带上参数,黑客就能获取到全部数据,这是由于当前 Web 中,Cookie 通常是用户凭证,浏览器发起的全部请求都会自动带上 Cookie 。

image

image

那么该如何预防 Cookie 劫持 呢?

Cookie 的 HttpOnly 标识能够有效防止 Cookie 劫持,咱们会在稍后章节具体介绍。

相关文章
相关标签/搜索