微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > 以太网中网络扫描的原理与检测方法

以太网中网络扫描的原理与检测方法

时间:09-19 来源:互联网 点击:

这是最基本的TCP扫描。利用操作系统提供的系统调用connect(),与每一个感兴趣的目标计算机的端口进行连接。如果端口处于侦听状态,则connect()就能成功。否则,该端口是不能用的,即没有提供服务。该技术的优点是响应速度快,并且使用者不需要任何权限。系统中的任何用户都有权利使用该调用。另一个优点就是速度很快。但缺点是容易被发觉,并且易被过滤掉。使用该方法时目标计算机的logs文件会显示一连串的连接和连接时出错的服务消息,并且能很快将连接关闭。

2.2 TCP SYN扫描

TCP SYN扫描是半开放式扫描,扫描程序不必打开一个完全的TCP连接。扫描程序发送的是SYN数据包。返回RST,表示端口没有处于侦听状态;返回SYN/ACK信息表示端口处于侦听状态,此时扫描程序必须再发送一个RST信号来关闭这个连接过程。这种扫描技术的优点是一般不会在目标计算机上留下记录。但这种方法必须要有管理员权限才能建立自己的SYN数据包。通常这个条件很容易满足。

2.3 TCP FIN扫描

有时SYN扫描不够秘密,防火墙和包过滤器就会对一些指定的端口进行监视,并能检测到这些扫描。相反,FIN数据包可能会没有任何麻烦地被放行。这种扫描方法的思想是关闭的端口会用适当的RST来回复FIN数据包;而打开的端口会忽略对FIN数据包的回复。但这种方法和系统的实现有关。有的系统不管端口是否打开,都回复RST,这时这种扫描方法就不适用了。在区分Unix和NT操作系统时,这种方法是有效的。

2.4 IP段扫描

IP段扫描并不是直接发送TCP探测数据包,而是将数据包分成2个较小的IP段。这样就将一个TCP头分成好几个数据包,从而很难探测到过滤器。但必须小心,一些程序在处理这些小数据包时会丢弃。

2.5 TCP反向ident扫描

ident协议(RFC1413)允许看到通过TCP连接的任何进程的拥有者的用户名。例如用户能连接到http端口,然后用identd来发现服务器是否正在以管理员权限运行。这种方法只能在和目标端口建立了完整的TCP连接后才能使用。

2.6 FTP代理间接扫描

FTP协议支持代理(proxy)FTP连接,攻击者可以通过FTP server-PI(协议解释器)使源主机和目标主机建立控制通信连接。然后,请求该server-PI激活一个有效的server -DTP(即数据传输进程)来给其他主机发送信息。因此,攻击者可以用代理服务技术来扫描代理服务器所在网段主机的TCP端口。这样,攻击者就可以绕过防火墙,通过连接到防火墙内部的一个FTP服务器进行端口扫描。该方法的优点是很难被跟踪,能穿过防火墙;其缺点是速度很慢。

2.7 UDP不可达扫描

该方法与前述方法的不同之处在于使用的是UDP协议。UDP协议对数据包的请求不回应,打开的端口对扫描探测不发送确认,关闭的端口也不发送错误数据包。但是许多主机在用户向一个未打开的UDP端口发送数据包时,会返回一个ICMP_PORT_UNREACH错误信息。这样攻击者就能判断哪些端口是关闭的。UDP包和ICMP错误消息都不保证能到达。因此,在扫描时必须在探测包看似丢失时重传。RFC793对ICMP错误消息的产生速率做了规定,因此,这种扫描方法很慢。

当非管理员用户不能直接读取端口且不能到达错误信息时,Linux能间接地在它们到达时通知用户,如对一个关闭的端口的第2个write()调用将失败;在非阻塞的UDP套接字上调用recvfrom()时,如果ICMP出错信息还没有到达,则返回EAGAIN(重试),否则返回ECONNREFUSED(连接被拒绝)。

3 网络扫描检测的实现

因为网络扫描首先需要对整个网络扫描一遍,从而找到活动主机(因为许多子网配置得很稀疏,所以大部分IP地址是空的),然后对每个活动主机进行穷尽式的端口扫描。因此可以设计一个网络陷阱机来检测网络扫描。其原理与实现过程如下。

在网络陷阱机上虚拟多个IP地址,这些地址与需重点保护的主机的IP地址相邻,并且服务与开放端口及需重点保护的主机相同。网络陷阱机与交换机或路由器的映射端口(SPAN port)相连,这样连接就能采集到流经整个网络的数据。

3.1 数据包过滤

数据包过滤的主要目的是缩减数据。为了防止丢包,包过滤只做简单的基于包头内容的过滤(如IP地址、TCP/IP端口、TCP标志位等),去除不关心的网络数据包的数据而只留下其报头,并将其结果存入指定数据库。经过包过滤之后的网络包数据量将大大减少。包过滤规则的BNF范式描述如下:

例如,在以下规则中:“{12,4}=={16,4}20”,表示若从第12字节偏移处开始的4个字节(源IP地址)等于从第16个字节偏移处开始的4个字节(目的IP地址),则将包的前20字节获取过来,而抛弃包的其余内容。利用此语法定义的过滤规则简单且过滤条件基本上是简单的比较运算,适于计算机进行高效快速地处理。

3.2 网络扫描检测

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top