neowutran / qubes-app-linux-converter

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

IMPORTANT

Status: Seems to work as expected.

TODO:

  • Fedora packaging
  • Dom0 packaging
  • Debian packaging
  • Add warning in CLI and GUI about danger of OCR

Features:

  • Provide all the functionnalities of "qubes-app-linux-pdf-converter"
  • Provide all the functionnalities of my -- currently -- pull request QubesOS/qubes-app-linux-pdf-converter#9
  • Provide most important functionnalities of "qubes-app-linux-img-converter": Done

Extended goals:

  • Sound converter

The password is "toor" for the encrypted tests file

DESCRIPTION

Qubes converter is software designed for Qubes, which utilizes Qubes flexible qrexec (inter-VM communication) infrastructure and Disposable VMs to perform conversion of potentially untrusted (e.g. maliciously malformed) files into safe-to-view files.

This is done by having the Disposable VM perform the complex (and potentially buggy) rendering of the PDF in question) and sending the resulting RGBA bitmap (simple representation) to the client AppVM. The client AppVM can trivially verify the received data are indeed the simple representation, and then construct a new file out of the received bitmap. Of course the price we pay for this conversion is loosing any structural information and text-based search in the converted file.

More discussion and introduction of the concept has been described in the original article here.

CONFIGURATION

To use a custom DisposableVM instead of the default one:

Let’s assume that this custom DisposableVM is called "web". In dom0, add new line in "/etc/qubes-rpc/policy/qubes.Convert":

YOUR_CLIENT_VM_NAME @dispvm allow,target=@dispvm:web

About

License:GNU General Public License v3.0


Languages

Language:Rust 92.4%Language:Shell 3.5%Language:Python 2.5%Language:Makefile 1.3%Language:Ruby 0.3%