通过dhcp被动识别指纹原理

开发Satori的人写了篇paper介绍如何通过dhcp数据包被动识别os指纹(http://chatteronthewire.org/papers.htm,chatter-dhcp.pdf),本文根据paper写出理解后的笔记:

对于被动指纹识别而言,DHCP的一个优点就是它是广播包,当一个dhcp客户端要加入时,他们会向所有人发送广播(所以在wireshark抓到的包中目的地址是255.255.255.255)。

作者首先介绍了最麻烦的方案:
利用捕获中显示的数据包的实际时间,每个DHCP数据包之间的差异,数据包的类型,存储在Seconds Elapsed字段中的值以及该数据包集合上的TransactionID等等来区分操作系统,如windows95和windows NT
在这里插入图片描述在这里插入图片描述

再介绍了简单的方案:
通过options识别操作系统。
首先介绍通过option 55(Satori最主要的方案):
利用选项55中请求的参数以及请求它们的顺序来识别操作系统
比如window各个版本的差异
在这里插入图片描述
Fedora和cent os的
在这里插入图片描述
由于很多linux底层dhcp堆栈相同,如下图所示
在这里插入图片描述
使用option 55不足以识别,所以针对linux,作者提出可以加以option 51(客户希望的租用时间),option 57(告诉DHCP服务器它可以接受的DHCP数据包的大小)辅助。

然后又介绍了通过其他options辅助识别os
option 61,用作将客户端链接到其租约的唯一标识符
可用于识别MS RRAS服务器
在这里插入图片描述
上图是一台MS RRAS Server,value等于01 + RAS + ‘ ‘ + MAC + 000000000000
而下图是一台思科的设备
在这里插入图片描述

Option 77是用户类信息,它通常用于帮助识别某种类型的计算机或用户类别
比如下图
在这里插入图片描述

接着介绍从PXE boot中进行区分
在这里插入图片描述
相关的option包括:
Option93 ,客户端系统的架构;通过option 93可以识别底层硬件
在这里插入图片描述
在这里插入图片描述

Option94,客户端网络设备接口
在这里插入图片描述

最后作者指出,可以利用租约信息来进行识别
可以观察当租约到期时,有多少操作系统实际更新了他们的IP地址,哪些等待直到下次重启来识别。
下面是继续使用ip地址的系统
在这里插入图片描述
下面是当前已经拥有地址,然后发送dhcp renewel请求的系统
在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值