nmap学习笔记

一、目标设置

显示版本

nmap --version

显示版本,一般用于验证是否安装正确。

单个目标

nmap <ip>

例如:

nmap 10.73.31.74

扫描指定ip。

nmap nmap.org

当然也可以扫描指定的域名。

结果

结果有三列,第一列是端口列表,第二列是状态,第三列是开放的服务。

Starting Nmap 7.01 ( https://nmap.org ) at 2016-02-09 17:38 ?D1ú±ê×?ê±??
Nmap scan report for nmap.org (45.33.49.119)
Host is up (0.21s latency).
rDNS record for 45.33.49.119: ack.nmap.org
Not shown: 993 filtered ports
PORT      STATE  SERVICE
22/tcp    open   ssh
25/tcp    open   smtp
70/tcp    closed gopher
80/tcp    open   http
113/tcp   closed ident
443/tcp   open   https
31337/tcp closed Elite

多个目标

nmap <ip1> <ip2> ... <ipn>

扫描多个目标。nmap会把所有除了选项的命令行参数看做目标。

nmap a.b.c.d1,d2,d3

例如:

nmap 10.73.31.1,15,255

如果位于同一子网,也可以这样。多个目标的结果会依次列出。

范围

nmap a.b.c.d1-d2
nmap a.b.c.*

扫描范围内的目标。星号代表0~255。

可以将这两种表示方法组合使用,比如:

nmap 10.73.1-100.*

CIDR

nmap 10.73.31.1/24

当然也支持CIDR记法,再例如,nmap 192.168.1.1/24用于扫描你家路由器上都连了些什么。

读取文件

假设我们有list.txt文件,文件的内容是ip列表,一行一个。比如这样:

10.73.31.145
10.73.31.116

我们可以输入这条指令让nmap自动扫描:

nmap -iL list.txt

随机

nmap -iR 3

这代表nmap会随机扫描3个目标。你可以在无聊的时候使用-iR 1000 -p 80来寻找一些有趣的网站。

排除

使用--exclude选项来排除指定的ip。比如:

nmap 10.73.31.1/24 --exclude 10.73.31.1

也可以使用上面的范围标记法来排除范围内的ip。

--excludefile用于排除文件列表中的ip,文件的格式同上。

nmap 10.73.31.1/24 --excludefile list.txt

二、主机发现

无 ping

使用-PN(或-P0)来跳过主机发现的步骤。namp的默认流程不扫描离线的主机,即如果主机ping不通,则不对它进行下一步的端口扫描。

这个选项可用于强制扫描某个伪装成离线的主机。对于没有伪装的主机,扫描结果和不加完全一样,它只是提供了一种可选的方案。

only ping

-sP,仅仅进行主机发现,不进行接下来的端口扫描。一般用于发现指定网络上的主机,优点是非常快。

TCP SYN ping

-PS,使用半完成的TCP连接代替ICMP ping进行主机发现,优点是非常快。另外,如果目标主机禁止ICMP ping(很多主机都会这样),就可以用SYN ping 来代替。

默认使用80端口,但是可以通过-PS [portlist]来指定。

IP ping

-PO(注意是大写的O)选项进行IP协议的ping。IP协议ping用指定的协议发送一个包给目标。如果没有指定协议,默认的协议是 1 (ICMP), 2 (IGMP)和4 (IP-in-IP)。

其它嗅探选项

  • -PA [portlist] TCP ACK ping
  • -PU [portlist] UDP ping
  • -PY CTP ping
  • -PE ICMP ping(默认值)
  • -PP ICMP时间戳嗅探(用于传过防火墙保护)
  • -PM ICMP地址掩码嗅探
  • -PR ARP ping,扫描本地网络时非常快因为不可能被拦截,离开本地网络则无效

如果目标主机不返回任何信息,你可以各种变换嗅探选项。

路由追踪

--traceroute,这个选项非常帅,因为可以得到目标主机的一个路由地图。

比如说我拿nmap.org做个演示:

TRACEROUTE (using port 113/tcp)
HOP RTT       ADDRESS
1   0.00 ms   localhost (192.168.1.1)
2   0.00 ms   123.120.152.1
3   ...
4   0.00 ms   124.65.57.125
5   0.00 ms   124.65.194.53
6   42.00 ms  219.158.8.82
7   58.00 ms  219.158.11.34
8   48.00 ms  219.158.97.22
9   47.00 ms  219.158.104.106
10  327.00 ms 219.158.97.10
11  254.00 ms 12.119.9.49
12  268.00 ms cr84.la2ca.ip.att.net (12.122.129.122)
13  188.00 ms cr2.la2ca.ip.att.net (12.123.30.250)
14  187.00 ms ggr2.la2ca.ip.att.net (12.122.129.105)
15  516.00 ms 10ge2-18.core1.lax2.he.net (216.218.185.169)
16  217.00 ms 100ge8-2.core1.pao1.he.net (184.105.81.237)
17  270.00 ms 10ge4-4.core3.fmt2.he.net (184.105.222.89)
18  ...
19  300.00 ms ack.nmap.org (45.33.49.119)

反向DNS解析

-R用于为所有ip目标做反向dns解析。正向解析是默认的,但是反向不是。

比如说我ping nmap.org 得到了45.33.49.119

然后我nmap -R 45.33.49.119,结果中第二行会变成Nmap scan report for ack.nmap.org (45.33.49.119)

三、端口扫描

四、指纹识别

积极模式

注:官方文档翻译为“激烈”模式。个人觉得不是很好。

nmap -A <target>

这个选项启用额外的高级和高强度选项,它的内容目前还是未定义的。可以确定的是,它会打开OS探测-O和版本探测-sV,以后还会增加更多的功能。

posted @ 2016-02-19 10:00  绝不原创的飞龙  阅读(3)  评论(0编辑  收藏  举报  来源