title: 信息收集之识别活跃的主机并查看打开端口
tags:
  - 信息收集
  - 识别活跃主机
categories:
  - 网络安全
top_img: false
cover: '/upload/cdn2files/20200805145843.png'
abbrlink: 6382687a
date: 2020-05-16 14:39:00
updated: 2020-05-17 15:53:25
copyright:

网络映射器工具Nmap

Nmap是一个免费开放的网络扫描嗅探工具包,也叫网络映射器。其主要功能有三个:一是探测一组主机是否在线;其次是扫描主机端口,嗅探所提供的网络服务;三是可以推断主机使用的操作系统。

Nmap使用TCP/IP协议栈指纹准确的判断目标主机的操作系统类型,首先Nmap对目标主机进行端口扫描,找出哪些端口正在目标主机上监听。

Nmap的工作原理

测试描述
T1发送TCP数据包(Flag=SYN)到开放的TCP端口上
T2发送一个空的TCP数据包到开放的TCP端口上
T3发送TCP数据包(Flag=SYN、URG、PSH、FIN)到开放的TCP端口上
T4发送TCP数据包(Flag=ACK)到开放的TCP端口上
T5发送TCP数据包(Flag=SYN)到关闭的TCP端口上
T6发送TCP数据包(Flag=ACK)到关闭的TCP端口上
T7发送TCP数据包(Flag=URG、PSH、FIN)到关闭的TCP端口上

Nmap对目标主机进行一系列测试,利用得出的测试结果建立相应目标主机的Nmap指纹。最后,将此Nmap指纹与指纹库中的指纹进行查找匹配,从而得出目标主机的操作系统类型。

Nmap主要扫描类型如下:

Ping扫描端口扫描
TCP SYN扫描UDP扫描
操作系统识别隐藏扫描

使用Nmap识别活跃主机

查看一个主机是否在线

nmap -sP [目标地址]

输出的信息中包含目标主机域名、主机在线和MAC地址等。也可以使用:

nping --echo-client "public" echo.[目标地址]

输出的信息显示了与echo.nmap.org网站链接时的数据发送情况,用户也可以发送一些指定的十六进制数据到指定端口:

nping -tcp -p 445 -data [数据内容] [目标地址]

输出的信息显示了主机与目标主机之间的TCP传输过程,通过发送数据包到指定端口模拟出一些常见的网络层攻击,以验证目标主机对这些测试的防御情况。

TCP端口扫描工具Nmap

查看目标开放端口号:

nmap [目标地址]

指定扫描1-1000之间的端口号

nmap -p 1-1000 [目标地址]

扫描特定端口:

例如扫描指定网段192.168.31.*内所有开放22端口的主机:

nmap -p 22 192.168.31.*

指定扫描结果输出格式

nmap -p 22 192.168.31.* -oG /home/test.txt

图形化工具Zenmap

Zenmap是NMAP官方推出的基于Nmap的安全扫描图形用户界面,它的设计目标是快速扫描大型网络。

注:kali2020.1版本不自带Zenmap工具了,使用apt安装也无法安装,所以这里附上安装步骤

下载RPM包:https://nmap.org/download.html

安装RMP转DEB工具:

sudo apt-get install alien fakeroot

安装依赖:

sudo apt-get install alien fakeroot --fix-missing

转换包rpm->deb:

fakeroot alien zenmap-7.80-1.noarch.rpm

安装deb包:

dpkg -i zenmap_7.80-2_all.deb

安装成功,如果碰到如下报错:

改一下环境变量:

export PATH=/usr/loca/sbin:/usr/sbin:/sbin:$PATH

安装成功

回到正题,打开Zenmap:

直接输入目标地址,开始扫描:

很多信息都能被扫描出来。