非主流入侵之会话劫持winnt/2k HASH
所属分类:
网络安全 / 黑客入侵
阅读数:
145
收藏 0赞 0分享
声明:
本文只是在技术上分析如何来通过sniffer来劫持winnt/2k的hash,对此文可能造成的危害不负任何责任。
引言:
近来SMB会话劫持的讨论占据了个大技术论坛不少的位置,吸引了不少人的目光,同时绿盟月刊37期、Phrack杂志60期和安全焦点峰会也刊登出了相关的文章,使得SMB会话劫持成为一个热点。由于是window设计上的缺陷,这是一种无法察觉又非常可怕的攻击方法。本文试图从SMB数据包分析的角度来说明如何截获winnt/2k的hash,具体的实现就不公布了,请读者牢记前面的声明。
说明:
为了使文章有针对性,关于SMB协议以及SMB会话过程就不谈了,用到的时候会一带而过,感兴趣的朋友请自行查询附录中的参考文档。文中提到的数据包如果没有特别说明都是通过Sniffer pro截获到的,并且为了分析方便,去掉了物理帧头、IP头和TCP头,只留下NETB和SMB部分。
正文:
假设两台机器,一台为Client A,一台为SMBServer B。
一、session的建立:
设法让A去访问B的特定资源,产生一个NETBIOS会话。A发送Session request,其中包括经过编码的NETBIOS名字。B在139端口监听连接,收到A的request后,B发送Session confirm,其中没有任何内容。这样就建立了一个有效的session。其中Session request数据包的NETB Type为0x81,Session confirm数据包的NETB Type为0x82,可以在程序中通过判断这两个标志来确定是否产生一个有效的session,然后就可以想办法截获SMB包了。
二、Challenge的获得:
当有效的session建立后,就开始进行连接的确认工作了,从这一步中可以得到B发送给A的由B随机产生的Challenge。
过程如下:A向B发送一个身份认证的请求,B随机产生一个8字节的Challenge发送给A,这个Challenge就包含在B发回给A的Server Response数据包中。用Sniffer pro截获这个包后,去掉物理帧头、IP头和TCP头,再去掉4个字节的NETB头,剩下的就是SMB包的内容,再去掉33个字节长的SMB Reponse header,然后向后做36个字节的偏移,下面的就是长度为8个字节的Challenge。这样就得到了我们需要的服务器随机产生的Challenge。
(由于本文的目的在于散列截获的实现,所以数据包内个字节内容的具体含义不做任何解释,只说明位置,下文也遵循这个原则。想深入了解的朋友请参阅附录的参考文档)
三、LM&NT HASH的获得:
A得到B发回的用于加密口令的Challenge后,向B发送建立空连接的请求,B返回Server Response包,此时IPC空连接成功建立。A然后发送LM&NT HASH给B,请求访问特定的资源,等待B的允许。我们需要做的就是截获A发送的这个SMB包。下面来看怎么拆解出HASH,还是去掉物理帧头、IP头和TCP头,再去掉4个字节的NETB头,剩下的就是SMB包的内容,再去掉33个字节长的SMB Reponse header,然后向后做28个字节的偏移,下面的24个字节的内容就是LM HASH,紧接着的24个字节就是NT HASH。现在我们就获得了A主机的LM HASH和NT HASH。
四、HASH的破解
前面已经获得了Challenge、LM HASH和NT HASH,现在我们做成lc文件格式,下面就是导入lc4来暴力破解了。lc的文件格式如下:
192.168.0.244 ADMINIST-7Z6A4E\Administrator:"":"":89E5E3F54A998398DC36E89DDD37334C801201CA39C9A5D3:8457623684F27A5EFA5FE7B647E87C36D78616F80594123C:E3A96FF4507B9EDF
后面的三列数字分别为LM HASH、NT HASH、Challenge。
五、总结
本文旨在于讨论winnt/2k下SMB会话劫持的实现,相关问题请查阅参考文档。因为入侵方法复杂,并且需要一定的基础,所以,掌握的人并不多。我已经尽量写地简单,只要按照以上的步骤去做就能实现,具体的代码实现就不写了,有兴趣的朋友自己去研究吧。
黑客谈MS07-029域名DNS漏洞利用入侵过程
前言:
MS07-029,Windows 域名系统 (DNS) 服务器服务的远程过程调用 (RPC) 管理接口中存在基于堆栈的缓冲区溢出。漏洞的前提是没打补丁,开启DNS服务的所有版本WINDOWS 2000 Server和WINDOWS 2003 Server。
今天
收藏 0赞 0分享
黑客教你SQL注入Access导出WebShell的方法
热 点:
已经听N个人过说有人已经发现SQL注入Access得到webshell的技术了,也只是听说而已,具体的细节还是不得而知。
最近在看的书中一章提到Jet的安全,然后灵光一闪,呵呵,发现了一种可以利用access导出asp的方法,分享之。
收藏 0赞 0分享
一个注射点,一个webshell甚至系统权限
————只要给我一个注射点,无论什么权限,我都给你一个webshell甚至系统权限
声明:本文仅用于教学目的,如果因为本文造成的攻击后果本人概不负责。因为
发觉其危害过大,原文已经经过大量删减及修改,即使这样本文的危害性
收藏 0赞 0分享
黑客实战:一次简单脚本攻击实例
一、开篇
今天闲着无聊,到本地区的一个社区上转转,那些人污言秽语的,有个帖子还侵犯了一个朋友的版权,跟贴说了那人几句,管理员也不管,实在看不下去了,打算给管理员盆冷水清醒清醒。
二、准备/分析
安全第一,先开个HTTP代理,打开社区的登陆页面,
收藏 0赞 0分享
eWebEditor编辑器成网站中的隐形炸弹
站长在使用eWebEditor的时候是否发现,eWebEditor配置不当会使其成为网站中的隐形炸弹呢?第一次发现这漏洞源于去年的一次入侵,在山穷水尽的时候发现了eWebEditor,于是很简单就获得了WebShell。后来又有好几次利用eWebEditor进行入侵的成功经历,这
收藏 0赞 0分享
系统泄露密码的入侵攻击分析
WINDOWS访问139端口时自动用当前用户、密码连接,造成泄露用户密码,虽然其密码是加密的,但一样可以用来攻击。
下面是SMB的密码认证方式。
WINDOWS的139口的访问过程,箭头表示数据方向:
1.客户端<---------------
收藏 0赞 0分享
看看黑客是怎样使用Google黑掉Windows服务器
在我的《为什么使用Google扫描安全漏洞》的技巧中,我讨论了如何使用Google.com来执行对你的面向公众的服务器的安全扫描――包括Windows、IIS、Apache和(但愿不会如此!)SQL Server。你能使用它得到服务器的信息、包含敏感信息的文件和检测出&ldquo
收藏 0赞 0分享
查看更多