前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【XSS】利用XSS窃取用户Cookie

【XSS】利用XSS窃取用户Cookie

作者头像
一名白帽的成长史
发布2019-10-08 15:48:55
5.5K0
发布2019-10-08 15:48:55
举报

Hello,各位小伙伴周六愉快

晃眼之间一周又快要过去了,时间是不等人

今天我们来看看怎么利用XSS窃取用户cookie吧。

Part.1

概述

实验概述

实验拓扑:

XSS的用途之一就是窃取用户的cookie,攻击者利用XSS在网页中插入恶意脚本,一旦用户访问该网页,cookie就会自动地发送到攻击者的服务器中去。

使用cookie我们可以实现免密登陆,如果能够盗取网站管理员的cookie,那么就可以用管理员的身份直接登录网站后台,而不必非要去获得管理员账号和密码了。

关于cookie的原理,在前面讲过一期,这里就不赘述了,有兴趣的小伙伴可以看一下:

【协议】聊聊cookie与session那些事

Part.2

编写远端接收代码

接收cookie

在攻击者服务器搭建一个php页面,用于收取远端传过来的cookie,代码如下:

代码解释如下:

  • 通过$_GET接收传过来的cookie值。
  • 通过getenv方法,可以获取用户ip地址和cookie的来源。
  • 通过date函数,记录下获取到cookie的时间。
  • 通过fopen函数,通过a(追加)的方式,打开cookie.txt文件。
  • 通过fwrite的方式,将我们获取到的信息记录到cookie.txt文件中。
  • 通过fclose函数关闭文件。

Part.3

利用XSS盗取Cookie

XSS利用

web页面以DVWA平台 存储型XSS为例,我们来插入一个恶意JS代码。

构造如下js代码:

通过document.cookie可以读取当前页面的cookie值,然后通过GET方法发送至攻击者服务器。

选择low安全等级,打开dvwa XSS(stored)页面 :

在Name栏、Message栏均存在存储型XSS,在Message中输入上面的恶意代码,并提交,会发现有输入长度限制:

不过这里是前端长度限制,我们直接修改当前网页代码即可,将maxlength改大:

再次输入,可顺利输入,点击提交即可:

现在我们模拟用户来访问该页面,成功加载js代码:

查看攻击者服务器,顺利盗取到用户cookie:

Part.4

Cookie窃取后的利用

Cookie利用

以下是我们窃取到的信息:

可以看到用户的访问地址和使用的cookie值。

现在攻击者去访问这个页面,由于没有cookie会自动跳转到登陆界面,无法直接访问:

浏览器利用Cookie Editor等插件,使用刚才盗取到的cookie:

再次访问页面,成功利用用户身份,实现无账号密码登陆:

Part.5

结语

好啦,以上就是今天的全部内容了~

Peace!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一名白帽的成长史 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档