{{Header}}
{{title|title=
VirtualBox Integration
}}
{{#seo:
|description=VirtualBox Licensing Issues, unavailable in Debian main and Debian backports, missing features. Is VirtualBox an Insecure Choice? Arguments for keeping VirtualBox Support.
|image=Virtualbox_logo.png
}}
[[File:Virtualbox_logo.png|thumb|VirtualBox Logo|100px]]
{{intro|
VirtualBox Licensing Issues, unavailable in Debian main and Debian backports, missing features. Is VirtualBox an Insecure Choice? Arguments for keeping VirtualBox Support.
}}
== Whonix VirtualBox versus Other Virtualizers ==
=== Why use VirtualBox over KVM? ===
VirtualBox advantages:
* The virtual network interfaces are better encapsulated inside the VM by VirtualBox.
** Virtual network interfaces by VirtualBox: Are invisible on the host using tools such as "sudo ifconfig
".
* [[corridor]] leak tested.
* Therefore Whonix VirtualBox has a higher leak-proofness than Whonix KVM.
KVM disadvantages:
* Virtual network interfaces by KVM: Are visible on the host using tools such as "sudo ifconfig
".
** KVM: This complicates [[Dev/Leak_Tests|leak tests]] because tshark / wireshark on the host can see connections between {{project_name_workstation_long}} and {{project_name_gateway_long}}.
** KVM: Therefore also leak-testing using [[corridor]] on the host [https://github.com/rustybird/corridor/issues/28 cannot be used].
** KVM: A useful host firewall and/or VPN fail closed mechanism (even if Freedom Software) can break Whonix-Workstation KVM network connectivity. References:
*** KVM: [https://forums.whonix.org/t/no-internet-connection-on-workstation-when-vpn-on-host/13763 host software such as for example NordVPN client kill-switch can break Whonix-Workstation KVM network connectivity.]
*** https://forums.whonix.org/t/failure-to-connect-when-vpn-on-host/3133
** KVM: [[Undocumented]] how to use a host VPN (and therefore [https://www.reddit.com/r/Whonix/comments/zlfr96/nonwhonix_virtual_machines_kvm_cant_connect_to/ failing]).
** KVM potential solution: [https://forums.whonix.org/t/help-welcome-kvm-development-staying-the-course/166/546 Using hubport
to avoid KVM network interfaces being visible on the host operating system]
For the opposite viewpoint, see [[KVM#Why_Use_KVM_Over_VirtualBox?|Why Use KVM Over VirtualBox?]]
=== Why use VirtualBox over Qubes? ===
Qubes issues:
* [https://github.com/QubesOS/qubes-issues/issues/3994 change Qubes network policy, UpdatesProxy to network disabled by default for better leak-proofness]
* [https://github.com/QubesOS/qubes-issues/issues/7614 disallow setting netvm of whonix-ws to a non whonix-gw]
* [https://github.com/QubesOS/qubes-issues/issues/6948 self-contained Qubes templates including meta scripts (salt) / improve Qubes-Whonix installation usability]
* Absence of [https://github.com/QubesOS/qubes-issues/issues/3412 add UpdateVM setting to qubes-vm-settings] feature leads to user confusion which VM will be used as UpdateVM.
* [https://github.com/QubesOS/qubes-issues/issues/7801 Qubes should keep IP forwarding in VMs with the provides network (Net Qube) disabled by default #7801]
* [https://forums.whonix.org/t/qubes-whonix-security-disadvantages-help-wanted/8581 Qubes-Whonix Security Disadvantages]
* [https://github.com/QubesOS/qubes-issues/issues/1856 Tor Browser default screen resolution different between Qubes Debian & Whonix templates versus plain Debian]
* Critical usability issues such as Qubes updater claiming no updates are available even though updates are available, [[Qubes/Update#Warnings|see this]].
* [[Dev/Qubes#Issues|Other issues.]]
Qubes non-issues:
* [[corridor]] leak-tested.
{{Anchor|Is VirtualBox an Insecure Choice?}}
=== Whonix VirtualBox Security ===
{{project_name_long}} is primarily focused on protecting a user's IP address / location.
* See [[Dev/VirtualBox#Why_use_VirtualBox_over_KVM?|Why use VirtualBox over KVM?]]
* See [[Dev/VirtualBox#Why_use_VirtualBox_over_Qubes?|Why use VirtualBox over Qubes?]]
The leak-proofness of a virtualizer matters from the moment of first usage of {{project_name_short}} since avoiding leaks is the primary goal of {{project_name_short}}. The resistance of the virtualizer against [https://en.wikipedia.org/wiki/Virtual_machine_escape virtual machine escape] only matters once the VM was compromised with advanced [[malware]].
A primary reason {{project_name_short}} supports VirtualBox is because it is a familiar, cross-platform virtualizer which can attract more users to Freedom Software, Tor and Linux in general. By remaining highly accessible, Whonix:
* Increases the scope of potential growth in the user base.
* Attracts greater attention as a suitable anonymity-focused operation system.
* Increases the likelihood of additional human resources and monetary contributions.
* Allows novice users to easily test {{project_name_short}} and learn more about security and anonymity practices.
* Improves the relative security and anonymity of Tor / Tor Browser users by offering a virtualized solution.
* See also [[#Arguments for keeping VirtualBox Support|Arguments for keeping VirtualBox Support]].
{{project_name_short}} in VirtualBox vs Tor / Tor Browser / Torified Applications on the Host
It is recognized that VirtualBox is far from being an ideal software project.
A common refrain of critics is that VirtualBox is "too weak". This is a theoretical concern and does not have any practical implications at present, since {{project_name_short}} in VirtualBox is actually more secure than running Tor, Tor Browser or torified applications on the host in many cases; see [[Whonix against Real Attacks|Whonix Track Record against Real Cyber Attacks]].
It is safer for them to run {{project_name_short}} in VirtualBox, rather than continuing to utilize Tor on the host. For example, {{project_name_short}} helps to protect against future [https://blog.torproject.org/firefox-security-bug-proxy-bypass-current-tbbs proxy bypass bugs] or software which [https://blog.torproject.org/bittorrent-over-tor-isnt-good-idea does not honor proxy settings].
The strength of {{project_name_short}} and virtualization in general is adherence to the security by isolation principle. VirtualBox critics need to objectively consider how many exploits currently exist for VirtualBox and the track record of exploits. Admittedly, virtual machine exploits may become far more problematic in the future, but at present {{project_name_short}} is considered to provide more security out of the box running in VirtualBox, than not.
{{project_name_short}} is a poster child for the [https://gitlab.torproject.org/legacy/trac/-/wikis/doc/TorifyHOWTO/IsolatingProxy Isolating Proxy Concept] and [https://theinvisiblethings.blogspot.com/2008/09/three-approaches-to-computer-security.html Security by Isolation].
Many users still default to running Tor on their Windows or Linux host. {{project_name_short}} is immediately available to this cohort to substantially improve their real world security. Indeed, {{project_name_short}} is the only up-to-date OS designed to be run inside a VM and paired with Tor, which is actively maintained and developed. Other similar projects like [https://web.archive.org/web/20191119221814/http://www.janusvm.com/tor_vm/ JanusVM] are seriously outdated and no longer actively maintained. [
In response to whether JanusVM was safe to use, Roger Dingledine of The Tor Project [https://lists.torproject.org/pipermail/tor-talk/2011-December/022446.html stated in 2011]: "No, not safe. Probably has been unsafe to use for years."
]
{{project_name_short}} cannot serve all target audiences. "Hardcore" users may prefer to build their own custom hardened solutions, while still profiting from {{project_name_short}} research and source code. Hardened solutions like the Hardened Gentoo based {{project_name_gateway_short}} are more difficult to use and therefore cannot be set as the default installation for {{project_name_short}}.
== VirtualBox missing features ==
https://www.kicksecure.com/wiki/Dev/VirtualBox#VirtualBox_missing_features
== VirtualBox Unavailable in Debian stable and backports due to Debian Stable Security Maintenance Issues ==
https://www.kicksecure.com/wiki/Dev/VirtualBox#VirtualBox_Unavailable_in_Debian_stable_and_backports_due_to_Debian_Stable_Security_Maintenance_Issues
== VirtualBox Unavailable in Debian main due to Licensing Issues ==
https://www.kicksecure.com/wiki/Dev/VirtualBox#VirtualBox_Unavailable_in_Debian_main_due_to_Licensing_Issues
== VirtualBox Guest Additions ISO Freedom vs Non-Freedom ==
https://www.kicksecure.com/wiki/Dev/VirtualBox#VirtualBox_Guest_Additions_ISO_Freedom_vs_Non-Freedom
== VirtualBox Open Source vs Closed Source ==
https://www.kicksecure.com/wiki/Dev/VirtualBox#VirtualBox_Open_Source_vs_Closed_Source
{{Anchor|VirtualBox Installation Challenges}}
== VirtualBox Integration ==
https://www.kicksecure.com/wiki/Dev/VirtualBox#VirtualBox_Integration
= Fasttrack =
https://www.kicksecure.com/wiki/Dev/VirtualBox#Fasttrack
= Arguments for keeping VirtualBox Support =
* See [[Dev/VirtualBox#Why_use_VirtualBox_over_KVM?|Why use VirtualBox over KVM?]]
* See [[Dev/VirtualBox#Why_use_VirtualBox_over_Qubes?|Why use VirtualBox over Qubes?]]
* [[KVM]] is not available to Windows users.
* Simplicity, as in: [[VirtualBox]] has a VM import GUI feature.
* Available to users not owning computer providing hardware virtualization. ([[KVM]] requires that. [[QEMU]] may or may not but is [[unsupported]].)
* Due to Windows users and simplicity it leads to greater popularity, which in theory attracts more users, developers, auditors, [[payments]], etc and is therefore good for the overall health of the project.
* Some Windows/[[VirtualBox]] users experimenting with their first Linux ({{project_name_short}}) will one day become users who mainly use Linux as their host operating system.
* We have a [[Dev/Windows Installer|{{project_name_short}} Windows Installer]] which installs VirtualBox {{project_name_short}} VirtualBox VMs because of [[Dev/Windows Installer#Rationale|these reasons]].
= VirtualBox Oracle VM VirtualBox Extension Pack =
https://www.kicksecure.com/wiki/Dev/VirtualBox#VirtualBox_Oracle_VM_VirtualBox_Extension_Pack
= Storage Controller Setting =
https://www.kicksecure.com/wiki/Dev/VirtualBox#Storage_Controller_Setting
= Bugs =
== [drm:vmw_host_log [vmwgfx]] ERROR Failed to send log ==
https://www.kicksecure.com/wiki/Dev/VirtualBox#Bugs
== [sda] Incomplete mode parameter data / Assuming drive cache: write through ==
https://www.kicksecure.com/wiki/Dev/VirtualBox#Bugs
{{Anchor|VirtualBox Guest Additions Bugs}}
= Core Dump =
https://www.kicksecure.com/wiki/Dev/VirtualBox#Core_Dump
= VirtualBox Bug Reports =
https://www.kicksecure.com/wiki/Dev/VirtualBox#VirtualBox_Bug_Reports
== What Should Be Included In Bug Report ==
https://www.kicksecure.com/wiki/Dev/VirtualBox#VirtualBox_Bug_Reports
== Resize Issues ==
https://www.kicksecure.com/wiki/Dev/VirtualBox#VirtualBox_Bug_Reports
= Bug Report Draft =
https://www.kicksecure.com/wiki/Dev/VirtualBox#Bug_Report_Draft
= See Also =
* [[VirtualBox]]
* [[VirtualBox Testers Only Version]]
* [[VirtualBox/Recommended Version]]
* [[VirtualBox/Other Versions]]
* [[VirtualBox/Guest Additions]]
* [[VirtualBox/Troubleshooting]]
* [[VirtualBox/Troubleshooting#VirtualBox_Generic_Bug_Reproduction|VirtualBox Generic Bug Reproduction]]
* [[VirtualBox/Appliance is not signed]]
* [[VirtualBox/Higher Screen Resolution without installing VirtualBox Guest Additions]]
* [[Virtualization Platform Security]]
= References =
{{reflist|close=1}}
{{Footer}}
[[Category:Design]]