第04课:Nmap

第04课:Nmap 扫描

本课旨要:学习使用 Nmap 进行目标信息收集,为后面的渗透测试做准备。

做渗透测试的第一步,就应该是收集信息,无论是主动式的还是被动式的,目标的软硬件信息都应该收集好,以便进行下一步的渗透测试。

本次的主角,Nmap。

Nmap

Nmap 作为一款渗透测试工具可以说是非常非常非常的强,它是一款网络扫描和主机扫描的综合性工具,它的作用不仅仅是收集信息,同时还可以增加脚本来作为一个漏洞扫描器,同时它支持 Windows、Linux、Mac 系统。

Nmap 支持的功能

它支持:

  • 检测活在网络上的主机(主机发现);
  • 检测主机上开放的端口(端口发现或枚举);
  • 检测到相应的端口(服务发现)的软件和版本;
  • 检测操作系统,硬件地址,以及软件版本;
  • 检测存在的的漏洞(Nmap 的脚本)。

Nmap 做扫描,给我的感觉可以说是诸神之眼的效果了。接下来详细介绍一下 Nmap 的各个命令参数。

单一性扫描

nmap www.csdn.net
nmap 47.95.46.116

enter image description here

可以看到扫描的目标“www.csdn.net"开启了 80 端口和 443 端口,分别是 HTTP 和 HTTPS 服务。

扫描网段信息

扫描整个网段,命令如下:

nmap 47.95.46.116/24

扫描指定网址上的端口,命令如下:

nmap -p80 116.211.168.38

enter image description here

Tcp SYN Scan

这是一个基本的扫描方式,它被称为半开放扫描,因为这种技术使得 Nmap 不需要通过完整的握手,就能获得远程主机的信息。Nmap 发送 SYN 包到远程主机,但是它不会产生任何会话,因此不会在目标主机上产生任何日志记录,因为没有形成会话。这个就是 SYN 扫描的优势,最大的作用就是不留痕,无日志。

因为 Nmap 的扫描都比较简单,所以不是重点我就不会放图了。

命令如下:

nmap -sS 192.168.1.1

Tcp Connect Scan

如果不选择 SYN 扫描,TCP Connect() 扫描就是默认的扫描模式,不同于 Tcp SYN 扫描,Tcp Connect() 扫描需要完成三次握手,并且要求调用系统的 connect().Tcp connect() 扫描技术只适用于找出 TCP 和 UDP 端口。

命令如下:

nmap -sT 192.168.1.1

FIN Scan

这种扫描模式则是绕过防火墙等一些设备,使用 FIN 扫描。

nmap -sF 192.168.1.1

版本检测扫描

这种扫描方式用来扫描目标主机和端口上运行的软件的版本,命令如下:

nmap -sV 192.168.1.1

OS 扫描

Nmap 使用 OS 扫描的时候,可以获得目标操作系统和软件信息的。

nmap -O 192.168.1.1

enter image description here

可以看上图,操作系统都是被扫出来的,功能原理是 Nmap 是先发现开发的端口,然后发送数据包到目标再返回操作系统信息。

以上就是渗透测试过程中我个人经常用的扫描命令,另外 Nmap 的安装目录下还有脚本扫描,这些我并没有在这里写出来。

更多详情请参阅 Nmap 中文手册

上一篇
下一篇
内容互动
写评论
加载更多
评论文章