跨站攻击之实现Http会话劫持的手法

互联网   发布时间:2008-10-08 19:38:00   作者:佚名   我要评论
Web应用程序是通过2种方式来判断和跟踪不同用户的:Cookie或者Session(也叫做会话型Cookie)。其中Cookie是存储在本地计算机上的,过期时间很长,所以针对Cookie的攻击手段一般是盗取用户Cookie然后伪造Cookie冒充该用户;而Session由于其存在于服务端,随着会话的注销而失
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

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的document.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.0x54.org/test/cc.asp文件。   cc.asp文件内容如下:   该文件目的是获取管理员Session并利用WebAdmin的文件编辑功能查看222.210.115.125(被攻击的Web服务器,其实是我本机啦)的E:\MyWeb\webadmin.aspx文件内容并把内容保存到本地的a.txt文件中。数据的提交使用的是ServerXMLHTTP组件,它与XMLHTTP有相似之处,也有异同,具体的可以看看《ServerXMLHTTP vs XMLHTTP》。   准备就绪,先登陆WebAdmin然后再访问构造好的跨站URL,呵呵,然后去看http://www.***.org/test/a.txt。   你也可以试试直接访问cc.asp,呵呵,生成的a.txt将是一个登陆界面的源文件。   哈哈,现在热烈庆祝一下本次HTTP会话劫持测试胜利闭幕,总的来说实行一次这样的攻击难度还是很大的,不过话又说回来,在技术这块领域,除了Copy人家的代码,还有不需要努力就能做好的事情吗?

相关文章

  • 黑客利用跨站实现HTTP会话劫持

    Web应用程序是通过2种方式来判断和跟踪不同用户的:Cookie或者Session(也叫做会话型Cookie)。其中Cookie是存储在本地计算机上的,过期时间很长,所以针对Cookie的攻击手
    2008-10-08
  • 关于网址的HTTP头引发的我们关于安全问题的思考

    本文主要介绍了HTTP头所引发的问题.我们来剖析一下.了解清楚
    2012-05-25
  • 基于Http Header的SQL注入的方法详解

    通常HTTP消息包括客户机向服务器的请求消息和服务器向客户机的响应消息。这两种类型的消息由一个起始行,一个或者多个头域,一个只是头域结束的空行和可选的消息体组成。
    2012-06-27
  • 4个常用的HTTP安全头部

    由于HTTP是一个可扩展的协议,各浏览器厂商都率先推出了有效的头部,来阻止漏洞利用或提高利用漏洞的难度。了解它们是什么,掌握如何应用,可以提高系统的安全性
    2014-07-14
  • 加密解密那些事之SSL(https)中的对称加密与非对称加密

    HTTPS在传输数据之前需要客户端(浏览器)与服务端(网站)之间进行一次握手,在握手过程中将确立双方加密传输数据的密码信息。TLS/SSL协议不仅仅是一套加密传输的协议,更
    2014-07-17
  • HTTPS是什么意思 HTTPS加密保证安全过程详解

    HTTPS并不是一个单一的东西,它知识我们常见的HTTP 协议和某个加密协议的一个混合,这个加密协议通常会是TLS。那么HTTPS为什么安全呢?其实我们需要先考虑HTTP为什么不安全
    2016-06-01

最新评论

?


http://www.vxiaotou.com