osx平台电子取证仿真实验

forensics - make virtual machine with E01[ewf] files on OSX 2———— 电子取证 MAC OS平台仿真2

提示:和另一篇文章不同的思路,有新知识但是最重要的还是挂载方式的优化

挂载E01为raw文件

第一步安装 ewfmount,安装及环境要求可以参考上一篇文章
https://blog.csdn.net/your_olym/article/details/120856854?spm=1001.2014.3001.5501

# dsa @ '(^-^)' in ~ [19:11:26] C:130
$ sudo ewfmount -X volicon=/Library/Filesystems/osxfuse.fs/Contents/Resources/Volume.icns /Users/dsa/Downloads/检材1.E01 ~/tmp/11

sudo ewfmount -X volicon=/Library/Filesystems/osxfuse.fs/Contents/Resources/Volume.icns /Users/dsa/Downloads/检材1.E01 ~/tmp/11

将raw文件挂载到磁盘

# dsa @ '(^-^)' in ~ [18:40:27] C:1
$ sudo hdiutil attach -owners on -imagekey diskimage-class=CRawDiskImage -nomount ~/tmp/11/ewf1 -shadow sk
/dev/disk3          	FDisk_partition_scheme
/dev/disk3s1        	Linux
/dev/disk3s2        	Linux_LVM

# dsa @ '(^-^)' in ~ [18:40:32]
$ cat sk
shdw��P%

sudo hdiutil attach -owners on -imagekey diskimage-class=CRawDiskImage -nomount ~/tmp/11/ewf1 -shadow sk

这一步是mac平台很重要的一步,主要就是实现了对E01挂载出来的只读模式的raw文件执行了一个扩展,通过建立shadow文件来使挂载出来的磁盘可读
因为mac下的FTK imager和win下的功能不一样,没有挂载的功能,而ewfmount挂载的raw文件也没有写的机会,就使在仿真系统时会出错,参考win下的FTK挂载时会产生cache文件,以此猜测FTK imager挂载时能够可写就是因为将E01作为backing file 然后在此基础上建立可写的文件,达到对挂载的磁盘可写的功能,从而能够对镜像进行一个仿真。

一点小改进

sudo qemu-system-x86_64 -drive file="/dev/disk3"

sudo qemu-system-x86_64 -machine accel=hvf -cpu host -machine type=q35 -smp 4 -m 4G -vga virtio -display default,show-cursor=on -usb -device usb-tablet -netdev user,id=net0 -device vmxnet3,netdev=net0,id=net0,mac=52:54:00:c9:18:27 -drive file="/dev/disk3"
在这里插入图片描述

偶然发现qemu模拟器可以对镜像进行模拟,然后vmware fusion对磁盘块的系统仿真过于困难,于是就经常使用qemu模拟启动,这样方便了很多,弊端是联网比较困难,需要认真研究研究。

题外拓展

在查看hdiutil相关资料之前,一直是在尝试将挂载后的文件进行一个可读的添加,试过两种方法,每种也尝试有个几天,第一种是qcow2文件,因为之前使用qemu的时候对,qemu-img的命令都详细的看了一遍,对于相关的操作都有了一定的了解,那么最先匹配到的解决方式就是qcow2的backing_file思路

# dsa @ '(^-^)' in ~ [19:33:38]
$ qemu-system-x86_64 -drive file="/Users/dsa/tmp/ssq2.qcow2"
qemu-system-x86_64: -drive file=/Users/dsa/tmp/ssq2.qcow2: Could not open '/Users/dsa/tmp/ssq2.qcow2': Permission denied

# dsa @ '(^-^)' in ~ [19:34:30] C:1
$ sudo qemu-system-x86_64 -drive file="/Users/dsa/tmp/ssq2.qcow2"

其中/dev/disk2是
hdiutil attach -imagekey diskimage-class=CRawDiskImage -nomount /Users/dsa/tmp/11/ewf1
命令挂载的
在这里插入图片描述
方便是挺方便的,问题就是UEFI启动应该怎么办于是通过逛git找到了一些引导方式

open https://github.com/cHolzberger/abuild-qemu-osxkvm#alpine-qemu-osxkvm
open https://github.com/foxlet/macOS-Simple-KVM
open https://github.com/Leoyzen/KVM-Opencore
open https://github.com/thenickdude/OSX-KVM
open https://gist.github.com/Manouchehri/2b1b523eed834f295915
open https://www.nicksherlock.com/2021/10/installing-macos-12-monterey-on-proxmox-7/

然后成功剽到了OVMF_CODE.fd文件 ,有了UEFI引导固件当然就能引导部分UEFI系统了,但是UEFI系统对主机的硬件匹配好像有要求,启动容易导致windows系统崩快,又不太会,于是……

话说谈到启动项,第一步想到的当然是OC啦于是就找了好几个qemu引导OC的项目

笑死,根本学不会

本着照着步骤慢慢学习的精神,尝试了一下原本的作用,qemu安装macos,结果安装到点击install安装就卡死,也不知道什么回事
在这里插入图片描述
在这里插入图片描述
别说,照着步骤还真明白了部分qemu启动时的参数,

   -drive if=pflash,format=raw,readonly=on,file="$REPO_PATH/$OVMF_DIR/OVMF_CODE.fd"
   -drive if=pflash,format=raw,file="$REPO_PATH/$OVMF_DIR/OVMF_VARS-1024x768.fd"
   -smbios type=2
  # -device ich9-intel-hda -device hda-duplex
   -device ich9-ahci,id=sata
  # -drive id=OpenCoreBoot,if=virtio,file="ssq2.qcow2"
   -drive id=OpenCoreBoot,if=none,snapshot=on,format=qcow2,file="$REPO_PATH/OpenCore/OpenCore.qcow2"
   -device ide-hd,bus=sata.2,drive=OpenCoreBoot
   -device ide-hd,bus=sata.3,drive=InstallMedia
  # -drive id=InstallMedia,if=none,file="/Users/dsa/tmp/ssq2.qcow2",format=qcow2
   -drive id=InstallMedia,if=none,file="/Users/dsa/tmp/OSX-KVM/scripts/monterey/Monterey-full.img",format=raw
   -drive id=MacHDD,if=none,file="$REPO_PATH/mac_hdd_ng.img",format=qcow2
   -device ide-hd,bus=sata.4,drive=MacHDD
  #  -device ide-hd,bus=sata.5,drive=BootCamp
  #  -drive id=BootCamp,if=none,file="/Users/dsa/tmp/ssq.qcow2",format=qcow2
   -device ide-hd,bus=sata.5,drive=centos
   -drive id=centos,if=none,file="/Users/dsa/tmp/ssq3.qcow2",format=qcow2
-device ich9-ahci,id=sata
-device ide-hd,bus=sata.5,drive=centos
-drive id=centos,if=none,file="/Users/dsa/tmp/ssq3.qcow2",format=qcow2

这样一套操作下来才能被OC识别,
然鹅
OC识别了没有启动项,
好吧OC我还没有好好学习,什么时候会了再说吧,有大佬指点一二也是极好的😊

最后是尝试vmdk文件的编辑

# dsa @ '(^-^)' in ~/tmp/OSX-KVM on git:master x [19:54:05]
$ /Applications/VMware\ Fusion.app/Contents/Library/vmware-rawdiskCreator create /dev/disk2 fullDevice ~/Desktop/PVMDisk lsilogic


/Applications/VMware\ Fusion.app/Contents/Library/vmware-rawdiskCreator create /dev/disk2 fullDevice ~/Desktop/PVMDisk lsilogic
创建出PVMDisk.vmdk文件,然后添加虚拟机时不能直接用,好家伙,然后新建个能被用的再替换呗

# dsa @ '(^-^)' in ~/tmp/OSX-KVM on git:master x [19:55:56] C:130
$ qemu-img create -f vmdk ~/tmp/ss.vmdk 21G
Formatting '/Users/dsa/tmp/ss.vmdk', fmt=vmdk size=22548578304 compat6=off hwversion=undefined

# dsa @ '(^-^)' in ~/tmp/OSX-KVM on git:master x [19:57:36]
$ qemu-img create -f vmdk ~/tmp/ssadd.vmdk -b ~/tmp/ss.vmdk -F vmdk
Formatting '/Users/dsa/tmp/ssadd.vmdk', fmt=vmdk size=22548578304 backing_file=/Users/dsa/tmp/ss.vmdk backing_fmt=vmdk compat6=off hwversion=undefined

然后先创建虚拟机,选中已有的虚拟磁盘,选ssadd.vmdk
然后打开010 Editor进行更改参数,就能启动了
刚开始三个文件
在这里插入图片描述
修改后三个文件
在这里插入图片描述
选择“是”后,但三个文件的ID会被更改,并且进入系统
问题就是步骤比较复杂,而且打开两个虚拟机就会报错:是为了防止出错而自动锁死。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值