向目标主机发送一个UDP数据包,对方会返回一个ICMP消息吗?

如题所述

高级ICMP扫描技术

Ping是ICMP协议的使用,先进的ICMP扫描技术是最基本的用途:使用ICMP协议错误。按照协议,根据网络协议错误已经发生,那么接收机将产生一个ICMP差错报文。这些错误的数据包不主动发送,但由于出现错误,根据协议自动产生。

校验和及版本的IP数据报错误时,目标主机将丢弃该数据报校验和错误,那么路由器直接丢弃数据报。一些主机上,如AIX,HP-UX,依此类推,将不会发送ICMP不可达的数据报。

我们使用以下功能:

1,只有IP头的IP数据包,目标将返回到目的地不可达的ICMP差错报文发送到目标主机。

错误的IP数据报发送到目标主机,例如,不正确的IP头长度,目标主机将返回ICMP差错报文的参数问题。

足够的碎片,当数据包碎片,但是却没有给接收端,接收端分片组装超时会发送片段组装超时ICMP报文。

到目标主机发送一个IP数据报,但该协议是错误的,如该协议不可用,那么目标将返回ICMP目的地不可达报文,但如果目标主机防火墙或之前过滤装置可能会过滤掉请求没有收到任何回应。您可以使用一个非常大的数字协议在IP头的协议内容,本协议的数字至少在今天还没有被使用,它应该是主机将返回不可达的ICMP不可达报文返回一条错误消息,然后,它显示了由防火墙或其他设备的过滤,我们也可以使用这种方法来检测是否有防火墙或其他过滤设备存在。

协议,以检测使用的IP主机使用哪些协议,我们可以把IP报头协议的变化,8日,256个可能的。返回ICMP差错报文的目标,以确定哪些协议是在使用。 ,然后返回目的地不可达的主机不是相反的协议,如果有什么不回,主机可能使用此协议,但也可能被防火墙过滤掉。 NMAP的IP协议扫描是利用这个原理。

造成IP分片组装超时ICMP错误消息,同样可以达到检测的目的。当主机收到的数据报的丢失片段,失去了在一定时间内没有收到数据报,它会丢弃整个包,而到原来的发件人发送ICMP分片组装超时错误。我们可以利用这个功能制造切片包,然后等待ICMP超时错误消息组装。 UDP片段TCP和ICMP报文进行分段,使目标主机不完整的数据包就行了,当然,这种非连接的UDP不可靠的协议,如果我们不接收线或其他问题,由于返回ICMP超时错误消息,也有可能在传输过程中丢失。

我们能够使用这些特性防火墙的ACL(访问列表),或者即使有这些特点,获得整个网络的拓扑。如果我们不能从目标不可达报文分片组装超时错误报文,可以作出如下判断:

防火墙过滤器我们发送的协议类型

2,防火墙过滤指定端口

防火墙阻止ICMP目的地不可达协议不可达的错误消息。

指定主机上的防火墙阻止ICMP差错报文。

高级TCP扫描技术

基本的TCP扫描是使用connect(),这是很容易实现,如果目标主机能够连接,它显示了一个打开相应的端口。然而,这是最原始,首先拒绝的一个保护工具。

先进的扫描技术,TCP三次握手的TCP连接和TCP报头的标志,也被称为半开扫描的主要特点。

符合TCP数据报头六旗。

URG:(紧急指针字段显著)紧急指针。值为1,用来处理避免TCP数据流中断时,

ACK(确认字段有效)设置为0时的确认号码(确认号)是合法的,表示数据段不不包含一个确认消息确认号被忽略。

PSH:(Push功能),PUSH标志的数据,设置请求的数据段可以直接发送给收件人获得应用程序,而不必等到缓冲区满时发送。

RST:(重置连接)用于重置连接错误造成的,由于某种原因,用来拒绝非法数据和请求。接收到RST位,通常会出现一些错误。

的SYN:(同步序列号)来建立连接,在连接请求中,SYN = 1,ACK = 0,连接响应,SYN = 1,ACK = 1。也就是说,SYN和ACK来区分接受连接请求和连接。

FIN:(没有更多的数据从发送者)释放连接,表明发送方有没有数据发送。

TCP协议连接三次握手的过程是这样的:

首先在连接请求,客户端(请求者)发送SYN = 1,ACK = 0的TCP数据然后,数据包发送到服务器端(接收到该请求的客户端),表示与服务器端建立一个连接;如果以响应此连接的服务器,它返回一个SYN = 1,ACK = 1,报告的数据客户端,这意味着在服务器端就此达成一致,并要求客户到最后确认,最后客户端发送SYN = 1,ACK = 1的数据包到服务器端,以确认连接建立。

在使用这些标志和TCP三次握手连接功能进行扫描检测。

SYN扫描

该扫描模式也被称为“半开放”扫描,因为使用的TCP协议连接的第一步,而不是构建一个完整的TCP连接。

的方式来完成,这是反馈到远程主机的一个端口发送一个SYN标志的TCP数据报,如果主机发送回一个SYN | ACK数据包,那么主机的端口上监听,如果RST包主机没有在该端口上侦听。 SYN选择X-扫描器。

,ACK扫描TCP数据报发送一个ACK标志主机,如果主机反馈一个TCP RST报文,那么这个主机是存在的。此外,通过这种技术,以确定是否防火墙的另一侧是一个简单的包过滤,基于状态的防火墙。

FIN

端口发送一个TCP FIN数据包到远程主机。如果主机没有任何反馈,然后主机,并在这个端口上监听反馈主机的一个TCP RST回来,然后主机存在,但不听的端口。

NULL

一个标志的TCP包发送,符合RFC 793,相应的目标主机端口是关闭的,你应该发送回一个RST数据包。

FIN + URG + PUSH

向目标主机发送一个FIN,URG和PUSH分组符合RFC 793,相应的目标主机端口是关闭的,那么它应该返回一个RST国旗。

以上的方式来绕过一些防火墙,防火墙后面的主机信息,当然,不被欺骗。这些方法,还有一个好处是比较困难的被记录下来,甚至netstat命令中只会显示不出来,一般安全设备不记录的内容,这能够更好地隐藏自己的某种方式。

高级UDP扫描技术

扫描UDP实现的使用和ICMP协议,ICMP和提及。还有一些特殊的UDP回声,如SQL Server,它的1434端口发送'X02'或'X03'将能够检测到连接的端口。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-11-01
端口开放时会返回UDP数据包,没开放的时候可能会回ICMP消息,我之前以为端口没开放一定会回ICMP消息,但经过别人指教,然后抓包测试,确实不一定回ICMP消息本回答被网友采纳
第2个回答  2018-11-01
TCP
abbr.
Transfer Control Protocol, 传输控制协议
UDP
abbr.
User Datagram Protocol, 用户数据报协议
第3个回答  2013-03-21
高级ICMP扫描技术

平是ICMP协议步行,先进的ICMP扫描技术是利用ICMP协议:错误的根本宗旨。根据网络协议,根据该协议,如果出现一个错误,然后在接收端将产生一个ICMP错误消息。这些错误消息是不请自来,但由于错误,根据协议自动生成。

当IP数据报的校验和错误的版本中,目标主机将丢弃此数据包校验和错误,则该路由器直接丢弃该数据报。一些主机,如AIX,HP-UX,不发送ICMP不可到达的数据报。

我们使用以下功能:

1,一个IP数据包的IP报头,目标将返回一个ICMP目的地不可达的错误消息发送到目标主机。

2,错误的IP数据包发送到目标主机,如不正确的IP头长度,目标主机会返回一个ICMP参数问题的错误消息。

3,ICMP数据报组装超时超时会发送一片片组装数据包碎片,但并没有给予足够的片在接收端,接收端。

到目的主机发送一个IP数据报,但该协议是错误的,如该协议是不可用的,那么目标将返回一个ICMP目的地不可达报文,但如??果目标主机之前,防火墙或过滤装置过滤掉提出了要求,没有收到任何回应。您可以使用一个非常大的协议数字IP头的协议内容,本协议数字至少在今天还没有被使用,它应该是主机将无法访问无法到达ICMP数据报返回返回一个错误消息,那么就说明过滤防火墙或其他设备,我们也可以使用这种方法来检测是否有防火墙或其他过滤设备。

IP协议来检测主机正在使用哪些协议,我们可以更改IP头的协议,8个,256个可能的。返回ICMP错误消息的目标,确定所使用的协议。如果返回的目的地不可达的主机,然后使用此协议,相反,如果什么都没有返回,主机可能使用这个协议,但也可能是防火墙过滤掉。 NMAP的IP协议扫描是利用这个原理。

造成IP分片组装超时的ICMP错误消息,也可以达到这个目标,我们的检测。当主机接收到丢失的数据包片,并在一定时间内丢失的数据包没有收到,它会丢弃整个包,并且发送ICMP分片组装超时错误的原始发件人。我们可以使用这个功能的制造数据包的分片,然后等待ICMP组装超时错误消息。片,TCP,UDP和ICMP数据包碎片,只是没有到目标主机获得完整的数据包就行了,当然,对于UDP这种非连接的不可靠的协议,如果我们没有收到线或其他问题,是由于超时错误ICMP消息被返回,在传输过程中可能会丢失。

我们能够充分利用这些功能得到防火墙的ACL(访问控制列表),即使有这些功能,整个网络拓扑结构。如果我们不能从目标不可达报文分片组装超时错误消息,你可以做出如下判断:

防火墙过滤器我们发送的协议类型

2,防火墙过滤指定的端口

防火墙阻止ICMP目的地不可达协议不可达的错误消息。

4,防火墙阻止指定的主机的ICMP错误报文。

高级TCP扫描技术

使用最基本的TCP扫描,使用connect(),这是很容易实现的,如果目标主机能够连接,显示一个相应的端口是开放的。然而,这是最原始的和拒绝的第一保护工具。

在高级TCP扫描技术,主要使用的TCP连接的三次握手和TCP数据头标志,这就是所谓的半开扫描的特点。

首先了解的TCP数据报头6个标志。

URG:紧急指针字段显着紧急指针。二手1的值,处理避免TCP数据流的中断

的ACK(确认字段显着)合法的,0时,所述数据集表示的确认号码(确认号码)段不包含一条确认信息,确认号被忽略。

PSH:(Push功能),PUSH标志的数据,所请求的数据段可以直接发送给收件人得到应用,而无需等待,直到缓冲区满时传输。

RST:(复位该连接)是用来重置由于某种原因,连接所引起的误差,也可以被用来拒绝非法数据和请求。接收到RST位时,通常会出现一些错误。

SYN:(同步序列号)被用于建立一个连接,在连接请求中,SYN = 1,ACK = 0,连接响应时,SYN = 1,ACK = 1。也就是说,SYN和ACK来区分接受连接请求和连接。

FIN:(没有更多的数据从发送者)用来释放连接,发送者要发送的数据。

TCP协议连接的三次握手过程是这样的:

首先在连接请求中的所有客户端(请求方),发送一个SYN = 1,ACK = 0 TCP数据包发送到服务器端的(接收请求结束),报告的数据到客户端,服务器端同意此连接请求与服务器端建立连接,然后,如果服务器端响应这个连接,它返回一个SYN = 1,ACK =,并要求最终确认;最后一个客户端发送SYN = 0,ACK = 1的数据包到服务??器端,以确认连接的建立。

使用这些标志和TCP协议连接的三次握手扫描探针的特点。

SYN扫描,这种扫描模式也被称为“半开放”扫描,因为使用TCP协议连接的第一步,而不是一个完成TCP连接。

方法来完成,这是唯一的端口连接到远程主机发送一个包含SYN标志的TCP数据包到主机反馈一个SYN | ACK包,然后在主机上监听的端口,如果反馈RST包主机没有在该端口上侦听。有SYN X扫描器选项。发送一个ACK标志

ACK扫描TCP数据报的主机,如果主机反馈一个TCP RST数据包,则该主机是存在。也可以使用这种技术来确定的其他防火墙是一个简单的包过滤,基于状态的防火墙。

FIN

端口发送一个TCP FIN数据报发送到远程主机。如果主机没有任何反馈,那么主机是存在的,并且正在监听此端口的主机反馈一个TCP RST回来,那么主机是存在的,但没有听到这个端口。

NULL

发送一个TCP数据包,根据RFC793,没有标志的目标主机的相应端口是关闭的,它应该发送一个RST数据包。

FIN + URG + PUSH

FIN,URG和PUSH包发送到目标主机,根据RFC793,如果目标主机的相应端口是关闭的,那么它应该返回一个RST国旗。

上面的方法可以绕过一些防火墙防火墙后面的主机,当然,不是被欺骗了。这些方法的另一个优点是比较困难的某种方式被记录下来,甚至在netstat命令也根本显示不出来,一般的安全设备不记录这些,所以能够更好地隐藏自己。

先进的UDP扫描技术

扫描UDP的实现,是一个组合的使用,和ICMP的ICMP提到。有一些特殊的UDP反馈,如SQL SERVER,端口发送它的1434“X02”或“X03”能够检测到它的端口。本回答被提问者采纳