QubesOS
   HOME

TheInfoList



OR:

Qubes OS is a security-focused desktop operating system that aims to provide
security Security is protection from, or resilience against, potential harm (or other unwanted coercion). Beneficiaries (technically referents) of security may be persons and social groups, objects and institutions, ecosystems, or any other entity or ...
through isolation. Isolation is provided through the use of
virtualization In computing, virtualization (abbreviated v12n) is a series of technologies that allows dividing of physical computing resources into a series of virtual machines, operating systems, processes or containers. Virtualization began in the 1960s wit ...
technology. This allows the segmentation of applications into secure
virtual machine In computing, a virtual machine (VM) is the virtualization or emulator, emulation of a computer system. Virtual machines are based on computer architectures and provide the functionality of a physical computer. Their implementations may involve ...
s called qubes. Virtualization services in Qubes OS are provided by the Xen hypervisor. The runtimes of individual qubes are generally based on a unique system of underlying operating system ''templates''. Templates provide a single, immutable root file system which can be shared by multiple qubes. This approach has two major benefits. First, updates to a given template are automatically "inherited" by all qubes based on it. Second, shared templates can dramatically reduce storage requirements compared to separate VMs with a full operating install per secure domain. The base installation of Qubes OS provides a number of officially supported templates based on the
Fedora A fedora () is a hat with a soft brim and indented crown.Kilgour, Ruth Edwards (1958). ''A Pageant of Hats Ancient and Modern''. R. M. McBride Company. It is typically creased lengthwise down the crown and "pinched" near the front on both sides ...
and
Debian Debian () is a free and open-source software, free and open source Linux distribution, developed by the Debian Project, which was established by Ian Murdock in August 1993. Debian is one of the oldest operating systems based on the Linux kerne ...
Linux distributions. Alternative community-supported templates include Whonix,
Ubuntu Ubuntu ( ) is a Linux distribution based on Debian and composed primarily of free and open-source software. Developed by the British company Canonical (company), Canonical and a community of contributors under a Meritocracy, meritocratic gover ...
,
Arch Linux Arch Linux () is an Open-source software, open source, rolling release Linux distribution. Arch Linux is kept up-to-date by regularly updating the individual pieces of software that it comprises. Arch Linux is intentionally minimal, and is meant ...
,
CentOS CentOS (, from Community Enterprise Operating System; also known as CentOS Linux) is a discontinued Linux distribution that provided a free and open-source community-supported computing platform, functionally compatible with its upstream (softw ...
, or Gentoo. Users may also create their own templates. Operating Systems like Qubes OS are referred to in academia as ''Converged Multi-Level Secure (
MLS Major League Soccer (MLS) is a professional soccer league in North America and the highest level of the United States soccer league system. It comprises 30 teams, with 27 in the United States and 3 in Canada, and is sanctioned by the United ...
) Systems''. Other proposals of similar systems have surfaced and SecureView and
VMware vSphere VMware vSphere (formerly VMware Infrastructure 4) is VMware's cloud computing virtualization platform. It includes vCenter Configuration Manager, as well as vCenter Application Discovery Manager, and the ability of vMotion to move more than o ...
are commercial competitors.


Security goals

Qubes implements a ''Security by Isolation'' approach. The assumption is that there can be no perfect, bug-free desktop environment: such an environment counts millions of lines of code and billions of
software Software consists of computer programs that instruct the Execution (computing), execution of a computer. Software also includes design documents and specifications. The history of software is closely tied to the development of digital comput ...
/ hardware interactions. One critical bug in any of these interactions may be enough for
malicious software Malware (a portmanteau of ''malicious software'')Tahir, R. (2018)A study on malware and malware detection techniques . ''International Journal of Education and Management Engineering'', ''8''(2), 20. is any software intentionally designed to caus ...
to take control of a machine. To secure a desktop using Qubes OS, the user takes care to isolate various environments, so that if one of the components gets compromised, the malicious software would get access to only the data inside that environment. In Qubes OS, the isolation is provided in two dimensions: hardware controllers can be isolated into ''functional domains'' (e.g. network domains, USB controller domains), whereas the user's digital life is divided into ''security domains'' with different levels of trust. For instance: work domain (most trusted), shopping domain, random domain (less trusted). Each of these domains is run in a separate qube. The qubes have passwordless root access (e.g. passwordless
sudo () is a shell (computing), shell command (computing), command on Unix-like operating systems that enables a user to run a program with the security privileges of another user, by default the superuser. It originally stood for "superuser do", a ...
) by default.Passwordless Root Access in VMs
/ref> UEFI Secure Boot is not supported out of the box, but this is not considered a major security issue.Qubes FAQ
/ref> Qubes is not a
multiuser Multi-user software is computer software that allows access by multiple users of a computer. Time-sharing systems are multi-user systems. Most batch processing systems for mainframe computers may also be considered "multi-user", to avoid leavin ...
system.


Installation and System Requirements

As a desktop-focused operating system, Qubes OS targets personal computer hardware. This market is dominated by laptops running Intel and AMD processors and chipsets. The ''minimum'' base system requirements for Qubes OS are: * 64-bit Intel or AMD processor with virtualization extensions * 6 GB of RAM * 32 GB of disk space


User experience

Users interact with Qubes OS in much the same manner that they interact with any standard graphical desktop operating systems with some key differences: * The creation of qubes (security domains) offers the means to create discrete, lean, secure application spaces by linking them to a complete root filesystem using shared templates. * Applications launched from their respective qubes are distinguished by a unique colored window border. * Opening an application for the first time in a given qube may incur a modest delay depending on system hardware. * Sharing files and clipboard paste buffers utilize a special mechanism, as qubes do not share a common clipboard or file system. * Users can create and manage as many qubes as desired to suit their specific requirements.


System architecture overview


Xen hypervisor and domains

The Xen hypervisor provides strong isolation between its hosted virtual machines, called ''domains'' in Xen terminology. The first domain started by Xen is the privileged ''administrative domain'' referred to as ''domain zero'' or more commonly ''dom0''.


The Administrative domain: dom0

As of Qubes OS 4.1.2, the operating system running in dom0 is
Fedora Linux Fedora Linux is a Linux distribution developed by the Fedora Project. It was originally developed in 2003 as a continuation of the Red Hat Linux project. It contains software distributed under various free and open-source licenses and aims to b ...
running a paravirtualized Linux kernel. It is the Linux kernel in dom0 that controls and brokers access to all the physical system hardware, via standard Linux kernel device drivers. The operating system hosts the user's graphical desktop and controls most hardware devices. This includes the graphics device, USB ports, storage and input devices, such as the keyboard and mouse. The base graphical desktop is composed of the
X server X server may refer to: * a display server for the X Window System * X.Org Server, the X.Org Foundation's display server for the X Window System * HPE Integrity Superdome X Server, a line of HPE Integrity Servers HPE Integrity Servers is a ser ...
, the
Xfwm Xfce or XFCE (pronounced as four individual letters, ) is a free and open-source desktop environment for Linux and other Unix-like operating systems. Xfce aims to be fast and lightweight while still visually appealing and easy to use. The deskt ...
window manager A window manager is system software that controls the placement and appearance of window (computing), windows within a windowing system in a graphical user interface. Most window managers are designed to help provide a desktop environment. They ...
and the
XFCE Xfce or XFCE (pronounced as four individual letters, ) is a Free and open-source software, free and open-source desktop environment for Linux and other Unix-like operating systems. Xfce aims to be fast and Lightweight software, lightweight whil ...
desktop A desktop traditionally refers to: * The surface of a desk (often to distinguish office appliances that fit on a desk, such as photocopiers and printers, from larger equipment covering its own area on the floor) Desktop may refer to various compu ...
. By design, dom0 has the least possible direct interaction with the qubes in order to minimize the possibility of an attack originating from there. Updates to the dom0 operating system and the included Template OS images are performed via a special mechanism which does not require dom0 operating system to connect directly to a network.


The User domains: qubes

An app qube (an instance of a qube) provides secure, compartmentalized execution of standard user applications such as a
web browser A web browser, often shortened to browser, is an application for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's scr ...
, an
email client An email client, email reader or, more formally, message user agent (MUA) or mail user agent is a computer program used to access and manage a user's email. A web application which provides message management, composition, and reception functio ...
or a
text editor A text editor is a type of computer program that edits plain text. An example of such program is "notepad" software (e.g. Windows Notepad). Text editors are provided with operating systems and software development packages, and can be used to c ...
. Operation of app qubes is controlled by the ''Qube Manager''. It launches the discrete app qubes and presents their applications on the desktop of dom0 as normal process windows. This mechanism follows the idea of a
sandbox A sandbox is a sandpit, a wide, shallow playground construction to hold sand, often made of wood or plastic. Sandbox or sand box may also refer to: Arts, entertainment, and media * Sandbox (band), a Canadian rock music group * Sandbox (Gu ...
. After running the application, viewing the document, etc., the whole disposable will be destroyed on shutdown. Qubes OS integrates all of the app qubes into a single common
desktop environment In computing, a desktop environment (DE) is an implementation of the desktop metaphor made of a bundle of programs running on top of a computer operating system that share a common graphical user interface (GUI), sometimes described as a graphi ...
. The identity of each app qube for a given process is provided by an unforgeable, colored window border which is defined in the properties of the app qube. Disk usage in dom0 is minimized by allowing multiple app qubes to share a common "template" root file system image maintained in read-only mode. Additional disk storage is only used for userʼs applications, data and per-VM settings.


Network domain

The network mechanism is the most exposed to security attacks. To circumvent this, it is isolated in a separate, unprivileged qube, named the ''net qube''. Another ''
firewall Firewall may refer to: * Firewall (computing), a technological barrier designed to prevent unauthorized or unwanted communications between computer networks or hosts * Firewall (construction), a barrier inside a building, designed to limit the spre ...
Domain'' is used to house the Linux-kernel-based firewall, so that even if the network domain is compromised, the firewall is still isolated and protected (as it is running in a separate Linux kernel in a separate VM).


Reception

Security and privacy experts such as
Edward Snowden Edward Joseph Snowden (born June 21, 1983) is a former National Security Agency (NSA) intelligence contractor and whistleblower who leaked classified documents revealing the existence of global surveillance programs. Born in 1983 in Elizabeth ...
, Daniel J. Bernstein, and Christopher Soghoian have publicly praised the project. Jesse Smith wrote a review of Qubes OS 3.1 for DistroWatch Weekly: Kyle Rankin from
Linux Journal ''Linux Journal'' (''LJ'') is an American monthly technology magazine originally published by Specialized System Consultants, Inc. (SSC) in Seattle, Washington since 1994. In December 2006 the publisher changed to Belltown Media, Inc. in Hous ...
reviewed Qubes OS in 2016: In 2014, Qubes was selected as a finalist of Access Innovation Prize 2014 for Endpoint Security, run by the international human rights organization
Access Now Access Now is a non-profit organization headquartered in Brooklyn, New York City, in the United States. It was founded in California in July 2009 and focuses on digital civil rights. The organization issues reports on global Internet censorship, ...
.


See also

* Hyperjacking * Whonix


Notes

;References


External links

*
Qubes OS
on DistroWatch {{FOSS 2012 software Linux distributions Operating system security RPM-based Linux distributions Tor onion services X86-64 Linux distributions