什么是 XSS Payload

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

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

初探 XSS Payload

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

一般一个网站为了防止用户无意间关闭页面,重新打开需要重新输入账号密码繁杂的情况下,一般都会把登录信息(登录凭证)加密存储在 CooKie 中,并且设置一个超时时间,在此时间段内,用户利用自己账号信息随意进出该网站。如果该网站遭到 XSS Payload ,黑客盗取了该用户的 Cookie 信息,往往意味着该用户的登录凭证丢失了,换句话说,攻击者不需要知道该用户的账号密码,直接利用盗取的 Cookie 模拟凭证,直接登录到该用户的账户。

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

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

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

这个时候,黑客就可以获取到此 Cookie,然后模拟 CooKie 登陆。

当然传输的内容可以是任何内容,只要能获取到的,全都可以传输给后台服务器。

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

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

当我们手动添加 Cookie 后,登陆的内容如下:

此时,我们就已经登陆上了该用户的账户。

所以,通过 XSS 攻击,可以完成 Cookie 劫持 攻击,直接登陆进用户的账户。

其实都不需要带上参数,黑客就能获取到所有数据,这是因为当前 Web 中,Cookie 一般是用户凭证,浏览器发起的所有请求都会自动带上 Cookie 。

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

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

最新文章

  1. linux下c程序的链接、装载和库(3)
  2. windows10的激活及SQL Server 2008 的安装
  3. 0002 Oracle账户相关的几个语句
  4. Noi2011 : 智能车比赛
  5. JMS基本概念
  6. a标签的href劫持,做判断后在跳转
  7. Nginx在嵌入式系统中的应用
  8. Linux最佳的云存储服务分析
  9. 折腾Java设计模式之备忘录模式
  10. 序列化与反序列化之JSON
  11. 社交类APP原型模板分享——QQ
  12. LLVM和clang
  13. tomcat源码阅读之单点登录
  14. C++并发编程 02 数据共享
  15. par函数bty参数-控制绘图边框
  16. C#基础笔记(第十九天)
  17. 前端读者 | 别人写的css,你敢用吗?
  18. ICE的连接机制
  19. vue的路由设置小结
  20. MaCrea Lit Sphere maps

热门文章

  1. [暑假集训--数论]hdu1019 Least Common Multiple
  2. div 的相对定位与绝对定位
  3. codechef AUG17 T3 Greedy Candidates
  4. jsp和java获取文件或路径
  5. linux根文件系统制作之busybox编译和系统构建【转】
  6. VMware Workstation/Fusion 中安装 Fedora 23/24 及其他 Linux 系统时使用 Open VM Tools 代替 VMware Tools 增强工具的方法
  7. FZU2187 回家种地(矩形面积并)
  8. springBoot yml 和 properties
  9. AC日记——[ZJOI2008]树的统计Count bzoj 1036
  10. FZU 1056 扫雷游戏【搜索】