How to do raw device access with VirtualBox?
I had a need to do this today and I saw your question, so here is a protocol of the steps I took.
Find the Device Number
diskutil list
e.g. 2, as in /dev/disk2
Assuming 2 for the rest of the instructions.
Create the Virtual Machine VMDK
VBoxManage internalcommands createrawvmdk -filename &quot;$HOME/dev-disk2.vmdk&quot; -rawdisk /dev/disk2
Eject the device before this step, otherwise you will get an error: VERR_RESOURCE_BUSY. You may want to add an entry in fstab with the added parameters noauto to prevent the OS from remounting the drive.
I use rdisk-disk2.vmdk for the name, because this virtual machine is just a pointer to this device. After reboot, the situation could change e.g. a device might be assigned a different number especially if you unplug things and move things around.
Start Virtual Box Manager with Root Privileges
sudo /Applications/VirtualBox.app/Contents/MacOS/VirtualBox
Because devices are all owned by root, you need to start VirtualBox with root privileges. This has consequences. Your home context (home folder and preferences) will be changed to root. Your other virtual machines will not be visible. If you open a file browser, you will see the root's home folder by default.
Another option is to change the permissions of the device (not recommended) as you have done.
To confirm permissions of devices, you can run ls -l /dev/disk*

Add New Machine, provide name: /dev/disk2, type: linux, version: arch linux (64-bit)
Give it some memory (whatever you can)
Select existing drive using VMDK created above. (IMPORTANT ensure the drive has not been remounted, otherwise you will get VERR_RESOURCE_BUSY, NS_ERROR_FAILURE)

Install a Fresh System
Add an optical disk file (e.g. a bootable linux ISO of your liking) and turn on the Live CD/DVD optional so that you boot from it.
Make System Bootable in VirtualBox
This is not so obvious, especially if you use an EFI setup. If using grub-mkconfig, the name of the efi file is grubx64.efi (assuming 64 bits). VirtualBox is finicky about where it looks for a boot file. The default will not do.
Rename grubx64.efi to bootx64.efi
/boot/EFI/BOOT/bootx64.efi

Notes

tip: get yourself iterm 2
This is super useful for Macbooks when installing Arch Linux, because the default ISO does not load the wlan card drivers.