自学渗透测试第25天(工具链联动:nmap+whatweb+curl)

工具链联动:nmap+whatweb+curl(第25天)

核心目标
  1. 掌握工具链思想:理解将多个单一功能工具串联,构建自动化工作流的价值与方法。

  2. 精通nmap、whatweb、curl在侦察中的联动:能够编写脚本或命令管道,实现从目标发现、服务识别到Web信息提取的无人值守侦察。

  3. 输出结构化报告:能将工具链的扫描结果进行过滤、整理,生成清晰易读的侦察报告。

模块一:工具链思想与设计
1.1 为何需要工具链
  • 效率提升:自动化重复性任务,解放双手。

  • 流程标准化:确保每次侦察步骤一致,减少遗漏。

  • 信息关联:将分散的工具输出关联起来,形成对目标的立体认知。

1.2 简易侦察流水线设计
复制代码
输入目标 (IP/域名)
    |
    v
[nmap]  --> 主机发现 & 端口扫描
    |
    v
[grep/awk] --> 提取开放80/443端口的IP
    |
    v
[whatweb] --> Web指纹识别 (CMS, 框架, 服务器)
    |
    v
[curl]   --> 获取特定信息 (标题, HTTP头, 敏感文件)
    |
    v
[报告生成] --> 整理并输出结果
模块二:核心工具在链中的角色
2.1 nmap:发现与枚举
  • 角色:发现存活主机,识别开放端口,初步判断服务。

  • 链中用法 :使用-oG(grepable)格式输出,便于后续文本处理。

    复制代码
    nmap -sS -T4 -oG scan.gnmap 192.168.1.0/24
    # 提取开放80或443端口的主机
    grep “80/open\|443/open” scan.gnmap | awk ‘{print $2}’
2.2 whatweb:Web指纹识别
  • 角色:快速识别Web技术栈。

  • 链中用法:批量对URL列表进行识别。

    复制代码
    whatweb -i targets.txt --color=never
    # 或对单个目标详细识别
    whatweb -v http://target.com
2.3 curl:HTTP交互与信息提取
  • 角色:模拟HTTP请求,获取页面内容、HTTP头部等原始信息。

  • 链中用法

    复制代码
    # 获取页面标题
    curl -s http://target.com | grep -o ‘<title>[^<]*</title>‘ | sed ’s/<[^>]*>//g’
    # 仅获取HTTP头部
    curl -I http://target.com
    # 测试特定路径
    curl -s -o /dev/null -w “%{http_code}” http://target.com/admin/
模块三:联动实战与脚本编写
3.1 基础命令管道联动
复制代码
# 一步式侦察:扫描网段,识别Web,获取标题
nmap -sS -T4 -p 80,443 --open -oG - 192.168.1.0/24 | awk '/Up$/{print $2}' | while read ip; do echo "=== $ip ==="; whatweb -q $ip; curl -s "http://$ip" | grep -i title | head -1; done
3.2 Shell脚本实现自动化
复制代码
#!/bin/bash
# autorecon.sh
NETWORK="192.168.1.0/24"
OUTPUT_DIR="scan_results_$(date +%Y%m%d_%H%M%S)"
mkdir -p "$OUTPUT_DIR"
​
echo "[*] 开始Nmap扫描..."
nmap -sS -T4 -p- --open -oG "$OUTPUT_DIR/full_scan.gnmap" "$NETWORK"
​
echo "[*] 提取Web目标..."
grep -E "(80/open|443/open)" "$OUTPUT_DIR/full_scan.gnmap" | awk '{print $2}' > "$OUTPUT_DIR/web_targets.txt"
​
echo "[*] 开始WhatWeb指纹识别..."
whatweb -i "$OUTPUT_DIR/web_targets.txt" --color=never --log-verbose="$OUTPUT_DIR/whatweb.log"
​
echo "[*] 获取网站标题..."
while read target; do
    echo "--- $target ---" >> "$OUTPUT_DIR/titles.txt"
    curl -s -m 5 "http://$target" | grep -i '<title>' | head -1 >> "$OUTPUT_DIR/titles.txt" 2>/dev/null
    curl -s -m 5 "https://$target" 2>/dev/null | grep -i '<title>' | head -1 >> "$OUTPUT_DIR/titles.txt" 2>/dev/null
done < "$OUTPUT_DIR/web_targets.txt"
​
echo "[+] 扫描完成。结果保存在: $OUTPUT_DIR/"
模块四:当日达标实战任务
4.1 手动工具链实践
  1. 给定一个目标IP范围 (如172.16.50.0/24,或你的虚拟机网络),请手动执行以下步骤,并记录关键命令和发现:
  • 使用nmap进行快速主机发现和端口扫描(1-1000端口)。

  • 从结果中筛选出开放了80443端口的主机IP,保存到文件web_ips.txt

  • 使用whatweb批量识别web_ips.txt中每个IP的Web技术栈。

  • 使用curl获取其中一个Web服务的首页标题和HTTP响应头中的Server字段。

4.2 脚本编写挑战
  1. 编写侦察脚本 :编写一个Shell脚本web_recon.sh,要求:
  • 接受一个参数(可以是单个IP、IP列表文件或CIDR格式的网段)。

  • 自动对该目标进行nmap端口扫描(仅限80,443,8080,8443)。

  • 对发现的Web服务,依次使用whatweb进行指纹识别,并使用curl测试/robots.txt/admin/路径是否存在(根据HTTP状态码判断)。

  • 将结果以清晰的格式输出到屏幕,并同时保存到以时间命名的目录中。

4.3 结果分析与报告
  1. 分析扫描结果:运行你的脚本或手动执行工具链后,你获得了以下信息:
  • IP: 192.168.1.105, 端口: 80, WhatWeb: WordPress[5.7]/admin/返回403。

  • IP: 192.168.1.110, 端口: 443, WhatWeb: Apache[2.4.41]/robots.txt返回200,内容显示Disallow: /backup/

  • 请根据这些信息,写一段简短的"攻击面分析",指出每个目标潜在的风险点或下一步侦察方向。

模块五:常见问题与解决方案
5.1 工具链中断
  • 某个工具无输出或报错 :在脚本中添加错误处理(2>/dev/null或检查命令返回值$?),并记录日志。为网络请求设置超时(curl -m 5)。

  • 管道传递数据格式错误 :确保前一工具输出的格式能被后一工具正确解析。使用awkcutgrep进行精确字段提取。

5.2 效率与性能
  • 扫描速度慢nmap使用合适的时序模板(-T4),限制端口范围。并行化处理:使用xargs -Pparallel命令并行执行whatwebcurl

  • 目标过多:合理分割目标列表,分批次扫描。

5.3 结果过载
  • 信息太多难以分析 :在脚本的最终输出阶段,使用grepawk进行过滤,只保留高风险发现(如特定CMS版本、暴露的管理后台、敏感目录)。

第三阶段总结与展望 :恭喜您完成了漏洞原理深入服务与工具链 的学习。您已经掌握了SQL注入、XSS的核心原理与手工利用,熟悉了Linux服务管理,并具备了将多个工具串联实现自动化侦察的能力。从第26天起,我们将进入漏洞利用与后渗透 阶段,首先学习Metasploit框架的基础使用,这是渗透测试中最强大的自动化漏洞利用平台。

相关推荐
TechWayfarer2 小时前
App还是Web?IP段归属查询的工具适配与实战指南
python·tcp/ip·网络安全
菩提小狗2 小时前
每日安全情报报告 · 2026-04-25
网络安全·漏洞·cve·安全情报·每日安全
深邃-2 小时前
【Web安全】-Kali,Linux基础(3):Linux路径操作,Linux文件权限,Linux文件下载
linux·运维·安全·web安全·网络安全·系统安全
沐苏瑶3 小时前
Java反序列化漏洞
java·开发语言·网络安全
深念Y16 小时前
从“改网页”到“改应用”:客户端数字显示伪造的技术原理与边界讨论
网络安全·dom·ps·代理·前端安全·开发者工具·内存修改器
能年玲奈喝榴莲牛奶1 天前
网络安全服务-网络安全检查
安全·web安全·网络安全·安全服务
钟智强1 天前
国内环境Ollama安装与DeepSeek-R1:1.5b部署全攻略
安全·web安全·网络安全·ollama·deepseek
大方子1 天前
【Bugku】GoldenHornKingWEB
网络安全·bugku
hzhsec1 天前
HIDS-Wazuh与Elkide的部署与搭建
安全·网络安全·环境部署·应急响应