与 IPv4 一起使用时出现奇怪的错误“(22 - '无效参数')”

与 IPv4 一起使用时出现奇怪的错误“(22 - '无效参数')”

我有“(22 - '无效参数')”使用nmap.我用谷歌搜索并得到了https://seclists.org/nmap-dev/,但那是在讨论 IPv6,而我在使用 IPv4 时遇到了此错误。它没有提到 IPv4,那为什么我会收到这个奇怪的错误呢?

我进入了:

$ nmap --send-eth --release-memory --nsock-engine=epoll --allports --fuzzy \
     --randomize-hosts --log-errors  --max-os-tries=9 -n --reason          \
     --append-output --scanflags=URGACKPSHRSTSYNFIN --max-retries=6        \
     --host-timeout=225s --stats-every=10m --ttl=255 --min-hostgroup=5 .   \
     --max-hostgroup=25 --max-rtt-timeout=60s --scan-delay=250ms .         \
     --max-scan-delay=25s --stats-every=1 -v5 -sT -sV -A -p 80-82          \
     0.18.0.0

并得到这个结果:

Starting Nmap 7.70 ( https://nmap.org ) at 2019-01-17 16:05 CET
NSE: Loaded 148 scripts for scanning.
NSE: Script Pre-scanning.
NSE: Starting runlevel 1 (of 2) scan.
Initiating NSE at 16:05
Completed NSE at 16:05, 0.00s elapsed
NSE: Starting runlevel 2 (of 2) scan.
Initiating NSE at 16:05
Completed NSE at 16:05, 0.00s elapsed
Initiating Ping Scan at 16:05
Scanning 0.18.0.0 [2 ports]
Stats: 0:00:01 elapsed; 0 hosts completed (0 up), 1 undergoing Ping Scan
Ping Scan Timing: About 0.00% done
Strange read error from 0.18.0.0 (22 - 'Invalid argument')
Strange read error from 0.18.0.0 (22 - 'Invalid argument')
Completed Ping Scan at 16:05, 0.50s elapsed (1 total hosts)
NSE: Script Post-scanning.
NSE: Starting runlevel 1 (of 2) scan.
Initiating NSE at 16:05
Completed NSE at 16:05, 0.00s elapsed
NSE: Starting runlevel 2 (of 2) scan.
Initiating NSE at 16:05
Completed NSE at 16:05, 0.00s elapsed
Read data files from: /usr/bin/../share/nmap
Note: Host seems down. If it is really up, but blocking our ping probes, try -Pn
Nmap done: 1 IP address (0 hosts up) scanned in 1.46 seconds

当尝试使用更少的参数时nmap -p 80-82 0.18.0.0 得到:

Starting Nmap 7.70 ( https://nmap.org ) at 2019-01-17 16:24 CET
Strange read error from 0.18.0.0 (22 - 'Invalid argument')
Strange read error from 0.18.0.0 (22 - 'Invalid argument')
Note: Host seems down. If it is really up, but blocking our ping probes, try -Pn
Nmap done: 1 IP address (0 hosts up) scanned in 0.12 seconds

当我尝试时ncat得到:

$ nc -vvv 0.18.0.0 80
0.18.0.0: inverse host lookup failed: Unknown host
(UNKNOWN) [0.18.0.0] 80 (http) : Invalid argument
 sent 0, rcvd 0

$ nc -vvv 0.18.0.0 81
0.18.0.0: inverse host lookup failed: Unknown host
(UNKNOWN) [0.18.0.0] 81 (hosts2-ns) : Invalid argument
 sent 0, rcvd 0

我仍然有“无效参数”,但这次我得到的是邮政号码和服务,而不是 22:

80 (http)
81 (hosts2-ns)

这提出了几个问题:

  1. ncat和的“无效论证”是否nmap与同一件事有关?
  2. 我怎样才能提供nmap信息而不是打印 22?
  3. 我怎么能说远程端口确实是关闭的,还是真的是开放的并且由于防火墙而拒绝?

答案1

地址0.18.0.0(分别。0.0.0.0/8) 不允许作为标准™ 的目标 IP 地址:

RFC 6890:

2.2.2. IPv4 特殊用途地址注册表项


下面的表 1 至表 16 代表了 IANA最初填充 IPv4 特殊用途地址注册表的条目。

          +----------------------+----------------------------+
          | Attribute            | Value                      |
          +----------------------+----------------------------+
          | Address Block        | 0.0.0.0/8                  |
          | Name                 | "This host on this network"|
          | RFC                  | [RFC1122], Section 3.2.1.3 |
          | Allocation Date      | September 1981             |
          | Termination Date     | N/A                        |
          | Source               | True                       |
          | Destination          | False                      |
          | Forwardable          | False                      |
          | Global               | False                      |
          | Reserved-by-Protocol | True                       |
          +----------------------+----------------------------+

                Table 1: "This host on this network"

因此0.0.0.0/8因此0.18.0.0没有有效的目标地址,因此内核返回EINVALID尝试将其用作目标的套接字操作。

提示:您可能想使用RFC 1918您本地管理的网络的地址。

相关内容