Today, I bricked my iPhone and here goes my experience.
My plataform: Ubuntu 12.04/amd64, Oracle VirtualBox 4.2.0 / WinXP SP 2, iTunes 10.x
Some block posts reported permission problems of USB device files and adviced starting VirtualBox as root. And so I did. But the restoration / update process stuck.
Problem 1: VirtualBox does not recognize when a new USB device is plugged in. This may be due to starting VirtualBox as root, but I'm not sure, so stop or hibernate guest OS, do /etc/init.d/vboxdrv restart, and run guest again.
Problem 2: VirtualBox stops anywhere in the update process. There seems to be a problem with constant USB device switching (iPhone recovery mode), etc. It was just a matter of disconnecting the USB device with help of VirtualBox USB menu. It gets automatically reconnected and the update process continues.
I'll see if I find a cleaner way to do this.