- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【yueyan 收集科普系列】Cookie 注入介绍
Blog: qq:yueyan@
随着网络安全技术的发展,SQL 注入作为一种很流行的攻击方式被越来越多的人所知
晓。很多网站也都对 SQL 注入做了防护,许多网站管理员的做法就是添加一个防注入程序。
这时我们用常规的手段去探测网站的 SQL 注入漏洞时会被防注入程序阻挡,遇到这种情况
我们该怎么办?难道就没有办法了吗?答案是否定的。
我们知道,一般的防注入程序都是基于“黑名单” 的,根据特征字符串去过滤掉一些危险
的字符。一般情况下,黑名单是不安全的,它存在被绕过的风险。比如有的防注入程序只过
滤了通过 GET、POST 方式提交的数据,对通过 Cookie 方式提交的数据却并没有过滤,这
时我们该怎么办?在本文你将会找到答案。
Cookie 注入原理
Cookie 最先是由 Netscape (网景)公司提出的,Netscape 官方文档中对 Cookie 的定义
是这样的:Cookie 是在 HTTP 协议下,服务器或脚本可以维护客户工作站上信息的一种方
式。
Cookie 的用途非常广泛,在网络中经常可以见到Cookie 的身影。它通常被用来辨别用
户身份、进行 session 跟踪,最典型的应用就是保存用户的账号和密码用来自动登录网站和
电子商务网站中的“购物车” 。
Cookie 注入简单来说就是利用 Cookie 而发起的注入攻击。从本质上来讲,Cookie 注入
与传统的 SQL 注入并无不同,两者都是针对数据库的注入,只是表现形式上略有不同罢了。
要想深入了解 Cookie 注入的成因,必须要了解 ASP 脚本中的 request 对象。它被用来
获取客户端提交的数据。先来看下 ASP 开发文档中对 request 对象的描述,如图 1 所示:
图 1
Request 对象象的使用方法法一般是这样样的:requestt.[集合名称] (参数名称)),比如获取取从
表单单中提交的数数据时可以这这样写:requeest.form(参数数名称),但ASP 中规定定也可以省略略集合
名称称,直接用这这样的方式获获取数据:reqquest(参数名名称),当使使用这样的方式获取数据时时,
ASPP 规定是按 QQueryString 、Form、Coookies 、ServerrVariables 的的顺序来获取取数据的。这样样,
当我我们使用 requuest(参数名称)方式获取取客户端提交交的数据,并并且没有对使使用
requuest.cookies(参数名称)方方式提交的数数据进行过滤滤时,Cookiee 注入就产生生了。
Cookie 注入入典型步骤
上面我们介介绍了 Cookiee 注入的相关关知识,下面面我们来看如如何确定一个网站是否存在在
Cookie 注入漏洞洞。
1.寻找形如“.asp?id=xx””类的带参数的URL 。
2.去掉“id= 常,如果不
xxx”查看页面面显示是否正常 正正常,说明参参数在数据传传递中是直接接起作
用的的。
3.清空浏览器地址栏,输输入“javascrript:alert(docuument.cookiee=id=+escappe(xx));”,按
Enteer 键后弹出一一个对话框,内容是“id=xxx” ,然后用原来的 URLL 刷新页面,如果显示正常,
说明明应用是用 RRequest(id)这这种方式获取取数据的。
4.重复上面的步骤,将常常规 SQL 注注入中的判断语句带入上面面的URL :
“javascript:alert(ddocument.coookie=id=+eescape(xx annd 1=1));”
“javascript:aalert(documennt.cookie=idd=+escape(xx and 1=2)));” 。
和常规 SQLL 注入一样,如果分别返回正常和不正正常页面,则则说明该应用用存在注入漏洞,
并可可以进行cookkie 注入。
5.使用常规注入语句进行行注入即可。。
Cookie 注入入攻击实例
通过上面的的介绍,相信读读者对 Cookkie 注入的原
文档评论(0)