猫宁!!!

参考链接:http://www.ituring.com.cn/book/885

黑客攻防技术宝典web实战篇是一本非常不错的书,它的著作人之一是burpsuite的作者,课后的习题值得关注,而随书附带有答案。

1. 为什么说应用程序处理用户访问的机制是所有机制中最薄弱的机制?

典型的应用程序使用三重机制(身份验证、会话管理和访问控制)来处理访问。
这些组件之间高度相互依赖,其中任何一个组件存在缺陷都会降低整个访问控制
并访问他机制的效率。例如,攻击者可以利用身份验证机制中的漏洞以任何用户
身份登录,并因此获得未授权访问权限。如果能够预测令牌,攻击者就可以假冒
成任何已登录用户们的数据。如果访问控制不完善,则任何用户都可以直接使用
应该受到保护的功能。

2. 会话与会话令牌有何不同?

会话是服务器上保存的一组数据结构,用于追踪用户与应用程序交互的状态。会
话令牌是应用程序为会话分配的一个特殊字符串,用户需要在连接提出请求的过
程中提交该字符串,以重新确认自己的身份。

3. 为何不可能始终使用基于白名单的方法进行输入确认?

许多时候,应用程序可能会被迫接受与已知为“良性”输入的列表或模式不匹配
的待处理数据。例如,许多用户的姓名包含可用在各种攻击中的字符。如果应用
程序希望允许用户以真实姓名注册,就需要接受可能的恶意输入,并确保安全处
理这些输入。

4. 攻击者正在攻击一个执行管理功能的应用程序,并且不具有使用这项功能的
任何有效证书。为何他仍然应当密切关注这项功能呢?

攻击者可以利用任何访问控制核心机制中的缺陷未授权访问管理功能。此外,攻
击者以低权限用户身份提交的数据最终将向管理用户显示,因此,攻击者可以提
交一些恶意数据,用于在管理用户查看这些数据时攻破他们的会话,从而对管理
用户实施攻击。

5. 旨在阻止跨站点脚本攻击的输入确认机制按以下顺序处理一个输入:
(1) 删除任何出现的<script>表达式;
(2) 将输入截短为 50 个字符;
(3) 删除输入中的引号;
(4) 对输入进行 URL 解码;
(5) 如果任何输入项被删除,返回步骤(1)。
是否能够避开上述确认机制,让以下数据通过确认?
“><script>alert(“foo”)</script>

是。如果没有第 4 步,此机制将是可靠的,能够过滤其旨在阻止的特定项目。但
是,由于输入在执行过滤步骤后被解码,攻击者只需要对有效载荷中的选定字符
进行 URL 编码,就可以避开这种过滤:
">
如果首先执行第 4 步,或根本不执行该步骤,攻击者将不可能避开上述过滤。

黑客攻防技术宝典web实战篇:核心防御机制习题的更多相关文章

  1. 《黑客攻防技术宝典Web实战篇@第2版》读书笔记1:了解Web应用程序

    读书笔记第一部分对应原书的第一章,主要介绍了Web应用程序的发展,功能,安全状况. Web应用程序的发展历程 早期的万维网仅由Web站点构成,只是包含静态文档的信息库,随后人们发明了Web浏览器用来检 ...

  2. 黑客攻防技术宝典Web实战篇(二)工具篇DVWA Web漏洞学习

    DVWA是一个学习Web漏洞的很好的工具. DVWA全程是Damn Vulnerable Web Application,还有一个跟它一样好的工具尽在http://www.360doc.com/con ...

  3. 黑客攻防技术宝典Web实战篇(二)工具篇

    扫描工具.中间攻击工具.加密解密工具等. 1 TM Thread Module 2 burpsuite 代理.中间攻击.repeatur.spider.暴力破解(intrude).加密.解密.扫描器 ...

  4. 黑客攻防技术宝典Web实战篇(一)Web应用程序技术基础

    在开展Web应用程序渗透测试之前请先了解下面列出的这些内容,如果不是很懂的话,请读David Gourley & Brian Totty的HTTP权威指南也叫HTTP:The Definiti ...

  5. 黑客攻防技术宝典web实战篇:攻击应用程序架构习题

    猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 假设受攻击的应用程序使用两台不同的服务器:一台应用程序服务器和一台数据库服务器.已经发现一 ...

  6. 黑客攻防技术宝典web实战篇:攻击其他用户习题

    猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 在应用程序的行为中,有什么“明显特征”可用于确定大多数 XSS 漏洞? 用户提交的输入在应 ...

  7. 黑客攻防技术宝典web实战篇:解析应用程序习题

    猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 当解析一个应用程序时,会遇到以下 URL:https://wahh-app.com/Coo ...

  8. 黑客攻防技术宝典Web实战篇(三)web攻击方式总结

    web攻击的手段无非就是使服务器资源耗尽,使服务器无法接收正常请求. 一.DDos攻击 二.DRDos攻击 三.慢攻击 与Ddos攻击相反,慢攻击并不是以多取胜,而是靠保持连接.

  9. 黑客攻防技术宝典web实战篇:工具web服务器习题

    猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 在什么情况下 Web 服务器会显示目录列表? 如果请求某目录的 URL 且满足以下条件,W ...

随机推荐

  1. javascript读取和改动原型特别须要注意的事儿,由于原型的读写不具有对等性

    对于从原型对象继承而来的成员,其读和写具有内在的不正确等性.比方有一个对象A,假设它的原型对象是B.B的原型对象是null.假设我们须要读取A对象的name属性值,那么JS会优先在A中查找.假设找到了 ...

  2. 基于bootstrap_登陆页面

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. C++类中使用new及delete小例子

    //默认复制构造函数的不足//尽管有默认的复制构造函数来解决一般对象与对象之间的初始化问题, 但是在有些情况下我们必须手动显式的去定义复制构造函数, 例如: #include <iostream ...

  4. this、call和apply、bind

    this关键字: JavaScript的this关键字,总是指向一个对象,具体指向哪个对象,是根据运行时函数指向环境动态绑定的.简单来说,this就是谁调用指向谁.具体使用中,this的指向,大致可以 ...

  5. Android 打造随意层级树形控件 考验你的数据结构和设计

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/40212367,本文出自:[张鸿洋的博客] 1.概述 大家在项目中或多或少的可能会 ...

  6. Delphi和C++的语法区别 (关于构造和析构)

    目录 Delphi永远没办法在栈上创建一个对象 Delphi的构造函数更象是个类方法(静态成员函数) Delphi的析构函数中可以调用纯虚方法 Delphi在构造对象时自动将成员变量清零 Delphi ...

  7. WM_GETMINMAXINFO的作用 .

    如果想要实现窗口全屏,并且还有状态栏,会出现问题,那就是OnGetMinMaxInfo函数的作用.你可以试一下,如果把这个函数去掉,则当你按下工具栏中的全屏显示按钮时,框架视图确实变大了,但没有想象的 ...

  8. 【HDU 5384】Danganronpa(AC自己主动机)

    看官方题解貌似就是个自己主动机裸题 比赛的时候用kuangbin的AC自己主动机模板瞎搞的,居然A了,并且跑的还不慢.. 存下模板吧 #include<cstdio> #include&l ...

  9. set built-in function

    集合类型 集合对象是一组无序排列的可哈希的值,集合可以作为字典的键.因为集合是无序的,不可以为集合创建索引或执行切片操作,也没有键可以用来获取元素的值. 集合有两种不同的类型,可变集合和不可变集合.可 ...

  10. eclipse本地覆盖版本库

    1,右键team,与资源库同步 2,选中冲突文件,右键“更新”,此时本地代码出现冲突 3,选中冲突文件,右键点击“标记为解决”,勾选第二项,以本地版本为准 4,冲突被解决,正常提交本地代码