Nmap介绍

Nmap介绍,第1张

Nmap介绍

1.Nmap介绍

Nmap用于列举网络主机清单、管理服务升级调度、监控主机或服务运行状况。


Nmap可以检测目标机是否在线、端口开放情况、侦测运行的服务类型及版本信息、侦测 *** 作系统与设备类型等信息。


1.1 Zenmap

Zenmap是Nmap官方提供的图形界面,通常随Nmap的安装包发布。


Zenmap是用Python语言编写而成的开源免费的图形界面,能够运行在不同 *** 作系统平台上(Windows/Linux/Unix/Mac OS等)。


Zenmap旨在为nmap提供更加简单的 *** 作方式。


以百度(www.baidu.com或61.135.169.125)为例,使用Zenmap

  • 显示主界面,填写目标地址

  • 显示扫描目标主机的端口号(80和443)

  • 拓扑

  • 目标主机的情况

对比Zenmap和命令模式下的不同:(使用nmap www.baidu.com或namp 61.135.121)

扫描得到的端口号都是一样的,命令行模式简单明了,时间短。


以下都使用命令模式 *** 作。


2.Nmap扫描的基本方法

Nmap主要包括四个方面的扫描功能,主机发现、端口扫描、应用与版本侦测、 *** 作系统侦测。


这里先介绍端口扫描。


红框内的内容是重要的

绿色内容表示有998个端口被屏蔽了,也就是说明了网站的防火墙是开启的,因为没有开启防火墙是不会对端口进行屏蔽的。


蓝色部分表示开放的端口号,状态,以及服务

2.1常见服务对应端口号:

服务 端口号 HTTP 80 HTTPS 443 Telnet 23 FTP 21 SSH(安全登录)、SCP(文件传输)、端口重定向 22 SMTP 25 POP3 110 WebLogic 7001 TOMCAT 8080 WIN2003远程登录 3389 Oracle数据库 1521 MS SQL* SEVER数据库sever 1433 MySQL 数据库sever 3306

2.2端口的状态有以下几种:

状态 详细的参数说明  Open  端口开启,数据有到达主机,有程序在端口上监控  Closed  端口关闭,数据有到达主机,没有程序在端口上监控  Filtered  数据没有到达主机,返回的结果为空,数据被防火墙或者是IDS过滤  UnFiltered  数据有到达主机,但是不能识别端口的当前状态  Open|Filtered  端口没有返回值,主要发生在UDP、IP、FIN、NULL和Xmas扫描中

 Closed|Filtered

 只发生在IP ID idle扫描

为什么要关注这些端口

2.3 使用的命令

nmap -F -sT -v www.baidu.com

-F:扫描100个最有可能开放的端口   -v 获取扫描的信息   -sT:采用的是TCP扫描 不写也是可以的,默认采用的就是TCP扫描

2.4 扫描方式

全连接扫描,三次握手防火墙能有效拦截,故很少使用 (产生大量日志,很少使用)
半链接扫描,三次握手前两次,源SYN 目标SYN/ACK 端口开放;源SYN 目标RST/ACK 端口关闭 (不记日志,隐蔽性好)
秘密扫描,发送FIN,返回RST (端口关闭,回复RST包;端口开放,不回复)

半链接扫描与叫做间接扫描
FIN扫描、Xmas扫描、Null扫描对Windows无效

nmap 类型 选项 目标

nmap -sT TCP扫描  全链接扫描
 nmap -sS SYN扫描  半链接扫描
 nmap -sF FIN扫描  秘密扫描 除SYN、ACK其它位置1
 nmap -sX Xmas扫描  秘密扫描 FIN、URG、PUSH位置1
 nmap -sN Null扫描 秘密扫描 标志位全为0,发送TCP分组
 nmap -sP ping扫描 同时使用ICMP和TCP ACK 80,返回RST说明主机运行(外网)
 nmap -sU UDP扫描  发送0字节UDP包,快速扫描Windows的UDP端口
 nmap -sA ACK扫描  TCP ACK扫描,当防火墙开启时,查看防火墙有未过虑某端口
 nmap -sW 滑动窗口扫描 
 nmap -sR RPC扫描
 nmap -b  FTP反d攻击(FTP Bounce attack) 外网用户通过FTP渗透内网
 nmap -P0 Nmap扫描前不Ping目标主机
 nmap -PT Nmap扫描前使用TCP ACK包确定主机是否在运行(-PT默认80)
 nmap -PS Nmap使用TCP SYN包进行扫描
 nmap -PI Nmap进行Ping扫描
 nmap -PB 结合-PT和-PI功能
 nmap -O  Nmap扫描TCP/IP指纹特征,确定目标主机系统类型
 nmap -I  反向标志扫描,扫描监听端口的用户
 nmap -f  分片发送SYN、FIN、Xmas、和Null扫描的数据包
 nmap -v  冗余模式扫描,可以得到扫描详细信息
 nmap -oN 扫描结果重定向到文件
 nmap -resume 使被中断的扫描可以继续
 nmap -iL -iL,扫描目录文件列表
 nmap -p  -p扫描端口列表,默认扫描1-1024端口和/usr/share/nmap/nmap-services文件中指定端口;
    -p例:23;20-30,139,60000-
 nmap -F  快速扫描模式,只扫描nmap-services文件中的端口
 nmap -D  欺骗扫描,可有效隐藏扫描者IP地址
 nmap -S  在欺骗扫描时,用来指定源主机IP
 nmap -e  指定从哪个网卡发送和接收数据包
 nmap -g  指定扫描源端口
 nmap -r  按顺序扫描端口

2.5 端口扫描

2.5.1 Tcp扫描(-sT)

这是一种全连接扫描方式之一,这种扫描方法的特点是:扫描的速度快,准确性高,对 *** 作者没有权限上的要求,但是容易被防火墙和IDS(防入侵系统)发现

运行的原理:通过建立TCP的三次握手连接来进行信息的传递

① Client端发送SYN;

② Server端返回SYN/ACK,表明端口开放;

③ Client端返回ACK,表明连接已建立;

④ Client端主动断开连接。


用wireshark对扫描过程进行抓包分析:(使用命令nmap -F -sT -v 61.135.169.121)

2.5.2 SYN扫描(-sS)

这是一种半链接的扫描方式之一,因为在SYN扫描中Client端和Server端没有形成3次握手,所以没有建立一个正常的TCP连接,因此不被防火墙和日志所记录,一般不会再目标主机上留下任何的痕迹,但是这种扫描是需要root权限(对于windows用户来说,是没有root权限这个概念的,root权限是linux的最高权限,对应windows的管理员权限)

运行的原理图如下:

对RST包的讲解请看:

https://my.oschina.net/costaxu/blog/127394

用wireshark对扫描过程进行抓包分析:(使用命令nmap -F -sS -v 61.135.169.121)

等了很长时间一直没抓到RST包。


2.5.3 ACK扫描(-sA)

ACK扫描的原理是发送一个ACK包给目标主机,不论目标主机的端口是否开启,都会返回相应的RST包,通过判断RST包中的TTL来判断端口是否开启

运行原理图:

TTL值小于64端口开启,大于64端口关闭

用wireshark对扫描过程进行抓包分析:(使用命令nmap -F -sA -v 61.135.169.121)

也没有抓到RST包。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/585969.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-12
下一篇 2022-04-12

发表评论

登录后才能评论

评论列表(0条)

保存