Web安全测试之跨站请求伪造CSRF篇.docx
《Web安全测试之跨站请求伪造CSRF篇.docx》由会员分享,可在线阅读,更多相关《Web安全测试之跨站请求伪造CSRF篇.docx(7页珍藏版)》请在第一文库网上搜索。
1、本文将简单介绍CSRF漏洞,并详细说明造成这种漏洞的原因所在,以及针对该漏洞的黑盒测试与灰盒子测试具体方法和示例,最后提提了一些防范该攻击的建。51CT0. com独家特稿】跨站请求伪造(即CSRF)被Web安全界称为诸多漏洞中“沉睡的巨人”,其威胁程度由此“美誉”便可见一斑。本文将简单介绍该漏洞,并详细说明造成这种漏洞的原因所在,以及针对该漏洞的黑盒测试与灰盒子测试具体方法和示例,最后提提了一些防范该攻击的建议,希望本文对读者的安全测试能够有所启发。一、CSRF概述我们首先来了解一下什么是跨站请求伪造(CSRF) ?跨站请求伪造是一种挟制终端用户在当前已登录的Web应用程序上执行非本意的操作
2、的攻击方法。攻击者只要借助少许的社会工程诡计,例如通过电子邮件或者是聊天软件发送的链接,攻击者就能迫使个Web应用程序的用户去执行攻击者选择的操作。例如,如果用户登录网络银行去查看其存款余额,他没有退出网络银行系统就去了自己喜欢的论坛去灌水,如果攻击者在论坛中精心构造了 个恶意的链接并诱使该用户点击了该链接,那么该用户在网络银行帐户中的资金就有可能被转移到攻击者指定的帐户中。当CSRF针对普通用户发动攻击时,将对终端用户的数据和操作指令构成严重的威胁;当受攻击的终端用户具有管理员帐户的时候,CSRF攻击将危及整个Web应用程序。二、造成CSRF的原因跨站请求伪造能否得逞,与以下几个方面密不可分
3、,分别是浏览器对会话的处理,攻击者对Web应用有关URL的/解,应用程序赖以管理会话的信息对浏览器的透明性以及各种能够引发资源请求HTML标签等。下面分别加以解释。首先,我们来了解些肥b浏览器对于Cookie和HTTP身份验证信息之类的会话信息的处理方式。目前,浏览器会自动地发送标识用户对话的信息,而无需用户干预,换句话说,当浏览器发送这些身份信息的时候,用户根本感觉不到。假设站点A上有一个Web应用程序,并且受害者正好已经在该站点上通过了身份认证,这时,站点会向受害者发送个cookie作为响应,这个cookie的作用是什么呢?主要是被站点作为用户会话的标志,即如果站点收到了带有受害者的coo
4、kie的请求,那么它就会把这个请求看作是已登录的受害者发来的。般情况下,浏览器收到站点设置的cookie之后,每当向该站点发送请求的时候,浏览器都会“自动地”连同该cookie一起发出。然后,我们再来讨论一下攻击者对Web应用程序URL的了解。如果应用程序没有在URL中使用跟会话有关的信息的话,那么通过代码分析或者通过访问该应用程序并查看嵌入HTML/JavaScript中的URL以及表单来了解应用程序有关的URL、参数和容许值。接下来,我们讨论一下应用程序赖以管理会话的信息对浏览器的透明性问题。我们知道,为了提高Web应用的便利性,用来管理会话的信息,例如Cookie或者基于HTTP的身份验
5、证(例如HTTP基本认证、非基于表单的认证)等敏感信息,都是由浏览器来存放的,并在每当向需要身份验证的应用程序发送请求时自动捎带上这些信息。也就是说,浏览器可以访问会话管理信息,如果Web应用程序完全依赖于这类信息来识别一个用户会话,这就为跨站请求伪造创造了条件。上面所说的三个因素,是跨站请求伪造攻击的必要的条件,而下面所说的,是一个“锦上添花”的因素,即没有它也能发动跨站请求伪造攻击,但是仃了它能使该攻击更加容易。这就是存在多种HTML标签,如果页面内出现这些标签,会立刻引起浏览器对https资源的访问,例如图像标签img便是其中之一。为简单起见,我们这里讨论GET方式的URL (不过这里讨
6、论的内容同样适用于POST请求).如果受害者已经通过身份验证,那么当他提交其它请求时,该cookie也会门动地随之发送(如图,这里用户正在访问上的一个应用程序)。脑执gbE聿请充ANID=rvssn rl.这3uuki剧取盘相淞窗lu jk.SzSS C MID-yss nd图1浏览器发送请求的同时还自动发送cookie那么,什么情况下会引起发送这个GET请求呢?这可就有多种可能了,首先当用户正常使用该Web应用程序的过程中有可能引发这个GET请求;其次,当用户直接在浏览器地址栏中键入该19时也会引发该GET请求;再者,用户单击了指向该URL的链接,即使该链接位于该应用程序外部,也会引发该GE
7、T请求。对于应用程序来说,它是无法区分上面的这些差别的。特别是第三种可能是非常危险的。有许多技术(和漏洞)可以隐藏一个链接的真实属性。链接可以嵌入电子邮件消息中,也可以出现在存心不良的Web站点,然后引诱用户浏览该站点,例如链接出现在位于其他主机上(其它Web站点、HTML格式的电子邮件消息,等等)的内容中,并且指向应用程序的资源。如果用户单击了该链接,由于他已经通过了站点上Web应用程序的认证,所以浏览器就会发出一个GET请求给该Web应用程序,同时将验证信息(包含会话id的cookie) 一并发过去。这样会导致在Web应用程序上执行一个有效操作一一该操作可能不是该用户所想要的,例如一个引起
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Web 安全 测试 请求 伪造 CSRF
![提示](https://www.001doc.com/images/bang_tan.gif)