Qubes OS

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
Qubes OS
Qubes OS
Qubes OS Desktop
Applications running in different security domains
Developer Invisible Things Lab
Written in {{#property:p277}}
OS family Unix-like
Working state Current
Source model Open source (GPLv2)[1]
Initial release September 3, 2012[2]
Latest release 3.1[3] / March 9, 2016; 2 years ago (2016-03-09)
Latest preview R3.1 rc3[4] / February 24, 2016; 2 years ago (2016-02-24)
Available in Multilingual
Update method Yum (PackageKit)
Package manager RPM Package Manager
Platforms x86-64
Kernel type Microkernel (Xen Hypervisor running minimal Linux-based OSes and others)
Userland Fedora, Debian, Whonix, Microsoft Windows
Default user interface KDE, Xfce
License Free software licenses
(mainly GPL v2[5])
Official website www.qubes-os.org

Qubes OS is a security-focused desktop operating system that aims to provide security through isolation.[6] Virtualization is performed by Xen, and user environments can be based on Fedora, Debian, Whonix, and Microsoft Windows, among other operating systems.[7][8]

On February 16, 2014, Qubes was selected as a finalist of Access Innovation Prize 2014 for Endpoint Security Solution.[9]

Security goals

Security domains scheme

Qubes implements a Security by Isolation approach.[10] The assumption is that there can be no perfect, bug-free desktop environment. Such an environment counts millions of lines of code, billions of software/hardware interactions. One critical bug in any of these interactions may be enough for malicious software to take control over a machine.[11][12]

In order to secure a desktop, a Qubes user should take care of isolating various environments, so that if one of the components gets compromised, the malicious software would get access to only the data inside that environment.[13]

In Qubes, the isolation is provided in two dimensions: hardware controllers are isolated into functional domains (GUI, network and storage domains), whereas the user's digital life is decided in domains with different levels of trust. For instance: work domain (most trusted), shopping domain, random domain (less trusted).[14] Each of those domains is run in a separate virtual machine.

Qubes is not a multiuser system.[15]

System architecture overview

Xen hypervisor and administrative domain (Dom0)

The hypervisor provides isolation between different virtual machines. The administrative domain, also referred to as Dom0, has direct access to hardware. Dom0 hosts the GUI domain and controls the graphics device, as well as input devices, such as keyboard and mouse. The GUI domain runs the X server, which displays the user desktop, and the window manager, which allows the user to start and stop the applications and manipulate their windows.

Integration of the different virtual machines is provided by the Application Viewer, which provides an illusion for the user that applications execute natively on the desktop, while in fact they are hosted (and isolated) in different virtual machines. Qubes integrates all these virtual machines onto one common desktop environment.

Because Dom0 is security-sensitive, it is isolated from the network. It tends to have as little interface and communication with other domains as possible in order to minimize the possibility of an attack originating from an infected virtual machine.[16][17]

Network domain

The network mechanism is the most exposed to security attacks. This is why it is isolated in a separate, unprivileged virtual machine, called the Network Domain.

An additional proxy virtual machine is used for advanced networking configuration.[18]

Storage domain

Disk space is saved by virtue of various virtual machines (VM) sharing the same root file system in a read-only mode. Separate disk storage is only used for userʼs directory and per-VM settings. This allows software installation and updates to be centralized. Of course, some software can be installed only on a specific VM.

Encryption is used to protect the file systems, so that the storage domain cannot read confidential data owned by other domains.

Application Virtual Machines (AppVM)

AppVMs are the virtual machines used for hosting user applications, such as a web browser, an e-mail client or a text editor. For security purpose, these applications can be grouped in different domains, such as “personal”, “work”, “shopping”, “bank”, etc. The security domains are implemented as separate, Virtual Machines (VMs), thus being isolated from each other as if they were executing on different machines.

Some documents or application can be run in disposable VMs through an action available in the file manager. The mechanism follows the idea of sandboxes: after viewing the document or application, then the whole Disposable VM will be destroyed.[19]

Each security domain is labelled by a color, and each window is marked by the color of the domain it belongs to. So it is always clearly visible to which domain a given window belongs.

References

  1. "Qubes OS License".<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  2. "Introducing Qubes 1.0!". September 3, 2012.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  3. "Qubes 3.1". March 9, 2016.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  4. "Qubes OS 3.1 rc3 has been released!". Feb 24, 2016.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  5. https://www.qubes-os.org/doc/QubesLicensing/
  6. "Qubes OS bakes in virty system-level security". The Register. September 5, 2012.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  7. "Qubes OS Templates".<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  8. "Installing and using Windows-based AppVMs".<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  9. "Endpoint Security Prize Finalists Announced!". Michael Carbone. February 13, 2014.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  10. "The three approaches to computer security". Joanna Rutkowska. September 2, 2008.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  11. "Qubes OS: An Operating System Designed For Security". Tom's hardware. August 30, 2011.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  12. "A digital fortress?". The Economist. March 28, 2014.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  13. "How Splitting a Computer Into Multiple Realities Can Protect You From Hackers". Wired. November 20, 2014.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  14. "Partitioning my digital life into security domains". Joanna Rutkowska. March 13, 2011.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  15. Rutkowska, Joanna (3 May 2010). "Google Groups - Qubes as a multi-user system". Google Groups.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  16. "(Un)Trusting your GUI Subsystem". Joanna Rutkowska. September 9, 2010.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  17. "The Linux Security Circus: On GUI isolation". Joanna Rutkowska. April 23, 2011.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  18. "Playing with Qubes Networking for Fun and Profit". Joanna Rutkowska. September 28, 2011.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>
  19. "Qubes To Implement Disposable Virtual Machines". OSnews. June 3, 2010.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>

External links