自学渗透测试第30天(第一阶段总结与Metasploitable3部署)

10.5 第一阶段总结与Metasploitable3部署(第30天)

核心目标
  1. 完成第一阶段知识总结:系统梳理前29天所学技能,形成清晰的渗透测试基础知识体系。

  2. 成功部署Metasploitable3靶机:掌握在虚拟化环境中部署这个复杂、现代漏洞靶场的方法,为后续实战提供环境。

  3. 制定第二阶段学习计划:明确以Metasploit框架为核心的漏洞利用与后渗透阶段的学习路径和目标。

模块一:第一阶段技能图谱总结
1.1 核心能力盘点
  • 信息收集 :熟练使用nmapmasscanwhatwebgobustertheHarvester等工具进行外围侦察与资产发现。

  • 漏洞评估:掌握SQL注入、XSS、文件上传、命令注入等OWASP Top 10漏洞的原理、手工检测与利用方法。

  • 初始访问:能够利用Web漏洞获取Webshell,或通过弱口令、配置错误等方式获取系统初始立足点。

  • 权限提升:掌握Linux/Windows系统常见的本地提权方法(内核漏洞、SUID/SGID、服务配置、令牌滥用等)。

  • 内网基础:理解ARP协议、防火墙基础,能够进行简单的内网主机发现和端口扫描。

  • 工具与自动化:熟练使用Burp Suite、SQLMap、Wireshark,并能编写简单的Bash脚本将工具链自动化。

  • 协议与系统:深入理解HTTP/S、FTP、TCP/IP等协议,熟悉Linux和Windows基础命令与系统结构。

1.2 典型攻击流程回顾
复制代码
[外部] 1. 信息收集 -> 2. 漏洞扫描/发现 -> 3. 漏洞利用 -> [获得Shell]
[内部] 4. 权限提升 -> 5. 信息收集(内网) -> 6. 横向移动 -> 7. 目标达成
模块二:Metasploitable3靶场部署详解

Metasploitable3是一个高度脆弱的现代Windows和Linux混合靶机,专为训练Metasploit框架使用和后渗透技术而设计。

2.1 部署前准备
  • 系统要求

    • 主机:至少8GB RAM,20GB可用磁盘空间,支持虚拟化(Intel VT-x/AMD-V)。

    • 软件:安装最新版本的VirtualBox和Vagrant。

  • 下载项目

    复制代码
    git clone https://github.com/rapid7/metasploitable3.git
    cd metasploitable3
2.2 使用Vagrant自动构建(推荐)
  1. 安装依赖插件

    复制代码
    vagrant plugin install vagrant-reload
  2. 构建靶机(此过程耗时较长,约1-2小时,需稳定网络):

    复制代码
    # 构建Ubuntu (Linux) 靶机
    vagrant up ub1404
    # 或构建Windows 2008靶机
    vagrant up win2008
    # 若要同时构建两者
    vagrant up
  3. 常见问题解决

    • 下载超时/失败 :脚本会下载大型Box文件,请确保网络稳定。可尝试手动下载对应的.box文件并放置于~/.vagrant.d/boxes/目录下。

    • 内存不足 :在Vagrantfile中调整分配给虚拟机的内存大小(默认Ubuntu 512MB, Windows 2048MB)。

    • VT-x/AMD-V未开启:进入主机BIOS设置,开启CPU虚拟化支持。

2.3 手动导入(备用方案)

如果Vagrant构建失败,可以尝试从官方直接下载预构建的OVA文件,并用VirtualBox导入。

  1. 从Rapid7官方发布页面下载 Metasploitable3-*.ova文件。

  2. 打开VirtualBox,点击"管理"->"导入虚拟电脑",选择下载的OVA文件。

  3. 调整虚拟机设置(网络建议用"Host-Only"或"NAT网络"模式,确保与Kali主机互通)。

2.4 网络配置与连接
  • 网络模式 :建议将Metasploitable3和Kali攻击机设置为同一"NAT网络" 或**"Host-Only网络"**,确保它们在同一网段且可以互相通信。

  • 获取IP地址 :启动靶机后,在靶机内运行ip addr(Linux)或ipconfig(Windows)查看IP。

  • 从Kali扫描 :使用nmap -sV 靶机IP扫描,确认靶机已启动并开放大量端口。

模块三:Metasploitable3初探与漏洞概览
3.1 靶机基本信息
  • Ubuntu 14.04 靶机:包含多种有漏洞的Web应用(如WordPress, Joomla, WebDAV)、服务(如Redis, PostgreSQL)及配置错误。

  • Windows 2008 靶机:包含经典的MS17-010(永恒之蓝)、MS08-067、弱口令、配置错误的文件共享等漏洞。

3.2 初试身手:快速获取Shell

Ubuntu靶机 为例,演示一个简单漏洞利用:

  1. 发现漏洞nmap扫描发现8080端口运行着Tomcat 8.5.19

  2. 搜索利用 :在Kali中,msfconsole启动Metasploit,搜索tomcat相关模块:search tomcat manager

  3. 利用弱口令 :使用auxiliary/scanner/http/tomcat_mgr_login模块扫描弱口令。常见凭证如tomcat:s3cret

  4. 部署War包 :利用exploit/multi/http/tomcat_mgr_upload模块,设置好RHOSTS、RPORT、HttpUsername、HttpPassword,即可获取一个Meterpreter Shell。

3.3 第二阶段学习预告

成功部署Metasploitable3后,第二阶段(第31天起)将围绕它展开:

  • Metasploit框架精通:模块使用、Payload生成、免杀、持久化。

  • 漏洞利用深化:针对特定服务(SMB, FTP, RDP)和应用程序漏洞的利用。

  • 后渗透技术:在Meterpreter会话中进行信息收集、权限提升、横向移动、凭证转储、跳板攻击。

  • 对抗与免杀:简单绕过AV检测,制作免杀Payload。

模块四:当日达标实战任务
4.1 第一阶段知识自测

请在不查阅资料的情况下,简要回答以下问题:

  1. 请写出从发现一个网站到获取其Webshell的完整步骤链条(至少5个关键步骤)。

  2. 在获得一个Linux系统的普通用户Shell后,你会执行哪些命令来进行本地信息枚举(列出至少8条命令及其目的)?

  3. 如何判断一个Web页面是否存在SQL注入漏洞?请描述手工检测的基本步骤。

  4. 解释ARP欺骗的原理及其在中间人攻击中的作用。

4.2 Metasploitable3部署与验证
  1. 成功部署:按照教程,成功在VirtualBox中启动至少一台Metasploitable3靶机(Ubuntu或Windows)。

  2. 网络连通 :确保你的Kali攻击机可以与靶机通信。使用ping命令测试。

  3. 初步侦察 :使用nmap对靶机进行全端口扫描和服务版本探测,将扫描结果保存为ms3_scan.xmlms3_scan.txt。记录下开放的端口数量和你认为最有趣的3个服务。

4.3 制定个人第二阶段学习目标

根据第一阶段的掌握情况和兴趣,写下你在第二阶段希望重点攻克的3个具体目标,例如:

  1. 熟练使用Metasploit完成对MS17-010漏洞的利用。

  2. 掌握在Meterpreter会话中进行令牌窃取和哈希传递。

  3. 能够独立分析一个公开的漏洞利用代码(Exploit-DB),并成功复现。

模块五:常见部署问题与解决方案
5.1 Vagrant构建失败
  • 错误:The box '...' could not be found:确保网络通畅,或尝试手动下载box文件。

  • 错误:Vagrant timed out:增加Vagrant等待超时时间,或检查主机性能是否不足。

  • 错误:Chef run failed:可能是脚本依赖问题,尝试更新Vagrant和VirtualBox到最新版本,或查阅项目的GitHub Issues。

5.2 虚拟机启动问题
  • 启动黑屏/卡住:检查是否开启了虚拟化支持,并分配足够的内存。

  • 网络不通 :确保Kali和靶机在同一虚拟网络(如vboxnet0)中,并检查防火墙设置。

5.3 工具使用问题
  • Metasploit无法连接Payload :检查Payload类型(reverse_tcpvs bind_tcp)是否正确,防火墙是否放行了相应端口,IP地址是否设置正确。

第一阶段完结,第二阶段启航 :恭喜你完成了为期30天的渗透测试基础学习!你已经构建了一个坚实的技术基础。从明天开始,我们将进入更激动人心的漏洞利用与后渗透阶段,以Metasploitable3为战场,深入探索自动化攻击、权限维持和内网纵横。准备好了吗?

相关推荐
见青..1 天前
phpMyAdmin权限提升
web安全·网络安全·phpmyadmin
数据知道1 天前
邮件安全实战:SPF/DKIM/DMARC 配置与钓鱼绕过
网络·安全·web安全·网络安全·邮件安全
世界尽头与你1 天前
Android Root 检测原理
android·安全·网络安全·渗透测试
kp000001 天前
如何平衡模型输出的“有用性”和“安全性
人工智能·安全·网络安全·信息安全·ai安全
世界尽头与你1 天前
iOS 越狱检测原理
安全·网络安全·ios·信息安全·渗透测试
kp000002 天前
大模型输出造成信息泄露类型
人工智能·网络安全·信息安全·ai安全
kp000002 天前
System Prompt Leakage(系统提示词泄露)及安全防御
网络·安全·网络安全·信息安全·prompt·ai安全
X7x52 天前
攻防对抗的结构化思维:深度拆解网络杀伤链(Kill Chain)与现代防御演进
网络安全·网络攻击模型·安全架构·网络杀伤链·kill chain
kp000002 天前
AI大模型,如何区分善意提问与Prompt注入攻击
人工智能·网络安全·信息安全·prompt·ai安全
kp000002 天前
AI系统输入安全基线
人工智能·安全·网络安全·信息安全·ai安全