kali linux 主动扫描

4 主动扫描   

注意:
1、保证所有主机(Kali2和靶机)都接到NAT,是在同一个网段,192.168.137.0/24
2、所有主机设置为自动获取IP参数,即DHCP模式。
3、靶机关闭防火墙,否则有些端口无法扫描。

本地主机为kali linux 2024版:地址为192.168.137.10/24

我这里自动获取到的IP地址为:
第一台靶机 Windows 7 32位的IP地址:192.168.137.161/24
第二台靶机linux centOS 7IP地址:192.168.137.237/24
Nmap,即Network Mapper,是Linux下的网络扫描和嗅探工具包。一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。它是网络管理员必用的软件之一,以及用以评估网络系统安全。

4.1 Nmap的基本用法

1、对单台设备进行扫描。

使用 -sn 进行ping扫描的端口禁用情况
对单台靶机进行扫描:nmap -sn 192.168.137.161
  1. 对IP地址不连续的多台设备进行扫描。

使用nmap对IP地址不连续的两台靶机进行扫描:nmap 192.168.137.161  192.168.137.237。

  1. 对IP地址在连续范围内的多台设备进行扫描。

使用nmap -sn 192.168.137.1-255 对连续范围内的多台设备进行扫描。
  1. 对整个子网的设备进行扫描。

使用nmap -sn 192.168.137.0/24 对整个子网的设备进行扫描。

4.2 使用Nmap进行设备发现

1、使用ARP进行设备发现。

使用wireshark进行ARP的设备发现。第一步点击左上角的“菜单”,第二步点击‘09-sniffing & spoofing’,第三步点击‘wireshark’。
打开wireshark后,点击eh0,使用nmap -sn 192.168.137.0/24进行端口扫描,在wireshark中观察。
  1. 使用ICMP进行设备发现。

使用nmap -Pn192.168.137.161命令对ICMP进行设备发现。
-Pn的作用是跳过主机发现阶段,直接扫描指定目标的所有端口‌,适用于目标主机禁止Ping或防火墙限制ICMP请求的情况。‌‌
  1. 使用TCP进行设备发现。

  1. TCP SYN扫描。

使用nmap -sn -PS 10000 192.168.137.161进行TCP SYM扫描。
10000端口是TCP/IP协议中用于特定服务的网络端口‌,主要用途包括Webmin系统管理工具默认端口、HiveServer2数据库接口端口以及工业设备配置端口。‌‌
-sn -sP的作用是进行ICMP和TCP协议的主机发现。
  1. TCP ACK扫描。

使用nmap -sn -PA 80 192.168.137.10进行TCP ACK扫描。
-sn -PA的作用是使用TCP ACK协议对目标主机进行存活扫描(主机发现)‌。
80端口是HTTP(超文本传输协议)的默认端口,主要用于万维网(WWW)的网页浏览服务,是互联网上使用最广泛的协议端口之一。
  1. 使用UDP进行设备发现。

使用nmap -sn -PU 80 192.168.137.10进行UDP扫描。
-sn -PU的作用是使用UDP协议进行主机发现。

4.3使用Nmap进行端口扫描

  1. SYN扫描。

使用nmap -sS 192.168.137.161进行SYN扫描。
Nmap 的-sS选项用于进行 SYN扫描 (SYN半连接扫描),这是一种常用的扫描方式‌。

  1. Connect扫描。

使用nmap -sT 192.168.137.161进行Connect扫描。
-sT是通过对每个端口进行tcp连接来确定端口是否存在。
  1. UDP扫描。

使用nmap -sU 192.168.137.161进行UDP扫描。
-sU是用于UDP端口扫描。

4、端口扫描范围的确定:

(1)扫描全部端口。
使用nmap -p “*” 192.168.137.161进行UDP扫描。“*”表示全部端口。
-p :只扫描指定的端口,单个端口和用连字符表示的端口范 围(如 1-1023)都可以。
  1. 扫描使用频率最高的10个端口。
使用nmap --top-ports 192.168.137.161进行最高频率的10的端口扫描。
Nmap 的--top-ports参数用于指定扫描最常见的端口。‌具体来说,--top-ports参数后面可以跟一个数字,表示要扫描的端口数量。
  1. 扫描指定端口。
使用nmap  -p  80  192.168.137.161进行指定80端口扫描。

4.4 使用Nmap扫描目标操作系统

使用nmap  -O --osscan-guess 192.168.137.161进行目标操作系统扫描。
nmap 命令的-O选项用于启用操作系统检测,而--osscan-guess选项用于在无法确定操作系统时提供最相近的匹配。

4.5 使用Nmap扫描目标服务

使用nmap  -sV  192.168.137.161进行目标服务扫描。
-sV:可以显示服务的详细版本。

4.6 Nmap的扫描结果保存为XML文件

使用nmap  -oX Report.xml  192.168.137.161将扫描结果保存为xml文件。
Nmap 命令 -oX 选项的作用是将扫描结果保存为 XML 格式的文件。‌
具体来说,使用 -oX 选项可以将 Nmap 的扫描结果保存为 XML 格式的文件。

4.7 Web服务进行扫描

1、使用dirb扫描工具。

Dirb ‌是一个基于字典的 Web目录扫描工具 ,主要用于查找现有的(或隐藏的)Web对象。它通过对Web服务器发起基于字典的攻击并分析响应的数据,来获取更多的目录信息。
使用dirb http://192.168.137.161/dvwa/ 命令对web服务进行扫描。
  1. 使用whatweb工具。

WhatWeb 是一款用于识别网站技术栈和特征的开源Web扫描工具‌。它能够自动分析网站的响应,识别出使用的Web框架、CMS、服务器、JavaScript库等技术组件,从而帮助安全测试人员快速了解目标网站的技术特征,发现可能存在的漏洞。
先使用systemctl restart apache2命令启动服务,否则无法执行下面命令。
使用whatweb http://192.168.137.10/dvwa/ -v 命令对kali本机扫描。加 -v可以将详细结果显示出来。

4.8、Nmap核心功能总结

类别
命令示例
作用
适用场景
主机发现
nmap -sn 192.168.137.0/24
存活主机扫描(禁用端口扫描)
快速定位网段内活跃设备
多目标扫描
nmap 192.168.137.161 192.168.137.237
扫描不连续IP
针对特定目标
nmap -sn 192.168.137.1-255
扫描连续IP范围
批量探测子网设备
协议级发现
nmap -sn -PS 10000 192.168.137.161
TCP SYN扫描(向指定端口发SYN包)
绕过防火墙ICMP限制
nmap -sn -PA 80 192.168.137.10
TCP ACK扫描(发ACK包触发RST响应)
检测状态防火墙规则
nmap -sn -PU 80 192.168.137.10
UDP扫描(发空UDP包)
探测开放UDP服务的设备
端口扫描
nmap -sS 192.168.137.161
SYN半连接扫描(不完成TCP握手)
隐蔽扫描,避免日志记录
nmap -sT 192.168.137.161
TCP全连接扫描(完成三次握手)
无root权限时使用
nmap -sU 192.168.137.161
UDP端口扫描
探测DNS/DHCP等UDP服务
端口范围控制
nmap -p "*" 192.168.137.161
扫描所有端口(1-65535)
全面探测,耗时长
nmap --top-ports 10 192.168.137.161
扫描最常见10个端口(如80,443,22等)
快速扫描,效率优先
nmap -p 80 192.168.137.161
扫描指定端口
针对性验证服务
高级识别
nmap -O --osscan-guess 192.168.137.161
操作系统指纹识别(推测系统类型)
通过TCP/IP栈行为差异识别OS
nmap -sV 192.168.137.161
服务版本探测(Banner抓取)
识别运行中的服务及版本号
结果输出
nmap -oX Report.xml 192.168.137.161
输出XML格式报告
便于工具解析(如Metasploit)
Web专项扫描
dirb http://192.168.137.161/dvwa/
基于字典的Web目录爆破
发现隐藏路径/文件
whatweb http://192.168.137.10/dvwa/ -v
识别网站技术栈(CMS/框架/服务器)
快速获取Web应用技术指纹

4.9、关键技术原理解析

  1. 主机发现(Host Discovery)

    • ARP扫描:局域网内最可靠的二层发现(-sn在本地网段默认使用ARP)。
    • ICMP探测:通过-PE(回显请求)触发响应,但易被防火墙拦截。
    • TCP/UDP技巧
      • -PS:发送SYN包,若端口关闭则收RST,开放或无响应均表明主机存活。
      • -PA:发送ACK包,依赖防火墙返回RST(无视状态过滤规则)。
      • -PU:发送空UDP包,依赖ICMP端口不可达响应判断存活。
  2. 端口扫描技术对比

    扫描类型
    原理
    优势
    劣势
    SYN扫描
    发送SYN → 收SYN/ACK即开放
    速度快,隐蔽性强
    需root权限
    Connect
    完成完整TCP三次握手
    无需特权权限
    易被日志记录
    UDP扫描
    发UDP包 → 收ICMP不可达即关闭
    唯一有效UDP探测方法
    速度慢(需等待超时)
  3. 操作系统识别(-O)

    • 通过分析TCP/IP协议栈差异(如初始TTL、窗口大小、DF位等)生成指纹,与Nmap数据库比对。
    • --osscan-guess:当匹配不精确时提供最接近的推测结果。
  4. 服务版本探测(-sV)

    • 向开放端口发送定制化探针(如HTTP GET请求),解析返回的Banner信息(如Apache/2.4.29)。

5.1、最佳实践建议

  1. 扫描策略选择

    • 内网环境:优先使用ARP扫描nmap -sn)快速定位存活主机。
    • 绕过防火墙:组合-Pn(跳过主机发现)+ -PS/PA(TCP探测)应对禁Ping场景。
    • 全面扫描:-sS -sV -O -p 1-65535(SYN扫描+服务识别+OS检测+全端口)。
  2. 效率优化

    • 常用端口扫描:--top-ports 100(覆盖90%常见服务)。
    • 结果输出:-oX生成结构化报告,便于后续分析。
  3. Web渗透扩展

    • Dirb:聚焦目录枚举,使用/usr/share/wordlists中的字典增强覆盖率。
    • WhatWeb:快速识别Web技术栈(如WordPress 5.7.1),辅助漏洞匹配。

5.2、注意事项

  1. 权限要求:SYN扫描(-sS)需root权限(Kali默认满足)。

  2. 防火墙干扰:靶机防火墙需关闭,否则可能漏报(如Windows防火墙拦截ICMP)。

  3. 法律合规:仅限授权目标扫描,避免未授权探测。

注:部分内容源于网络。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值