信息收集之识别活跃的主机并查看打开端口
网络映射器工具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识别活跃主机
查看一个主机是否在线
1 | nmap -sP [目标地址] |
输出的信息中包含目标主机域名、主机在线和MAC地址等。也可以使用:
1 | nping --echo-client "public" echo.[目标地址] |
输出的信息显示了与echo.nmap.org网站链接时的数据发送情况,用户也可以发送一些指定的十六进制数据到指定端口:
1 | nping -tcp -p 445 -data [数据内容] [目标地址] |
输出的信息显示了主机与目标主机之间的TCP传输过程,通过发送数据包到指定端口模拟出一些常见的网络层攻击,以验证目标主机对这些测试的防御情况。
TCP端口扫描工具Nmap
查看目标开放端口号:
1 | nmap [目标地址] |
指定扫描1-1000之间的端口号
1 | nmap -p 1-1000 [目标地址] |
扫描特定端口:
例如扫描指定网段192.168.31.*内所有开放22端口的主机:
1 | nmap -p 22 192.168.31.* |
指定扫描结果输出格式
1 | 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工具:
1 | sudo apt-get install alien fakeroot |
安装依赖:
1 | sudo apt-get install alien fakeroot --fix-missing |
转换包rpm->deb:
1 | fakeroot alien zenmap-7.80-1.noarch.rpm |
安装deb包:
1 | dpkg -i zenmap_7.80-2_all.deb |
安装成功,如果碰到如下报错:
改一下环境变量:
1 | export PATH=/usr/loca/sbin:/usr/sbin:/sbin:$PATH |
安装成功
回到正题,打开Zenmap:
直接输入目标地址,开始扫描:
很多信息都能被扫描出来。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Ordis'Blog!
评论