黑客攻防技术宝典web实战篇:攻击其他用户习题
猫宁!!!
参考链接:http://www.ituring.com.cn/book/885
随书答案。
1. 在应用程序的行为中,有什么“明显特征”可用于确定大多数 XSS 漏洞?
用户提交的输入在应用程序对该输入的响应中原样返回。
2. 假设在应用程序未通过验证的功能区域发现了一个反射型 XSS 漏洞。如何利
用这个漏洞攻破一个通过验证的应用程序会话?请想出两种不同的方法。
多数情况下,利用未通过验证的功能中的 XSS 漏洞一样可以针对已通过验证的用
户实施有效攻击——这些功能与已通过验证的功能的运行机制相同,可用于在已
通过验证的用户会话中执行任意 JavaScript 脚本。
即使目标用户在攻击过程中并未登录,攻击者仍有可能攻破他们的账户。如果应
用程序易于受到会话固定攻击,攻击者可以截获用户的令牌并等待其登录。攻击
者可以在登录页面注入代码来截获键击,甚至可以显示一个木马登录表单,将用
户的证书发送到其他位置。
3. 假设一个 cookie 参数未经过任何过滤或净化就被复制到应用程序的响应中。
是否可以利用这种行为在返回的页面中注入任意 JavaScript?是否可以利用这
种行为实施针对其他用户的 XSS 攻击?
第一个问题的答案是“是”。当然可以利用这种行为通过专门设计的输入
注入任意 JavaScript。第二个问题的答案是“或许”。以前,有各种方法可以
在跨域请求中注入任意 HTTP 消息头,注入恶意 cookie。旧版本的 Flash 及
XMLHttpRequest 一直易于受到这类攻击。此外,许多使用 cookie 的应用程序实
际上接受位于其他位置(如查询字符串或消息主体)的同名参数。
4. 假设在仅返回给自己的数据中发现了保存型 XSS 漏洞。这种行为是否存在安
全缺陷?
孤立来说,用户似乎只可以利用这种行为来攻击自身。但是,如果与其他适
当的漏洞(如访问控制漏洞或跨站点请求伪造漏洞)相结合,则这种行为可能会
造成严重后果,并可能导致攻击者能够在向其他应用程序用户显示的页面中注入
保存型 JavaScript。
5. 在攻击一个处理文件附件并在浏览器中显示这些内容的 Web 邮件应用程序
时,应立即检查哪种常见的漏洞?
如果应用程序不经任何净化就显示 HTML 或文本文件,则这些 HTML 或文本文
件中包含的 JavaScript 将在任何查看该附件的用户的浏览器中执行。此外,如
果 JPEG 文件包含 HTML,则某些浏览器会自动将该文件作为 HTML 处理。在防范
邮件附件中的 XSS 方面,许多 Web 邮件应用程序并未采取足够的保护措施。
6. 浏览器的同源策略如何给 Ajax 技术 XMLHttpRequest 的应用造成影响?
由于 XMLHttpRequest 可用于从 HTTP 请求中获取完整的响应,因此,正常情况下,
只能利用它向和调用它的域相同的域提出请求。但是,HTML5 引入了一个工具,
如果所请求的域许可,XMLHttpRequest 可利用该工具提出跨域请求并检索响应。
7. 列举 3 个利用 XSS 漏洞的可行攻击有效载荷(也就是说,攻击者可以在其他
用户的浏览器中执行的恶意操作而不是传送攻击的方法)。
有无数针对 XSS 漏洞的攻击有效载荷。以下是一些常见的有效载荷:
盗窃会话 cookie;
引诱用户操作;
注入木马功能;
盗窃存入缓存的自动完成数据;以及
记录键击。
8. 已知一个反射型 XSS 漏洞,可以在返回页面的 HTML 代码的某个位置注入任意
数据。插入的数据被截短至 50 字节,但是我们希望注入一个超长的脚本,并且
不想调用外部服务器上的脚本。如何解决长度限制呢?
可以将反射型 XSS 漏洞“转换成”基于 DOM 的 XSS 漏洞。例如,如果易受攻击的
参数称为 vuln,则可以使用以下 URL 执行任意长度的脚本:
/script.asp?vuln=<script>eval_r(location.hash.substr(1))</script>#ale
rt('long script here ......')
9. 已知在一个必须使用 POST 方法的请求中存在反射型 XSS 漏洞。攻击者可以使
用哪种传送机制实施攻击?
如果 POST 方法是必需的,则不能仅仅在应用程序中构建一个专门设计的 URL,
以便在用户访问该 URL 时实施攻击。但是,可以创建一个第三方网页,使用 POST
方法向易受攻击的应用程序提交一个表单和位于隐藏字段中的相关参数。当用户
查看该网页时,可以使用 JavaScript 自动提交上述表单。
黑客攻防技术宝典web实战篇:攻击其他用户习题的更多相关文章
- 黑客攻防技术宝典web实战篇:核心防御机制习题
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 黑客攻防技术宝典web实战篇是一本非常不错的书,它的著作人之一是burpsuite的作者,课后的习题值得关注 ...
- 《黑客攻防技术宝典Web实战篇@第2版》读书笔记1:了解Web应用程序
读书笔记第一部分对应原书的第一章,主要介绍了Web应用程序的发展,功能,安全状况. Web应用程序的发展历程 早期的万维网仅由Web站点构成,只是包含静态文档的信息库,随后人们发明了Web浏览器用来检 ...
- 黑客攻防技术宝典web实战篇:攻击应用程序架构习题
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 假设受攻击的应用程序使用两台不同的服务器:一台应用程序服务器和一台数据库服务器.已经发现一 ...
- 黑客攻防技术宝典web实战篇:攻击访问控制习题
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 一个应用程序可能通过使用 HTTP Referer 消息头实施访问控制,但它的正常行为并没 ...
- 黑客攻防技术宝典web实战篇:攻击验证机制习题
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 在测试一个使用joe和pass证书登录的Web应用程序的过程中,在登录阶段,在拦截代理服务 ...
- 黑客攻防技术宝典Web实战篇(三)web攻击方式总结
web攻击的手段无非就是使服务器资源耗尽,使服务器无法接收正常请求. 一.DDos攻击 二.DRDos攻击 三.慢攻击 与Ddos攻击相反,慢攻击并不是以多取胜,而是靠保持连接.
- 黑客攻防技术宝典web实战篇:攻击本地编译型应用程序习题
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 如果不采用特殊的防御措施,为什么栈缓冲区溢出比堆溢出更容易被攻击者利用? 利用基于栈的溢出 ...
- 黑客攻防技术宝典web实战篇:攻击用户·其他技巧习题
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 已知一项应用程序功能将一个查询字符串参数的内容插入到某个 HTTP 重定向的 Locati ...
- 黑客攻防技术宝典web实战篇:定制攻击自动化习题
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 指出使用自动技巧在应用程序中枚举标识符时用到的 3 个标识符“触点”. (a) HTTP ...
随机推荐
- fill函数和fill_n函数
fill_n函数的作用是:给你一个起始点,然后再给你一个数值count和val.把从起始点开始依次赋予count个元素val的值. 注意: 不能在没有元素的空容器上调用fill_n函数 列子: ...
- HashMap变成线程安全方法
我们都知道.HashMap是非线程安全的(非同步的).那么怎么才能让HashMap变成线程安全的呢? 我认为主要可以通过以下三种方法来实现: 1.替换成Hashtable,Hashtable通过对整个 ...
- eclipse中progress一直在刷新问题处理
- 【转载】C# sleep 和wait的区别
eep和wait都是使线程暂时停止执行的方法,但它们有很大的不同. 1. sleep是线程类Thread 的方法,它是使当前线程暂时睡眠,可以放在任何位置. 而wait,它是使当前线程暂时放弃对象的使 ...
- 【java】itoo项目实战之hibernate 批量保存优化
在itoo中.基本上每一个系统都有一个导入功能,大量的数据填写进入excel模板中.然后使用导入功能导入的数据库中,这样能够大大的提高工作效率. 那么导入就涉及到了批量保存数据库的问题了. 那么通常情 ...
- DSL 如何工作
DSL 如何工作 http://computer.howstuffworks.com/dsl.htm 当你连接到因特网时,你可能是通过一个调制解调器 (modem),或办公室的局域网,或者一个电缆调制 ...
- 关于用HOOK拦截键盘的一些问题
因为MSDN上说要这样做,所以我就这样做的,读懂MSDN是关键,下面来仔细阅读一下MSDN,看它到底是怎样描述的.阅读的时候我先给出原文,再进行自己的一些翻译或描述. 先看回调函数KeyboardPr ...
- CSS 媒体类型 总结
CSS 媒体类型 媒体类型允许你指定文件将如何在不同媒体呈现.该文件可以以不同的方式显示在屏幕上,在纸张上,或听觉浏览器等等. 媒体类型 一些CSS属性只设计了某些媒体.例如"voice-f ...
- C标准库中atoi的一种可能的实现
为避免与标准库中的atoi产生歧义, 我将自己编写的函数命名为strToInt, 以下是示例代码 #include <stdio.h> int strToInt(const char *s ...
- codeforces 454B. Little Pony and Sort by Shift 解题报告
题目链接:http://codeforces.com/problemset/problem/454/B 题目意思:给出一个序列你 a1, a2, ..., an. 问每次操作只能通过将最后一个数拿出来 ...