如何搭建靶机
装个靶机,何搭最省事的建靶机办法是找台旧电脑,或者干脆用虚拟机。何搭我手里这台2015年的建靶机ThinkPad X250,i5-5300U加8G内存,何搭跑VMware Workstation 17绰绰有余。建靶机别信那些“必须独立物理机”的何搭说法,除非你要测内核级漏洞或者做硬件侧信道实验,建靶机否则虚拟化层的何搭性能损耗完全可以接受。 选系统这一步,建靶机很多人纠结。何搭Kali Linux?建靶机那是攻击机,别搞混了。何搭靶机要的建靶机是漏洞多、版本旧、何搭配置糙。Metasploitable 2是个经典选择,基于Ubuntu 8.04,默认开着telnet、ftp匿名登录、弱口令一堆。下载下来是个zip包,解压后直接挂到VMware里,开机就能用。它的网络模式我习惯设成NAT,跟宿主机隔开但能上网——有些漏洞利用需要回连,纯Host-Only会卡住。 装完系统只是第一步。真正让靶机“活”起来的是服务配置。拿Metasploitable 2举例,默认的MySQL root密码是空的,SSH允许root登录,Tomcat管理后台用tomcat/tomcat就能进。这些不是bug,是故意留的后门。你要做的是确认这些服务确实在跑: 网络隔离这块得单独说。我见过有人把靶机桥接到家庭局域网,结果被蠕虫扫了全屋设备。正确做法是给靶机单独建一个VMnet,比如VMnet2,设成Host-Only模式。宿主机加一块虚拟网卡连到这个VMnet,攻击机也放进来。这样靶机出不去外网,宿主机能访问它,互不干扰。如果你非要用NAT,记得在VMware的虚拟网络编辑器里关掉DHCP,手动分配IP,防止靶机拿到跟宿主机同网段的地址。 快照功能是保命符。装好系统、配完服务、确认网络通,立刻打个快照,命名“clean-base”。之后每做一次漏洞利用测试,搞崩了直接回滚,省得重装。我试过在Metasploitable 2上跑MS17-010的利用模块,打完之后系统卡死,回滚快照三十秒恢复。没有快照的话,重装加配置至少四十分钟。 资源分配别抠门。靶机虽然旧,但给1核CPU、1G内存跑起来会卡。我给的是2核、2G内存、40G硬盘。硬盘用厚置备延迟置零,别用精简模式,有些漏洞利用会大量写磁盘,精简盘容易撑爆宿主机。网络适配器选E1000,别用VMXNET3,老系统没驱动。 最后说个实际踩过的坑。Metasploitable 2默认的root密码是“msfadmin”,但SSH配置里 靶机搭好不是终点。每次测试前确认快照状态,测试后记录漏洞利用路径和回滚点。这东西跟练拳一样,沙袋不会还手,但你得知道自己的拳头落在哪。netstat -tlnp看一眼端口,80、22、3306、8180都在,心里就有底了。PermitRootLogin是yes,很多人不知道。有次我扫到一个靶机,hydra跑SSH爆破,字典里没这个密码,折腾半天。后来直接看/etc/ssh/sshd_config才发现。所以拿到靶机第一件事,翻配置文件,比盲目扫描快得多。