Nmap高级技术与防御措施(nmap穿透防火墙)

网友投稿 529 2022-10-08


Nmap高级技术与防御措施(nmap穿透防火墙)

Nmap网络安全审计(五)

Nmap的高级技术与防御措施

Nmap的伪装技术

大部分人认为,Nmap中不应该提供逃避防火墙规则和欺骗IDS的功能。但是很多安全工具都已经提供了这些功能,因此Nmap中包含这些功能可以帮助网络管理员增强安全性。Nmap不提供检测和破坏防火墙及IDS系统专门工具和选项,但是却提供了相关技术。

Nmap -f 目标 使用 -f 选项可以对Nmap发送的探测数据包进行分段。这样将原来的数据包分为几个部分,目标网络的防御机制如包过滤,防火墙等在对这些数据包进行检测的时候就会变得更加困难。另外必须谨慎使用这个选项,一些比较老的系统在处理分段的包时会经常出现死机的情况。

nmap -f 192.168.0.103

在这里想要看的更直观一些的话,我们可以通过抓包工具对这个步骤进行抓包。我们就会发现大量的数据包上面都含有 Fragmented IP protocol 的标志。这个标志就说明这些数据包都是分段的报文。我们在检测结果中可以发现有一个warning的提示,这个提示说明我们刚才所演示的功能可能在windows下无法正常工作。

-mtu(使用指定的MTU) MTU(最大输出单元)是指一种通信协议的某一层上面所能通过的最大数据包大小。一般来说,以太网的MTU值默认是1500 bytes,这个含义就是指当发送者的协议高层向IP层发送了长度为2008 bytes数据报文,则该报文再添加20 bytes的IP包头后,IP包的总长度是2028 bytes。为2028大于1500,因此该数据报文就会被分片。在Nmap中使用 -mtu 参数可以指定MTU的大小。这里 MTU 的值必须是8的整数倍。

nmap --mtu 16 192.168.0.103

因为我这里的windows没有操作成功我这里就暂时不贴图了。在这里我们同样使用抓包工具查看,我们会发现每个发送的数据包大小都被修改成了16bytes。

-D (使用诱饵主机隐蔽扫描) 通常在对目标进行扫描时,有可能会被发现。一个比好用的方法就是同时伪造大量的主机地址对目标进行扫描,这是目标主机及时发现了有人正在进行扫描,但是由于扫描数据包来自于多个主机,即使是IDS也只能知道目前正在被扫描,并不知道到底是哪台主机在进行扫描。这是一种常用的隐蔽自身IP的技术。 Nmap中支持使用诱饵主机,在扫描时,使用选项-D来指定诱饵主机,使用逗号分隔每个诱饵IP地址,也可以使用自己的真实IP做为诱饵,自己的ip地址可以使用ME选项。如果在第六个位置和更后的位置使用ME选项,一些常用的端口扫描检测器就不会报告这个真实IP。如果不使用ME选项,Nmap将真实IP放在一个随机位置。 作为诱饵的主机,必须处于工作状态中,否则这次扫描就可能变成SYN FLOOD,也就是我们常说的DDoS。如果网络中只有一台主机在工作,无论你产生多少个诱饵,都是这一台主机在扫描。 在我们之前讲到的Ping扫描(ICMP、SYN、ACK等)阶段或真正的端口扫描。以及远程操作系统检测阶段,都可以使用诱饵主机选项。但是在进行版本检测或TCP连接扫描时,诱饵主机选项是不能使用的。 我们用这条命令来进行测试,在参数-D 后面加上RND:10 表示产生十台诱饵主机。(产生的诱饵主机的数量越多,会导致扫描变慢,而且结果不准确。)

nmap -D RND:10 192.168.0.103

这个时候我们使用抓包工具进行抓包检测的话,我们就可以发现很多源地址不一样的数据包发送。

5.--date-length (发送报文时附加随机数据)

默认情况下,Nmap发送到报文中只包含头部,内容部分是空的。,因此,TCP的数据包大小只有40字节,而ICMP ECHO请求只有28字节。我们在之前也讲到这种空的报文,很容易被网络中检测机制发现,所以在试图通过这些网络的检测机制时,可以在数据包上附加指定数量的随机字节,这个选项会使得大部分Ping和端口扫描变慢,但是影响并不大。使用 --data-length 指定为25

nmap --data-length 25 192.168.0.103

想要进一步查看是否更改成功的话,还需要通过抓包软件。在抓包软件中可以看到发送出去的数据包的data部分的长度是25字节。

TCP Connect扫描的检测

这个TCP Connect扫描之前说过,这里就不再多写了,算了还是写上吧...

TCP Connect扫描是一种最为基本的扫描方式。Nmap向一个开放的端口发起了连接请求,并且完成三次握手,之后结束了这次连接。这种扫描很容易被检测到,因为Nmap会向每一个目标端口发送一个数据包。如果该端口是关闭的,目标会回复一个RST和ACK标志位的数据包。如果该端口是开放的,目标会回复一个设置了SYN/ACK标志位的数据包。然后Nmap会发送一个设置了ACK标志位的数据包来完成三次握手,在这个过程中会产生大量错误消息。 下面来测试分析一下这个实验,我这里使用物理机192.168.126.1去扫描虚拟机192.168.126.139 我们可以看到这段时间内有大量的TCP Connect活动出现,如此频繁地对大量TCP端口发起连接很可能意味有人正在对你的主机进行扫描。如果网络中部署了网络检测设备,当达到一定的阈值时就会报警。

操作系统扫描的防范

当维护一个网络的时候,最简单的办法无非为系统及时打上补丁,及时安装更新等。但是真正这样并不能阻止他人的扫描,最好增加防火墙之类的安全设备。另外,Morph和IP Personality两款软件也是极为优秀的防护软件。防范网络中进行的操作系统扫描,最好的办法就是提供虚假的信息来迷惑对方,可以使用上述两个软件。具体的我也没用过,感兴趣的可以自己下一下试试。

问题

应该没啥大问题,这个环节主要是需要Nmap配合wireshake进行使用,这样实验的效果会更明显,理解起来也有帮助。

为什么最后一点才贴wireshake的图,因为我懒的贴图。 过段时间会更新wireshake的用法和操作 文章可能有的地方写的比较多,什么TTL,ACL这种基础的网络知识其实都不想写,就当给自己复习了。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SpringBoot项目部署在weblogic中间件的注意事项说明
下一篇:远程操作系统与服务检测技术(远程验收系统)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~