作网络探测,你可真正了解nmap工具的原理?

发表于:2022-12-08 09:47

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:佚名    来源:知乎

#
Nmap
分享:
  一、NMAP工具介绍
  NMAP是一款用于网络发现和安全审计的网络安全工具,它是自由软件。
  可以同时支持TCP、ICMP协议的探测方式,但我们是否只是停留在简单使用,也就是是一知半解。看完这篇文章,大家应该会明白很多。
  二、分析nmap
  1、安装二、NMAP工具扫描
  yum install nmap
  2、按照如下方式执行扫描
  nmap -n -sP -PE 192.168.8.0/24
  Warning: You are not root -- using TCP pingscan rather than ICMP
  Starting Nmap 6.47 ( http://nmap.org ) at 2017-11-26 13:41 CST
  Nmap scan report for 192.168.8.198
  Host is up (0.025s latency).
  Nmap scan report for 192.168.8.104
  Host is up (0.00018s latency).
  Nmap scan report for 192.168.8.111
  Host is up (0.024s latency).
  Nmap done: 256 IP addresses (3 hosts up) scanned in 14.67 seconds
  3、参数讲解
  nmap默认使用:
  如果用户使用命令 nmap 9.123.239.101-120进行默认的主机扫描,Nmap 会发送一个 ICMP echo 请求,一个 TCP SYN 包给 443 端口,一个 TCP ACK 包给 80 端口和一个 ICMP 时间戳请求,这就等价于使用命令 nmap -PE -PS443 -PA80 -PP 9.123.239.101-120
  "-n" 不解析主机名
  “-PE”命令,缺省情况下,Nmap给每个主机发送ping echo包,和多个nmap库中可以探测的TCP syn包,主机对任何一种的响应都会被Nmap得到。
  注:我们会发现在服务端,抓包有很多请求过来,都是用了各种nmap中的数据探测。
  客户端执行:
  nmap -PE 192.168.8.198
  服务端用tcpdump抓包:
  tcpdump -i eth0 src host 192.168.6.54
  tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
  listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
  07:42:50.561578 ARP, Request who-has 192.168.8.198 (Broadcast) tell 192.168.6.54, length 46
  07:42:50.621406 IP 192.168.6.54.38994 > 192.168.8.198.https: Flags [S], seq 1227532920, win 1024, options [mss 1460], length 0
  07:42:50.621418 IP 192.168.6.54.38994 > 192.168.8.198.ddi-tcp-1: Flags [S], seq 1227532920, win 1024, options [mss 1460], length 0
  07:42:50.621426 IP 192.168.6.54.38994 > 192.168.8.198.h323hostcall: Flags [S], seq 1227532920, win 1024, options [mss 1460], length 0
  07:42:50.621452 IP 192.168.6.54.38994 > 192.168.8.198.blackjack: Flags [S], seq 1227532920, win 1024, options [mss 1460], length 0
  07:42:50.621453 IP 192.168.6.54.38994 > 192.168.8.198.netbios-ssn: Flags [S], seq 1227532920, win 1024, options [mss 1460], length 0
  07:42:50.621461 IP 192.168.6.54.38994 > 192.168.8.198.256: Flags [S], seq 1227532920, win 1024, options [mss 1460], length 0
  07:42:50.621465 IP 192.168.6.54.38994 > 192.168.8.198.sunrpc: Flags [S], seq 1227532920, win 1024, options [mss 1460], length 0
  07:42:50.621497 IP 192.168.6.54.38994 > 192.168.8.198.pop3: Flags [S], seq 1227532920, win 1024, options [mss 1460], length 0
  “-sP” 命令,发送一个arp广播包请求,是ping echo检查,但是不会发包ICMP、TCP协议数据包给服务端,所以非常的轻量。
  nmap -sP 192.168.8.198
  服务端,通过dump抓包发现:
  tcpdump -i eth0 src host 192.168.6.54
  tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
  listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
  07:38:46.712390 ARP, Request who-has 192.168.8.198 (Broadcast) tell 192.168.6.54, length 46
  并且在服务端机器上关闭ICMP协议,方式如下:
  echo 0 >/proc/sys/net/ipv4/icmp_echo_ignore_all
  我们再次执行仍然可以扫描发现主机为up状态,足以说明nmap得ping探测,并非ping命令IMCP协议方式探测。
  $ nmap -sP 192.168.8.0/24
  Warning: You are not root -- using TCP pingscan rather than ICMP
  Starting Nmap 6.47 ( http://nmap.org ) at 2017-11-26 13:41 CST
  Nmap scan report for 192.168.8.198
  Host is up (0.025s latency).
  Nmap scan report for 192.168.8.104
  Host is up (0.00018s latency).
  Nmap scan report for 192.168.8.111
  Host is up (0.024s latency).
  Nmap done: 256 IP addresses (3 hosts up) scanned in 14.67 seconds
  三、结论
  结论1、nmap虽然扫描类型种类多,但作为局域网扫描,我们真正应该掌握的是-sP -PE结合的使用,因为大部分场景已经满足。
  结论2、-sP效率非常的块,比ICMP的协议还快。
  结论3、官方说的ICMP、ping扫描,并不是我们常常理解的ICMP(因为我们常常理解得非常狭义)-sP 比通过ping探测更有效率,-PE比telnet端口探测更有效率。
  这样得结论来看,很多网上得资料描述大都带偏了大家,大爱nmap工具了。
  看完我的文章大家是否有理解!
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号