当前位置: 当前位置:首页 > 娱乐 > 渗透靶场搭建正文

渗透靶场搭建

作者:探索 来源:百科 浏览: 【大 中 小】 发布时间:2026-10-17 06:04:45 评论数:

去年冬天我帮一个朋友做内网渗透测试,渗透他丢过来一句“你自己搭个环境练吧”,靶场结果我花了三天才把靶场跑通。搭建踩的渗透坑比打的漏洞还多,索性把过程记下来。靶场

渗透靶场不是搭建装个虚拟机就完事。核心就一件事:造一个能让你合法攻击、渗透随便打烂、靶场打完还能一键重置的搭建环境。听起来简单,渗透但网络拓扑、靶场漏洞镜像、搭建隔离策略这三样缺一个,渗透靶场要么跑不起来,靶场要么跑起来也不敢打。搭建

先选底座:虚拟机还是容器

我一开始用 VirtualBox 跑 Metasploitable2,512MB 内存的镜像,宿主机上开着 Chrome 都能把它卡成幻灯片。后来换 VMware Workstation,流畅不少,但每加一个靶机就多吃 1-2GB 内存。手头只有 16GB 内存的笔记本,跑三台靶机就开始疯狂读盘。

Docker 是另一条路。Vulhub 这个项目把常见漏洞环境都打包成了 docker-compose 文件,docker compose up -d 一行命令就能起一个 Struts2 或者 Fastjson 的漏洞环境。启动时间从几分钟压到十几秒,内存占用也小得多。缺点是容器共享内核,有些需要特定内核模块的漏洞(比如某些提权场景)跑不了。

我的选择是混着用:Web 类漏洞用 Vulhub 的 Docker 环境,主机层渗透用 VMware 跑 Windows 和 Linux 靶机。两套环境放在同一个 NAT 网段里,攻击机 Kali 能同时访问两边。

网络隔离是底线,别省这一步

见过有人把靶机桥接到家里的局域网,结果靶机上的永恒之蓝漏洞被隔壁室友的电脑扫到,差点把人家机器打了。靶场的网络必须和真实网络隔开。

VMware 里我用 Host-Only 模式加一个 NAT 网卡。Host-Only 负责 Kali 和靶机之间的攻击流量,NAT 网卡只给 Kali 用来更新软件包。靶机不配 NAT,彻底断掉外网。Docker 那边用自定义 bridge 网络,internal: true 参数直接禁止容器访问外网。

有一次偷懒没设 internal,结果一个反弹 shell 的 payload 直接从容器里连到了我 VPS 上。虽然是自己写的 payload 没造成什么后果,但那一瞬间后背还是凉了一下。

靶机选型:别贪多,先跑通一条链

新手容易犯的错是一口气下十几个靶机镜像,每个都启动一遍,然后不知道从哪下手。我的建议是先搭一条完整的攻击链:

  • 攻击机:Kali Linux,装好 Burp Suite、nmap、metasploit
  • 入口靶机:Vulnhub 的 DC-1 或者 Kioptrix Level 1,漏洞明确、难度低
  • 内网靶机:Metasploitable2 或 Metasploitable3,作为横向移动的目标

DC-1 我打了大概四个小时。Drupal 7 的 SQL 注入拿到管理员密码,登后台传 PHP 反弹 shell,然后 find SUID 提权到 root。每一步都有明确的反馈,不像有些靶机卡在一个莫名其妙的地方让人怀疑人生。

快照和重置:靶场的命根子

靶机打烂了是常态。Docker 环境直接 docker compose down && docker compose up -d,十几秒恢复干净。VMware 虚拟机记得打快照,打完一个漏洞就拍一张,出问题回滚比重新配环境快得多。

我习惯在 Kali 上写个 reset.sh,内容就是遍历所有 docker-compose 目录执行 down 再 up,加上 vmrun revertToSnapshot 回滚 VMware 靶机。一条命令重置整个靶场,省下来的时间够多打两个靶机。

搭靶场这件事,工具和教程网上到处都是,真正花时间的是调试网络和反复重置。环境跑通之后,剩下的就是对着屏幕一遍遍试 payload 了。