网络安全项目实战(六)--报文检测

2023-12-17 05:28:33

11. NTP应用协议报文解析

  • 目标
    • 了解NTP协议
    • 了解NTP包基本捕获方式
    • 了解NTP协议探测(解析)方法(简单方法)

11.1. 使用ntpdate同步网络时间

  • 安装
$ sudo apt-get install ntpdate
  • 对时服务

查看时间

$ date  #date可以查看当前系统时间

对时

$ sudo ntpdate -u 133.100.11.8  #同步到日本的服务器时间
  • 常用的对时服务器

    ntp.api.bz , 中国上海时间

11.2. NTP 协议介绍

NTP(Network Time Protocol,网络时间协议)是由RFC 1305定义的时间同步协议,用来在分布式时间服务器和客户端之间进行时间同步。NTP基于UDP报文进行传输,使用的UDP端口号为123。

11.2.1. NTP工作原理

NTP的基本工作原理如图所示。Device A和Device B通过网络相连,它们都有自己独立的系统时钟,需要通过NTP实现各自系统时钟的自动同步。为便于理解,作如下假设:在Device A和Device B的系统时钟同步之前,Device A的时钟设定为10:00:00am,Device B的时钟设定为11:00:00am。Device B作为NTP时间服务器,即Device A将使自己的时钟与Device B的时钟同步。NTP报文在Device A和Device B之间单向传输所需要的时间为1秒。

11.2.2. 系统时钟同步的工作过程

Device A发送一个NTP报文给Device B,该报文带有它离开Device A时的时间戳,该时间戳为10:00:00am(T1)。当此NTP报文到达Device B时,Device B加上自己的时间戳,该时间戳为11:00:01am(T2)。当此NTP报文离开Device B时,Device B再加上自己的时间戳,该时间戳为11:00:02am(T3)。当Device A接收到该响应报文时,Device A的本地时间为10:00:03am(T4)。至此,Device A已经拥有足够的信息来计算两个重要的参数:NTP报文的往返时延Delay=(T4-T1)-(T3-T2)=2秒。

Device A相对Device B的时间差offset=((T2-T1)+(T3-T4))/2=1小时。这样,Device A就能够根据这些信息来设定自己的时钟,使之与Device B的时钟同步。

11.2.3. NTP的报文格式

NTP有两种不同类型的报文,一种是时钟同步报文,另一种是控制报文。

我们主要关注时钟同步报文:

主要字段的解释如下:

  • LI(Leap Indicator):长度为2比特,值为“11”时表示告警状态,时钟未被同步。为其他值时NTP本身不做处理。

  • VN(Version Number):长度为3比特,表示NTP的版本号,目前的最新版本为3。

  • Mode:长度为3比特,表示NTP的工作模式。不同的值所表示的含义分别是:0未定义、1表示主动对等体模式、2表示被动对等体模式、3表示客户模式、4表示服务器模式、5表示广播模式或组播模式、6表示此报文为NTP控制报文、7预留给内部使用。

  • Stratum:系统时钟的层数,取值范围为1~16,它定义了时钟的准确度。层数为1的时钟准确度最高,准确度从1到16依次递减,层数为16的时钟处于未同步状态,不能作为参考时钟。

  • Poll:轮询时间,即两个连续NTP报文之间的时间间隔。

  • Precision:系统时钟的精度。

  • Root Delay:本地到主参考时钟源的往返时间。

  • Root Dispersion:系统时钟相对于主参考时钟的最大误差。

  • Reference Identifier:参考时钟源的标识。

  • Reference Timestamp:系统时钟最后一次被设定或更新的时间。

  • Originate Timestamp:NTP请求报文离开发送端时发送端的本地时间。

  • Receive Timestamp:NTP请求报文到达接收端时接收端的本地时间。

  • Transmit Timestamp:应答报文离开应答者时应答者的本地时间。

  • Authenticator:验证信息。

?

11.2.4. NTP的工作模式

设备可以采用多种NTP工作模式进行时间同步:

  • 客户端/服务器模式

  • 对等体模式

  • 广播模式

  • 组播模式

客户端/服务器和对等体模式中,设备从指定的服务器或对等体获得时钟同步,增加了时钟的可靠性。

客户端/服务器模式

在客户端/服务器模式中,客户端向服务器发送时钟同步报文,报文中的Mode字段设置为3(客户模式)。服务器端收到报文后会自动工作在服务器模式,并发送应答报文,报文中的Mode字段设置为4(服务器模式)。客户端收到应答报文后,进行时钟过滤和选择,并同步到优选的服务器。在该模式下,客户端能同步到服务器,而服务器无法同步到客户端(单向)。其他模式 暂不介绍

?

文章来源:https://blog.csdn.net/cat_fish_rain/article/details/135030627
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。