网络安全·第四天·扫描工具Nmap的运用

今天我们要介绍网络安全中常用的一种扫描工具Nmap,它被设计用来快速扫描大型网络,主要功能包括主机探测、端口扫描以及版本检测,小编将在下文详细介绍Nmap相应的命令。

Nmap的下载安装地址为:Nmap: the Network Mapper - Free Security Scanner

一、在线主机探测

首先我们打开cmd,通过ipconfig命令,查找自己的主机在哪一个网段

复制代码
ipconfig

发现子网掩码为255.255.255.0,说明本网段CIDR要以"/24"结尾,路由器网关为192.168.4.1,所以我们可以通过扫描192.168.4.1/24网段来了解自己所在的局域网有哪几台主机,分别是哪几台主机在线。

复制代码
nmap 192.168.4.1/24 -sL
nmap 192.168.4.1/24 -sn

本质上都是在通过ping判断主机是否在线,不过这两条命令还是有所区别的,-sL的这条命令是把所有的可能都列举一遍,然后再说明是否在线,如下图所示,它列举了从192.168.4.0到192.168.4.255的所有IP地址,并在后面注释了该主机是否在线,也说明了192.168.4.1是网关。

个人更推荐第二种检测局域网内在线主机的方式,也就是-sn的这条命令,它不会把所有的可能都列举出来,它只显示在线的是哪15台主机,他们的MAC地址和IP地址分别是啥,如下图所示:

二、端口扫描

端口扫描的目的为确定在目标主机哪些TCP、UDP端口可访问,而确定端口后,我们也可以知道主机开启了哪些服务进程。

1、特定主机扫描

例如我们要扫描IP地址为192.168.4.119的主机的端口,我们只需要输入命令:

复制代码
nmap 192.168.4.101

端口扫描结果如下,发现该主机享受了http、https等服务:

2、特定主机端口扫描

通过该命令可以知道某台主机的某端口或者某个范围内的端口是否开放:

复制代码
nmap 192.168.4.101 -p 80  //扫描该主机的80号端口是否开放

发现80号端口是开放的,享受http服务:

复制代码
nmap 192.168.4.101 -p 80-500  //扫描该主机的80-500号端口是否有开放的

发现该范围内80号端口以及443号端口是开放的:

3、TCP端口扫描原理与命令

①RST报文

其中RST报文用于复位因某种原因引起出现的错误连接,也用来拒绝非法数据和请求。如果接收到RST位时候,通常发生了某些错误;

②全连接扫描

这种扫描的思想很简单,如果目标端口是开放的,那么在接到主机端口发出的SYN请求之后,就会返回一个SYN+ACK回应,表示愿意接受这次连接的请求,然后主机端口再回应一个ACK,这样就成功地和目标端口建立了一个TCP连接。

如果目标端口是关闭的,那么在连接到主机端口发出的SYN请求之后,就会返回一个RST回应,表示不接受这次连接的请求,这样就中断了这次TCP连接。

其在Nmap中的命令为 :

复制代码
nmap 192.168.4.101 -p 80 -sT

③半连接扫描

与全连接扫描相比,如果目标端口是开放的,那么在接到主机端口发出的SYN请求之后,就会返回一个SYN+ACK回应,表示愿意接受这次连接的请求,但是客户端不会回传ACK建立连接,而是会返回RST。

如果目标端口是关闭的,那么在连接到主机端口发出的SYN请求之后,就会返回一个RST回应,表示不接受这次连接的请求,这样就中断了这次TCP连接。

不论端口是否开放,在这次扫描中,都不能完整建立连接,主机也是通过三次握手中的前两次握手判断是否开放,所以从速度上来说,半连接扫描比全连接扫描更快速。

复制代码
nmap 192.168.4.101 -p 80 -sS

④隐蔽扫描

向目标主机端口发送FIN包,如果端口关闭,则会返回RST包;如果端口打开,则没有任何返回。通过是否收到RST包来判断端口的开闭。

复制代码
nmap 192.168.4.101 -p 80 -sF

隐蔽扫描在三类TCP端口扫描的方法中是耗时最长的,但同样的,他的隐蔽性却是最优秀的。

4、端口状态概览

状态:open 含义:应用程序正在该端口接收TCP连接或者UDP报文

状态:closed 含义:应用程序正在该端口没有接收TCP连接或者UDP报文

状态:filtered 含义:由于包过滤阻止探测报文到达端口, Nmap无法确定该端口是否开放

状态:unfiltered 含义:端口可访问,但是Nmap无法确定该端口是否开放

三、版本检测

例如,我们要查IP地址为192.168.4.101的http的版本,可输入以下命令:

复制代码
nmap 192.168.4.101 -p -80 -sV

可以发现,与nmap 192.168.4.101 -p -80的结果相比,多了一列名为VERSION的列,揭示了该主机http的版本。

好的,本篇博客就到此为止了,如果你觉得小编的博客对你有所帮助,请给博主一个小小的点赞吧!

相关推荐
Zach_yuan1 小时前
深入浅出 JSONCpp
linux·服务器·网络·c++
桌面运维家2 小时前
vDisk安全启动策略怎么应用?防止恶意引导攻击
安全
我是一只puppy2 小时前
使用AI进行代码审查
javascript·人工智能·git·安全·源代码管理
迎仔3 小时前
B-算力中心网络隔离的必要性:为什么必须隔离?
网络
野指针YZZ4 小时前
一键配置RK3588网络与SSH远程连接
网络·ssh·rk3588
白帽子凯哥哥4 小时前
湖南网安基地:国家级实战化网安人才培养的“黄埔军校”
web安全·信息安全·零基础·渗透测试·安全服务
迎仔4 小时前
10-网络安全监控与事件响应:数字世界的智能监控与应急系统
网络·安全·web安全
上海合宙LuatOS5 小时前
LuatOS核心库API——【audio 】
java·网络·单片机·嵌入式硬件·物联网·音视频·硬件工程
深圳市恒星物联科技有限公司6 小时前
水质流量监测仪:复合指标监测的管网智能感知设备
大数据·网络·人工智能
科技块儿6 小时前
2026年我会推荐哪些IP归属地查询网站?
网络·ip地址·ip归属地·运维工具·网络工具·实用网站·2026工具推荐