nmap的简单使用

主机探测

1.扫描单个主机

nmap 192.168.1.2

2.扫描整个子网

nmap 192.168.1.1/24

3.扫描多个目标

nmap 192.168.1.1 192.168.1.1.5

4.扫描一个范围内的目标

nmap 192.168.1.1-100

5.如果有一个全是ip地址的txt文件,这个文件在你的nmap目录下,则可以这样子操作

nmap -iL 这个文件的名字.txt 

6.如果想看到你扫描的所有主机的列表

nmap -sL 192.168.0.1/24

7.扫描时略过某些ip或文件,加上-exclude

nmap 192.168.1.1/24 -exclude 192.168.1.5

nmap 一个文件.txt -exclude 想要略过的文件.txt

 

端口扫描

1.常用命令

namp -F -sT -v namp.org

  -F:扫描100个最有可能开放的端口

  -v:获取扫描的信息

  -sT:采用的时TCP扫描,不写也可以,默认为TCP扫描

  -p:指定要扫描的端口(如namp -p80,22,23 192.168.6.1)

  较为实用的:nmap -iL 1.txt -p 1-65535 -Pn -sS

       扫描一个文件里的ip的65535个端口 要采取隐蔽式扫描 ,跳过主机存活发现 ,半连接式扫描

  在使用nmap时,先用masscan扫存活端口 再用nmap识别端口服务。masscan -iL 1.txt -p 1-65535 -oJ masscan.json --rate 2000     提取出存活的端口,再用nmap扫描端口服务

端口状态分为6种:

Open:端口处于开放状态

Closed:端口处于关闭状态

Filtered(过滤的):由于报文无法到达指定的端口,nmap不能够决定端口的开放状态,这主要是由于网络或者主机安装了一些防火墙所导致的。当nmap收到icmp报文主机不可达报文

Unfiltered(未被过滤的),当nmap不能确定端口是否开放的时候所打上的状态,这种状态和filtered的区别在于:unfiltered的端口能被nmap访问,但是nmap根据返回的报文无法确定端口的开放状态,而filtered的端口直接就没就没能够被nmap访问。端口被定义为Unfilterd只会发生在TCP ack扫描类型时当返回RST的报文。而端口被定义为filtered 状态的原因是是报文被防火墙设备,路由器规则,或者防火墙软件拦截,无法送达到端口,这通常表现为发送NMAP的主机收到ICMP报错报文,如:TYPE为3,code为13的报文

Open|filtered状态,这种状态主要是nmap无法区别端口处于open状态还是filtered状态。这种状态只会出现在open端口对报文不做回应的扫描类型中

Closed|filtered状态,这种状态主要出现在nmap无法区分端口处于closed还是filtered时

参考:https://blog.csdn.net/m0_37268841/article/details/80234365

扫描方式

TCP(-sT)和SYN(-sS)

  -sS    

  优点:Nmap发送SYN包到远程主机,但是它不会产生任何会话,目标主机几乎不会把连接记入系统日志。(防止对方判断为扫描攻击),扫描速度快,效率高,在工作中使用频率最高    

  缺点:它需要root/administrator权限执行

 

-sT

优点:你勿需root权限。普通用户也可以使用。    

缺点:这种扫描很容易被检测到,在目标主机的日志中会记录大批的连接请求以及错误信息,由于它要完成3次握手,效率低,速度慢,建议使用-sS

  2.UDP ping探测主机:

    nmap -PU 192.168.1.0/24

  3.服务器版本探测

    nmap -sV 192.168.1.1

  4.精准确认端口上运行的服务

    nmap -sV --script unusual -port 192.168.1.1

  5.探测主机操作系统

    nmap -O 192.168.1.19

    nmap -A 192.168.1.19

  6.导出扫描结果

     用关键字-oN和-oX

 

 

 

 

 

 

 

另外:

使用这个命令,可以抵御一次攻击

nmap -sT -A localhost           

 

posted @ 2019-07-20 21:50  This_is_Y  阅读(886)  评论(0编辑  收藏  举报