关于冰盾 | 使用条款 | 网站地图
 
简介关于session欺骗的利用
简介关于session欺骗的利用
作者:冰盾防火墙 网站:www.bingdun.com 日期:2014-12-15
 

对于session欺骗 大家都蒙了。

  百度上有一篇文章 骗了整个网络界 虽然有不少人已经发现是错误的理论 误导的文章 。使不少人觉得 session欺骗很牛x 其实不然

  那篇文章叫eWebEditor session欺骗漏洞

  没错 ew的确存在那漏洞 但是那个作者说错了 原文:

  eWebEditor session欺骗漏洞

  文章作者:nowthk

  eWebEditor在线编辑器

  漏洞文件:Admin_Private.asp

  漏洞语句:<%

  If Session("eWebEditor_User") = "" Then

  Response.Redirect "admin_login.asp"

  Response.End

  End If

  只判断了session,没有判断cookies和路径的验证问题。

  漏洞利用:

  新建一个test.asp内容如下:

  <%Session("eWebEditor_User") = "11111111"%>

  访问test.asp,再访问后台任何文件,for example:Admin_Default.asp

  漏洞影响:虚拟主机的克星. by nowthk

  noethk大牛想法不错 但是很可惜 背离了session的运行机制。要知道 session是存放在服务端的 而放在客户端的只是一个服务端分发的sessionID 。原文作者是在本地架设的环境 所以根本不存在客户端服务端之说.如果文章没有加上 虚拟主机的克星这几个字 估计就不会有什么争议。 的确 session是可以被欺骗。这个话题我丢到后面再说。先说机制。

  虽然sessionID的唯一性大大地提高了session认证的总体安全 但是这世界上还有一样东西叫盗窃.

  我们来说说session的运行机制 . 例如你访问www.link0day.cn 这个站 那么服务端就会分给你一个sessionID值(前提是他们开启session) 什么时候你不爽 你关了浏览器 那么sessionID就失效了吗?

  个人通过收集资料觉得 session在服务端是有存活期的。 你关了浏览器的话 那么就只是注销了该站的sessionID值 但服务端还残留着 iis默认是保存20分钟 这样就给了我们可乘之机。

  继续说到session运行机制 有一个很重要的知识点就是 服务端与客户端交接 是通过cookies存放在某一文件夹里面的 也就是说 xss也可以盗取session。

  先别慌,看这一捉包来的数据:ASPSESSIONIDGQGGQAFC=FPGBGNOCAGPLAPOFOPJGODCJ

  看到没 asp sessionid*********** 等号后面就是他的sessionID值。 为了方便大家理解和验证方法的可行。我与老大 樱木花盗 做了一实验(部分修改)。

  老大登陆一后台(当然是session有验证)。然后捉包 发他的sessionID给我 然后他关了浏览器。也就是结束了客户端与服务端的连接 但那sessionID没过期。 我这边用啊D修改session 然后直接点击登陆 。 结果可想而知 成功登陆。

  这是说明 客户端与客户端之间对服务端的欺骗 文绉绉地说 也就是中间人攻击,

  这里 可能你会问 入侵的时候 别人会那么傻给你sessionID么。嘿嘿 问得好 。这里就出现了xss。

  要知道 我们可爱的xss可以盗取cookies。。 我们直接把他的cookies相关直接盗过来。

  Xss恰恰可以做到这一点。 至于怎么触发跨站就不用说了把。。 盗取cookies的文件 网上一堆 自己找一下 改一下就可以。跨站的时候拿cookie可以,但是拿session就麻烦。Session很快就要失效,除非没事一直等着目标中招后立即行动,不然就算拿到了session早就过期N久了

  上面说的是中间人攻击 , 下面就说一下另一种情况。直接”欺骗”服务端。

  这里就要纠正不少人的观点了。回到文章一开始说的那个ew编辑器session欺骗的文章 作者当然是想错了 看了我前部分所说的运行机制 应该就能弄个半懂把。也就说 客户端不能提交修改后的sessionID值到服务端 让服务端信任你。那样是不成立的。并且实验证明 不是行的。

  另外一个实验如下:

  WIN2003 SP1 +IIS6.0 不是虚拟主机,iis建的两个网站A、B。

  A -->s.asp : <%session("test")="ok"%>

  A -->e.asp :<%if session("test")<>"" then response.write("good!")%>

  B -->e.asp :<%if session("test")<>"" then response.write("good!")%>

  1.访问http://A/e.asp 显示为空

  2.访问http://B/e.asp 显示为空

  3.访问http://A/s.asp

  4.访问http://A/e.asp 显示"good!"

  5.访问http://B/e.asp 显示为空

  6.访问http://B/s.asp

  7.访问http://B/e.asp 显示"good!"

  实验三:

  在http://www.xxx.net/1.asp写下了如下代码:

  <%

  session("username")="abddwww"

  %>

  又在同一主机另一个站点下写下了如下代码:(test.asp)

  <%

  if session("username")<>"" then

  response.write "ok"

  else

  response.write "no session"

  end if

  %>

  先访问test.asp返回no session,然后访问1.asp,再次访问test.asp还是返回no session(同一ie进程下)

  说明想跨站欺骗是不成功的

  假如要成功运用那个漏洞,除非www.x1.cn和www.x2.cn是绑定在同一主机头下,同目录。

  为什么? 这又与iis用户有关.. 假如权限设置得适当 是没办法read目录 +write目录的话 那样session欺骗是不成立的

  所以 要使成功 就必须以下几个条件

1:成功获取了该域名下的一个webshell

  2:有读权限

  3:需要入侵的系统采用了session认证

  4:管理员使用的密码无法破解

  5:可以获得session验证的语句

  6. 同iis用户

  7. 同域名(一级or二级).:

  例如 www.sb.cn ,那么二级域名就可以是这样: fuck.sb.cn

  8. 同目录

  这样的洞洞是不是很难利用? 其实一般小站都用不上 大站才用得上

  我曾经检测国内某某大学的时候 就是靠这洞弄下不少shell 然后提权之。

  所以 事实证明 session欺骗是存在 但是 利用范围比较狭窄 一般小站用不上 大站用这方法的话 倒是百试百灵~

 

 
最新内容:
怎样利用Flash进行XSS攻击[2014-12-15]
计算机中的十二种常用密码破解技巧[2014-12-15]
怎样利用Excel剿灭DLL木马[2014-12-15]
怎样成为一个反病毒精英[2014-12-15]
巧用代理渗透内网[2014-12-15]
黑客入侵万象服务器的方法浅析[2014-12-15]
相关内容:

合作伙伴: 黑基网 补天科技 威盾科技 站长下载 新飞金信 北京电信 ZOL应用下载
中华人民共和国增值电信业务经营许可证京ICP备14024464 公安备案号 京1081234 
版权所有©2003-2016 冰盾防火墙  www.BingDun.com 法律声明
服务热线:(010)51661195