【XSS】利用XSS窃取用户Cookie
Hello,各位小伙伴周六愉快。
晃眼之间一周又快要过去了,时间是不等人滴~~
这周准备连发三篇XSS相关内容,两篇实战,一篇总结。
然后XSS漏洞部分就暂时完结啦~~
今天我们来看看怎么利用XSS窃取用户cookie吧。
一、实验概述
实验拓扑:
XSS的用途之一就是窃取用户的cookie,攻击者利用XSS在网站中插入恶意脚本,一旦用户访问该网页,cookie就会自动地发送到攻击者的服务器中去。
使用cookie我们可以实现免密登陆,如果能够盗取网站管理员的cookie,那么就可以用管理员的身份直接登录网站后台,而不必非要去获得管理员账号和密码了。
关于cookie的原理,在前面讲过一期,这里就不赘述了。
有兴趣的小伙伴可以看一下。
二、编写远端接收代码
在攻击者服务器搭建一个php页面,用于收取远端传过来的cookie,代码如下:
代码解释如下:
通过$_GET接收传过来的cookie值
通过getenv方法,可以获取用户ip地址和cookie的来源
通过date函数,记录下获取到cookie的时间
通过fopen函数,通过a(追加)的方式,打开cookie.txt文件
通过fwrite的方式,将我们获取到的信息记录到cookie.txt文件中
最后,fclose函数关闭文件。
三、利用XSS盗取Cookie
web页面以DVWA平台 存储型XSS为例,我们来插入一个恶意JS代码。
构造如下js代码:
通过document.cookie可以读取当前页面的cookie值,然后通过GET方法发送至攻击者服务器。
选择low安全等级,打开dvwa XSS(stored)页面 :
在Name栏、Message栏均存在存储型XSS,在Message中输入上面的恶意代码,并提交,会发现有输入长度限制:
不过这里是前端长度限制,我们直接修改当前网页代码即可,将maxlength改大:
再次输入,可顺利输入,点击提交即可:
现在我们模拟用户来访问该页面,成功加载js代码:
查看攻击者服务器,顺利盗取到用户cookie:
四、Cookie窃取后的利用
以下是我们窃取到的信息:
可以看到用户的访问地址和使用的cookie值。
现在攻击者去访问这个页面,由于没有cookie会自动跳转到登陆界面:
利用Cookie Editor等插件,我们使用刚才盗取到的cookie:
再次访问页面,成功利用用户身份,无账号密码登陆:
好啦,以上就是今天的全部内容了~
如果有问题,或者是有想听的专题,也欢迎到我的微信公众号留言哦~
Peace!