A curated list of awesome qubes os links
Go to file
xn0px90 a831e90bf7 fixed section
Signed-off-by: xn0px90 <xn0px90@users.noreply.github.com>
2023-11-20 21:54:11 -05:00
.github Update main.yml 2023-02-10 17:35:45 -07:00
CONTRIBUTING.md Update CONTRIBUTING.md. 2023-01-10 22:08:51 -08:00
LICENSE add docs 2022-04-05 08:35:47 -04:00
README.md fixed section 2023-11-20 21:54:11 -05:00

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&G?~^^~?G&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#5!^::^^^^::^!YB@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#P7^:::^^^^^^^^^^:::^75#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&G?~:::^^^^^^^^^^^^^^^^^^:::~?P&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&BJ!^::^^^^^^^^^^^^::^^^^^^^^^^^^::^~JG&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@#5!^:::^^^^^^^^^^^:::~77~^::^^^^^^^^^^^^::^!Y#@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@J^::^^^^^^^^^^^:::^7P#@@@@&P?~:::^^^^^^^^^^:::^Y@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@G!7!!~^^^^^^^::^!Y#@@@@@@@@@@@@#57^::^^^^^^~!?Y5YB@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@G!77777!~~^:~JB&@@@@@@@@@@@@@@@@@@&BY~^^!?J55555YB@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@G!77777777!Y@@@@@@@@@@@@@@@@@@@@@@@@@@PY55555555YB@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@G!77777777!B@@@@@@@@@@@@@@@@@@@@@@@@@@&Y55555555YB@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@G!77777777!B@@@@@@@@@@@@@@@@@@@@@@@@@@&Y55555555YB@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@G!77777777!B@@@@@@@@@@@@@@@@@@@@@@@@@@&Y55555555YB@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@G!77777777!B@@@@@@@@@@@@@@@@@@@@@@@@@@&Y55555555YB@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@G!77777777!B@@@@@@@@@@@@@@@@@@@@@@@@@@&Y55555555YB@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@G!77777777!G@@@@@@@@@@@@@@@@@@@@@@@@@@&Y55555555YB@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@G!77777777!?#@@@@@@@@@@@@@@@@@@@@@@@@&P555555555YB@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@G!777777777!!7YB&@@@@@@@@@@@@@@@@@#GP55555555555YB@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@#!!7777777777!!!!?5#&@@@@@@@@@&BP5YY555555555555Y#@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@#J!!!!7777777777!!!7JP#&@&BP5YY5555555555555Y5P#@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@&BY?!!!77777777777!!!7Y5Y5555555555555555G#&@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&GJ7!!!77777777777Y55555555555555555P#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#PJ7!!!7777777Y555555555555555555Y5PG#@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&B5?!!!!777Y5555Y55YY555555555555YY5&@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&BY?!!!Y555G#&@#GP555555555555P#@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#GPB#&@@@@@@@@&BP55555PG#&@@@@@@@@@@@@@@@@@@@@@@@@@@@

                _                                    ___      __                 ___  ___
               /_\__ __ _____ ___ ___ _ __  ___     /   \ _  _| |__  ___ ___    / _ \/ __|
              / _ \ V  V / -_|_-</ _ \ '  \/ -_)   | (_) | || | '_ \/ -_|_-<   | (_) \__ \
             /_/ \_\_/\_/\___/__/\___/_|_|_\___|    \__\_\\_,_|_.__/\___/__/    \___/|___/

Awesome Qubes OS Track Awesome ListAwesome

A security-focused desktop operating system that aims to provide security through isolation.

This list is a collection of tools, projects, images, and resources conforming to the Awesome Manifesto.

Contributions very welcome but first see Contributing.

Table of Contents

Qubes OS Websites

System Information & Requirements

  • Architecture - Qubes implements a security-by-compartmentalization approach.
  • Audio virtualization - VMs on Qubes OS have access to virtualized audio through the PulseAudio module.
  • Certified Hardware - We aim for these vendors to be as diverse as possible in terms of geography, cost, and availability.
  • Community-recommended hardware - Community-recommended computers.
  • Hardware compatibility list (HCL) - The HCL is a compilation of reports generated and submitted by users across various Qubes versions about their hardwares compatibility with Qubes.
  • System Requirements - User documentation / Choosing your hardware.
  • Security design goals - Qubes makes is that now the attacker doesnt have access to all the software running in the other domains.
  • Security-critical code - A list of security-critical (i.e., trusted) code components in Qubes OS.
  • Storage pools - Qubes OS implements a security-by-isolation (or security-by-compartmentalization) approach by providing the ability to easily create many security domains.
  • Secondary storage - hese steps assume you have already created a separate volume group and thin pool (not thin volume) for your HDD.
  • Networking - In Qubes, the standard Xen networking is used, based on backend driver in the driver domain and frontend drivers in VMs.
  • Config files - These files are placed in /rw, which survives a VM restart. That way, they can be used to customize a single VM instead of all VMs based on the same template. The scripts here all run as root.
  • Disposable customization - A disposable can be based on any app qube.
  • How to install software in dom0 - How to install a specific package
  • How to make any file persistent (bind-dirs) - With bind-dirs any arbitrary files or folders can be made persistent in app qubes.
  • How to mount a Qubes partition from another OS - When a Qubes OS install is unbootable or booting it is otherwise undesirable, this process allows for the recovery of files stored within the system.
  • Installing contributed packages - This page is for users who wish to install contributed packages.
  • Managing qube kernels - By default, VMs kernels are provided by dom0.
  • Qubes service - Usage documentation is in the qvm-service man page.
  • RPC policies - This document explains the basics of RPC policies in Qubes.
  • Resize disk image - By default Qubes uses thin volumes for the disk images.
  • Standalones and HVMs - A standalone is a type of qube that is created by cloning a template. Unlike templates, however, standalones do not supply their root filesystems to other qubes.
  • Volume backup and revert - With Qubes, it is possible to revert one of a VMs storage volumes to a previous state using the automatic snapshot that is normally saved every time a VM is shutdown.

Downloading, Installing, Upgrading, and Building

How-to guides

Templates

  • Creating a NetBSD VM - Creating a NetBSD VM.
  • Customizing Fedora minimal templates - FEDORA Packages Recommendations.
  • Customizing Windows 7 templates - Disable/Uninstall unnecessary features/services.
  • Debian templates - The Debian template is an officially supported template in Qubes OS.
  • Fedora templates - The Fedora template is the default template in Qubes OS.
  • Minimal templates - The minimal templates are lightweight versions of their standard template counterparts.
  • Pentesting: BlackArch - BlackArch Linux is an Arch Linux-based distribution for penetration testers and security researchers.
  • Pentesting: Kali - How to create a Kali Linux VM.
  • Pentesting: PTF - "The PenTesters Framework (PTF) is a Python script designed for Debian/Ubuntu/ArchLinux based distributions to create a similar and familiar distribution for Penetration Testing.
  • Template: CentOS - You can install the CentOS template, provided by Qubes in ready to use binary package.
  • Template: Gentoo - You can install the Gentoo template, provided by Qubes in ready to use binary package.
  • Template: Ubuntu - If you would like to use Ubuntu Linux distribution in your AppVMs, you can build and install one of the available Ubuntu templates.
  • Template: Whonix -Whonix in Qubes replaces the deprecated TorVM service used in earlier versions of Qubes.
  • Template: Windows - Simple Windows install
  • Templates - In Getting Started, we covered the distinction in Qubes OS between where you install your software and where you run your software.
  • Template implementation - Describes template implementation.
  • Template manager - A template manager application.
  • Tips for Using Linux in an HVM - Tips for Linux in HVM domain.
  • USB Qubes
  • Xfce templates - If you would like to use Xfce (more lightweight compared to GNOME desktop environment) Linux distribution in your Qubes, you can install one of the available Xfce templates for Fedora, CentOS or Gentoo.

VM-Hardening

  • Kicksecure - The following list of actionable items can help to improve security on the Qubes platform, and by extension Kicksecure ™ for Qubes users.
  • Qcrypt -qcrypt is a multilayer encryption tool for Qubes OS.
  • Qubes-VM-hardening - Leverage Qubes template non-persistence to fend off malware at VM startup: Lock-down, quarantine and check contents of /rw private storage that affect the execution environment.
  • Anonymizing your MAC Address - Although the MAC address is not the only metadata broadcast by network hardware, changing your hardware's default MAC Address could be an important step in protecting privacy.
  • Anti Evil Maid (AEM) - A user who frequently travels with a Qubes laptop holding sensitive data may be at a much higher risk of Evil Maid attacks than a home user with a stationary Qubes desktop.
  • Data leaks - Firewalling in Qubes is not intended to be a leak-prevention mechanism.
  • Device handling security - Any additional ability a VM gains is additional attack surface.
  • Firewall - Every Qube in Qubes is connected to the network via a FirewallVM, which is used to enforce network-level policies.
  • Passwordless root access in Qubes - In Qubes VMs there is no point in isolating the root account from the user account.
  • Reducing the fingerprint of the text-based web browser w3m - You can reduce the amount of information w3m gives about itself and the environment it is running in (and, by extension, you).
  • Running Tails in Qubes - Tails stands for The Amnesic Incognito Live System.
  • SaltStack (management software)
  • Signal - It uses end-to-end encryption to secure all communications.
  • Split GPG - Split GPG implements a concept similar to having a smart card with your private GPG keys, except that the role of the “smart card” is played by another Qubes app Qube.
  • Split SSH - Split SSH implements a concept similar to having a smart card with your private SSH keys, except that the role of the “smart card” is played by another Qubes AppVM.
  • Split dm-crypt - Instead of directly attaching an encrypted LUKS1 partition from a source VM such as sys-usb to a destination VM and decrypting it there.
  • U2F proxy - The Qubes U2F Proxy is a secure proxy intended to make use of U2F two-factor authentication devices with web browsers without exposing the browser to the full USB stack, not unlike the USB keyboard and mouse proxies implemented in Qubes.
  • Using Multi-Factor Authentication with Qubes - This page concerns multi-factor authentication for logging into external services, not for logging into Qubes itself.
  • Using OnlyKey with Qubes OS - The following setup instructions walk through the process of configuring dom0 and a USB qube so that OnlyKey will function as a keyboard and be able to communicate with the OnlyKey app (required for TOTP).
  • Qrexec: secure communication across domains - The qrexec framework is used by core Qubes components to implement communication between domains.
  • Qrexec: Qubes RPC internals - The qrexec framework consists of a number of processes communicating with each other using a common IPC protocol, described in detail below.
  • Qrexec: socket-based services - The qrexec allows implementing services not only as executable files, but also as Unix sockets.
  • Qubes memory manager (qmemman) - Provides automatic balancing of memory across participating PV and HVM domains, based on their memory demand
  • TUFF - We can think of a software update system as “secure” if:
  • YubiKey - Most use cases for the YubiKey can be achieved exactly as described by the manufacturer or other instructions found online.

Desktop Customization

GPU

Clearnet & Anonymous Networking

Wireguard

  • Mullvad VPN (FE36 + WG) - Privacy-first VPN provider's guide for Qubes OS. This guide bears an optimal method for setting up a WG ProxyVM (i.e sys-vpn); you may substitute out Mullvad's WG configuration files in place of your own.
  • WireGuard - WireGuard: fast, modern, secure VPN tunnel.

OpenVPN

Anonymity

  • i2p-Whonix - Temporary way to run i2p on Qubes-Whonix.
  • ipfs - A peer-to-peer hypermedia protocol to make the web faster, safer, and more open.
  • Lokinet - Lokinet is the reference implementation of LLARP (low latency anonymous routing protocol), a layer 3 onion routing protocol.
  • Whonix - Qubes-Whonix ™ is the seamless combination of Qubes OS and Whonix™ for advanced security and anonymity.

Crypto

  • Split Bitcoin Wallet - A "split" bitcoin wallet is a strategy of protecting your bitcoin by having your wallet split into an offline "cold storage" wallet and an online "watching only" wallet.
  • Awesome-DeSci - A curated list of awesome Decentralized Science (DeSci) resources, projects, articles and more.

Kernels

  • eBPF - eBPF is a revolutionary technology with origins in the Linux kernel that can run sandboxed programs in an operating system kernel.

Microkernels

  • OpenXT - OpenXT is an open-source development toolkit for hardware-assisted security research and appliance integration.
  • Qubes-linux-kernel - Qubes package for Linux kernel.
  • seL4 - seL4 is a high-assurance, high-performance operating system microkernel.

Unikernels

  • Awesome-Unikernels - Secure, lightweight and high performance approach to application delivery.
  • ClickOS - Efficient network function virtualization platform, optimized for Xen and developed by NEC.
  • Clive - Research project from Rey Juan Carlos University (Madrid), developed in Go.
  • HaLVM - Port of Glasgow Haskell compiler producing Xen optimized unikernels.
  • Mini-OS - Reference kernel distributed with Xen.
  • Qubes-Mirage-Firewall - A unikernel that can run as a Qubes OS ProxyVM, replacing sys-firewall.

Unikernel-like

  • Drawbridge - Research prototype platform from Microsoft.
  • Graphene - Library OS optimized for Intel SGX.

Exploitation Tools

  • Awesome-Fuzzing - A curated list of references to awesome Fuzzing for security testing. Additionally there is a collection of freely available academic papers, tools and so on.
  • AFL++ - AFL++ is a superior fork to Google's AFL - more speed, more and better mutations, more and better instrumentation, custom module support, etc.
  • Bonzai - It's like a modular, multicall BusyBox builder for Go with built in completion and embedded documentation support.
  • CodeQL - Discover vulnerabilities across a codebase with CodeQL.
  • Joern - Joern is a platform for analyzing source code, bytecode, and binary executables. It generates code property graphs (CPGs), a graph representation of code for cross-language code analysis.
  • LeechCore - The LeechCore Memory Acquisition Library focuses on Physical Memory Acquisition using various hardware and software based methods.
    • LeechCore-Plugins - This repository contains various plugins for LeechCore - Physical Memory Acquisition Library.
  • Libvmi - LibVMI is a C library with Python bindings that makes it easy to monitor the low-level details of a running virtual machine.
  • Lldb - LLDB is a next generation, high-performance debugger.
  • Memflow - memflow is a library that enables introspection of various machines (hardware, virtual machines, memory dumps) in a generic fashion.
  • Capstone - Capstone is a lightweight multi-platform, multi-architecture disassembly framework.
  • Coredump - Access Microsoft Windows Coredump files.
  • Kvm - KVM memflow connector.
  • Pcileech - Access pcileech interface.
  • Qemu_procfs - Access QEMU Physical memory.
  • Unicorn - Unicorn is a lightweight multi-platform, multi-architecture CPU emulator framework.
  • MemProcFS - MemProcFS is an easy and convenient way of viewing physical memory as files in a virtual file system.
    • MemProcFS-Plugins - This repository contains various non-core plugins for MemProcFS - The Memory Process File System.
  • Microlibvmi - A cross-platform unified Virtual Machine Introspection API library.
  • Radare2 - Libre Reversing Framework for Unix Geeks.
  • Volatility3 - Volatility is the world's most widely used framework for extracting digital artifacts from volatile memory (RAM) samples.

Optics and Extra Info

Xen Exploitation

Web articles

Qubes OS Server

Qubes OS Legends

Training and Materials

  • Training-materials - A Collection of training materials for Qubes OS.
  • Qubes-diagrams - Qubes OS architecture diagrams.
  • Qubes-artwork - This repository contains various artworks for Qubes OS.
  • pwn.college - pwn.college is an education platform for students (and other interested parties) to learn about, and practice, core cybersecurity concepts in a hands-on fashion.
  • Anonymous Planet - The Hitchhikers Guide to Online Anonymity: the comprehensive guide for online anonymity and OpSec.
  • The Book of Secret Knowledge - A collection of inspiring lists, manuals, cheatsheets, blogs, hacks, one-liners, cli/web tools, and more.
  • xn0px90 - Qubes training every second and fourth weekends of every month, from Friday to Monday, covering beginner, intermediate, and advanced levels.

Streamers

  • Infosecstreams - An actively maintained activity-based-autosorted list of InfoSec Streamers
  • xn0px90 - First Full Time Info-Sec Qubes-OS Streamer!

Companies using Qubes OS

  • Qubes Partners - The Qubes Project relies greatly on the generous support of the organizations, companies, and individuals who have become Qubes Partners.

Social media

The Qubes OS Project has a presence on the following social media platforms:

Releases

Adventure Further

:|: ADVENTURE FURTHER :|: HACK ALL THE THINGS :|: TRUST NOTHING :|: WITH <3! ~X

Contributing

Contribution guidelines can be found here.

License

Creative Commons License

This work is licensed under a Creative Commons Attribution 1.0 Generic.