
Mac环境下靶场搭建
因为我是mac m芯片电脑,所以在安装靶场时候如果直接使用virtualbox会报错,这篇文章介绍了我安装靶场的解决方案
utm安装
我使用的虚拟机是utm ,可以模拟x86系统,直接在官网免费下载
https://mac.getutm.app/
靶场安装包处理
这里以从vulnhub下载的Deathnote为例
从靶场下来的安装包应该是.ovf
在终端用tar解压这个文件 解压得到两个文件 我们需要用的是.vmdk文件
1 | (base) kakeru@bogon downloads % tar xvf Deathnote.ova |
然后下载qemu mac用户可以用brew下载
1 | brew install qemu |
然后在靶场解压后的目录中执行
1 | qemu-img convert -p -O qcow2 Deathnote-disk001.vmdk Deathnote.qcow2 |
执行后把.vmdk 文件转换成.qcow2文件
utm设置
点击创建虚拟机 –> 模拟 –> 其他 进入虚拟机配置
启动设备选择无
修改内存 一般虚拟只要分配1g以下的内存
然后可以给虚拟机起个名字 点击存储
接着右击虚拟机,点击编辑,进入虚拟机设置
1.在QEMU中取消UEFI启动
2.网络选择桥接(你可以自己配置网络,桥接是最简单的)
3.右击IDE驱动器,删除
4.驱动器新建点击导入 ,选择我们刚刚转换的.qcow2文件
接着就可以启动虚拟机了
启动成功的画面:
靶机没有分配到ip解决方案
靶机启动后 nmap扫描当前网段发现主机ip 但是有的靶机没有分配到靶机
这是由于靶机中的使用的网卡和其配置文件中的网卡不匹配导致的
1 | ┌──(root㉿kakeru)-[~] |
比如我这里这三个ip都不是靶机
版本1
这时 先关闭靶机 在启动的蓝色界面 按e进入命令行模式
(如果一直没有出现这个蓝色界面说明不是debian系的,在启动的时候按shift也能进入这个界面)
光标下移 找到ro(这里的倒数第三行) 改成rw single init=/bin/bash
ctrl + x 进入命令行模式
1 | ip a #查看实际使用网卡 (我这里就是enp0s1) |
然后输入
1 | nano /etc/network/interfaces #(编辑网卡) |
这里用nano 不用vim vim不知道为什么在这个模式下面更改不了内容
然后把网卡替换成实际的网卡(enp0s3 改成 enp0s1)
ctrl + o 保存 回车确定 最后ctrl + x 退出
重启网络服务
1 | service networking restart |
等加载之后重启虚拟机 就发现可以扫到ip啦 (如果还是不行可以尝试把utm网络中桥接的端口从自动改成en0)
1 | ┌──(root㉿kakeru)-[~] |
版本2
如果开机的时候一直加载进度进度条,没有出现蓝色界面,说明是另一种版本
按shift进入命令行模式
然后按e,把ro改成 rw single init=/bin/bash 并且把这行后面的都删除,直到initrd
ctrl + x开机
和dibian系一样用ip a查看真实ip端口
不一样的是这里网卡配置文件在
1 | /etc/netplan/00-installer-config.yaml #有时候不叫这个在/etc/netplan下找就可以了 |
修改成真实网卡(我这里3改成1)
ctrl + o 回车 ctrl + x 退出
1 | source /etc/netplan/00-installer-config.yaml |
让修改后的文件生效
然后重启靶机 就可以获取到靶机ip了
注意事项
如果这样修改了网卡信息的话,打靶机碰到比如knock这样的服务的话,也要先进入靶机的命令行模式修改knock等的配置,可以参考 HMV-Alzheimer