网络安全入门信息收集与漏洞扫描(二)

主动信息收集

1 Nmap扫描端口与服务

(1)Nmap是什么?

  • 定义:网络探测工具,用于扫描开放端口、识别服务及操作系统。

  • 典型用途

    • 发现目标存活主机(ping扫描)。

    • 识别开放端口和运行的服务(如SSH、HTTP、数据库)。

    • 探测操作系统类型(Windows/Linux)。

(2) 基础扫描命令

  • 快速扫描常用端口

    nmap -sV -T4 192.168.1.100  # -sV探测服务版本,-T4加速扫描

    示例输出

    PORT     STATE SERVICE    VERSION  
    22/tcp   open ssh        OpenSSH 7.6p1  
    80/tcp   open http       Apache 2.4.29  
    3306/tcp open mysql      MySQL 5.7.32  
  • 全端口扫描

    nmap -p- -sS 192.168.1.100  # -p- 扫描所有65535端口,-sS使用SYN半开放扫描

(3) 高级技巧

  • 绕过防火墙

    nmap -sS -Pn --data-length 100 192.168.1.100  # 伪装数据包长度,避免被IDS检测
  • 操作系统识别

    nmap -O 192.168.1.100  # 需root权限(sudo)

2 使用Shodan搜索暴露的设备

(1)Shodan是什么?

  • 定义:全球设备搜索引擎,可查找暴露的摄像头、服务器、工控系统等。

  • 核心功能

    • 按IP、端口、协议、关键词过滤设备(如ApacheMySQL)。

    • 获取设备的地理位置和漏洞信息。

(2)基础搜索语法

  • 按服务搜索

    apache country:CN  # 搜索中国的Apache服务器
  • 按漏洞搜索

    vuln:CVE-2021-44228  # 查找存在Log4j漏洞的设备

(3)实战操作

  • 步骤

    1. 访问 Shodan官网 注册免费账户(每日50次搜索)。

    2. 输入搜索语法(如port:3389 windows查找开放RDP的Windows设备)。

    3. 点击结果查看IP、服务详情及地理位置。

示例截图描述

Shodan搜索结果页面

  • 左侧:筛选条件(国家、端口、操作系统)。

  • 右侧:设备列表(IP、服务横幅、漏洞标签)。

  • 点击IP可查看详细数据(如HTTP响应头、证书信息)。


常见问题与解决方案
问题 原因分析 解决方案
Nmap扫描速度过慢 默认参数保守,未启用加速选项 添加 -T4(时序模板)或 -min-rate 500 提升发包速率。
Nmap提示“Permission denied” 部分扫描类型需root权限 使用 sudo nmap -sS ... 执行SYN扫描。
目标主机屏蔽ICMP请求 防火墙禁ping 添加 -Pn 参数跳过主机发现,直接扫描端口。
Shodan免费版结果受限 免费账户功能阉割 使用 org:"Company Name" 精确过滤,或升级付费账户。
Shodan搜索语法复杂难记 关键词组合逻辑不直观 使用官方语法生成器(Shodan Cheat Sheet)。

动手实验:实战主动扫描
  1. Nmap扫描实验环境靶机

    # 扫描Metasploitable靶机的服务版本
    nmap -sV 192.168.1.105
    # 输出结果中观察是否有高风险服务(如FTP匿名登录)。
  2. Shodan搜索暴露的数据库

    • 搜索语法:product:MySQL country:US port:3306

    • 分析结果中的MySQL版本,判断是否存在已知漏洞(如CVE-2016-6662)。


总结
  • Nmap 是渗透测试的“瑞士军刀”,需熟练常用参数(-sS-sV-O)。

  • Shodan 能快速定位暴露设备,但需注意法律边界,禁止未经授权扫描!

  • 若扫描结果为空,优先检查网络连通性(ping/telnet)和防火墙规则。


注意:所有操作需在授权环境下进行,非法扫描可能触犯《网络安全法》!


通过本节学习,你已掌握主动信息收集的核心工具,下一步可结合漏洞扫描(如OpenVAS)验证目标弱点。

你可能感兴趣的:(网络安全入门及实战,web安全,网络,安全,c++,程序人生)