Ngagunakeun QubesOS pikeun digawe sareng Windows 7

Henteu seueur tulisan ngeunaan Habré anu dikhususkeun pikeun sistem operasi Qubes, sareng anu kuring parantos ningali henteu ngajelaskeun seueur pangalaman dina ngagunakeunana. Di handap cut, abdi miharep pikeun ngabenerkeun ieu ngagunakeun conto ngagunakeun Qubes salaku sarana panyalindungan (ngalawan) lingkungan Windows jeung, dina waktos anu sareng, estimasi jumlah pamaké Rusia-diomongkeun tina sistem.

Ngagunakeun QubesOS pikeun digawe sareng Windows 7

Naha Qubes?

Carita tungtung pangrojong téknis pikeun Windows 7 sareng paningkatan kahariwang pangguna nyababkeun kabutuhan pikeun ngatur karya OS ieu, kalayan nganggap sarat ieu:

  • mastikeun pamakéan pinuh diaktipkeun Windows 7 kalawan kamampuhan pikeun pamaké pikeun masang apdet sarta sagala rupa aplikasi (kaasup via Internet);
  • ngalaksanakeun pangaluaran lengkep atanapi selektif tina interaksi jaringan dumasar kana kaayaan (operasi otonom jeung modus nyaring lalulintas);
  • nyadiakeun kamampuhan pikeun selektif nyambungkeun média jeung alat removable.

set larangan ieu presupposes a pamaké jelas disiapkeun, saprak administrasi bebas diwenangkeun, sarta larangan henteu patali jeung blocking lampah poténsi na, tapi pikeun pangaluaran kamungkinan kasalahan atawa épék software destructive. Jelema. Henteu aya palaku internal dina modél.

Dina milarian solusi, urang gancang-gancang ngantunkeun ide pikeun ngalaksanakeun larangan nganggo alat Windows anu diwangun atanapi tambahan, sabab sesah sacara efektif ngabatesan pangguna anu gaduh hak administrator, nyésakeun anjeunna kamampuan pikeun masang aplikasi.

Solusi salajengna nyaéta isolasi ngagunakeun virtualisasi. Alat anu kasohor pikeun virtualisasi desktop (contona, sapertos virtualbox) kirang cocog pikeun ngarengsekeun masalah kaamanan sareng larangan anu didaptarkeun kedah dilakukeun ku pangguna ku cara ngagentos atanapi nyaluyukeun sipat mesin virtual tamu (saterusna disebut sakumaha VM), nu ngaronjatkeun résiko kasalahan.

Dina waktos anu sami, urang gaduh pangalaman ngagunakeun Qubes salaku sistem desktop pangguna, tapi gaduh mamang ngeunaan stabilitas damel sareng Windows tamu. Diputuskeun pikeun pariksa versi Qubes ayeuna, sabab watesan nyatakeun pas pisan kana paradigma sistem ieu, khususna palaksanaan template mesin virtual sareng integrasi visual. Salajengna, abdi bakal nyobian ngobrol sakeudeung ngeunaan gagasan jeung parabot Qubes, ngagunakeun conto ngarengsekeun masalah.

Jinis virtualisasi Xen

Qubes dumasar kana Xen hypervisor, nu ngaminimalkeun fungsi ngatur sumberdaya processor, memori sareng mesin virtual. Sadaya karya sejenna sareng alat dikonsentrasikeun dina dom0 dumasar kana kernel Linux (Qubes pikeun dom0 nganggo distribusi Fedora).

Ngagunakeun QubesOS pikeun digawe sareng Windows 7

Xen ngadukung sababaraha jinis virtualisasi (Kuring bakal masihan conto pikeun arsitéktur Intel, sanaos Xen ngadukung anu sanés):

  • paravirtualization (PV) - mode virtualization tanpa pamakéan rojongan hardware, reminiscent tina virtualization wadahna, bisa dipaké pikeun sistem kalawan kernel diadaptasi (dom0 beroperasi dina modeu ieu);
  • virtualization pinuh (HVM) - dina modeu ieu, rojongan hardware dipaké pikeun sumberdaya processor, sarta sakabeh parabot lianna ditiru maké QEMU. Ieu cara paling universal pikeun ngajalankeun rupa sistem operasi;
  • paravirtualization hardware (PVH - ParaVirtualized Hardware) - mode virtualisasi ngagunakeun rojongan hardware nalika, pikeun digawe sareng hardware, kernel sistem tamu ngagunakeun drivers diadaptasi kana kamampuhan tina hypervisor nu (contona, memori dibagikeun), ngaleungitkeun kabutuhan emulation QEMU. sarta ngaronjatkeun kinerja I / O. Kernel Linux mimitian ti 4.11 tiasa dianggo dina modeu ieu.

Ngagunakeun QubesOS pikeun digawe sareng Windows 7

Dimimitian ku Qubes 4.0, pikeun alesan kaamanan, panggunaan mode paravirtualization dileungitkeun (kalebet kusabab kerentanan anu dipikanyaho dina arsitéktur Intel, anu sawaréh diréduksi ku panggunaan virtualisasi pinuh); Modeu PVH dianggo sacara standar.

Lamun ngagunakeun emulation (mode HVM), QEMU diluncurkeun dina VM terasing disebut stubdomain, kukituna ngurangan resiko exploiting poténsi kasalahan dina palaksanaan (proyék QEMU ngandung loba kode, kaasup pikeun kasaluyuan).
Dina kasus urang, mode ieu kedah dianggo pikeun Windows.

Service mesin virtual

Dina arsitektur kaamanan Qubes, salah sahiji kamampuhan konci hypervisor nyaeta mindahkeun alat PCI ka lingkungan tamu. Pangaluaran hardware ngamungkinkeun anjeun ngasingkeun bagian host tina sistem tina serangan éksternal. Xen ngarojong ieu PV na HVM modeu, dina kasus kadua merlukeun rojongan pikeun IOMMU (Intel VT-d) - manajemén memori hardware pikeun alat virtualized.

Ieu nyiptakeun sababaraha mesin virtual sistem:

  • sys-net, dimana alat jaringan ditransferkeun sareng anu dianggo salaku sasak pikeun VM sanés, contona, anu ngalaksanakeun fungsi firewall atanapi klien VPN;
  • sys-usb, dimana USB sareng pangendali alat periferal sanésna ditransfer;
  • sys-firewall, nu teu make alat, tapi jalan salaku firewall pikeun VM disambungkeun.

Pikeun damel sareng alat USB, jasa proxy dianggo, anu nyayogikeun, diantarana:

  • pikeun kelas alat HID (alat panganteur manusa), ngirim paréntah ka dom0;
  • pikeun média removable, redirection volume alat ka VM séjén (iwal dom0);
  • alihan langsung ka alat USB (ngagunakeun USBIP sareng alat integrasi).

Dina konfigurasi sapertos kitu, serangan suksés ngaliwatan tumpukan jaringan atawa alat disambungkeun bisa ngakibatkeun kompromi ngan VM jasa ngajalankeun, teu sakabéh sistem sakabéhna. Sareng saatos ngamimitian deui jasa VM, éta bakal dimuat dina kaayaan aslina.

parabot integrasi VM

Aya sababaraha cara pikeun berinteraksi sareng desktop mesin virtual - masang aplikasi dina sistem tamu atanapi niru pidéo nganggo alat virtualisasi. Aplikasi tamu tiasa rupa-rupa alat aksés jauh universal (RDP, VNC, Spice, jsb) atanapi diadaptasi kana hypervisor khusus (alat sapertos biasana disebut utilitas tamu). Hiji pilihan dicampur ogé bisa dipaké, lamun hypervisor nu emulates I / O pikeun sistem tamu, sarta externally nyadiakeun kamampuhan pikeun ngagunakeun protokol nu ngagabungkeun I / The, Contona, Spice. Dina waktos anu sami, alat aksés jauh biasana ngaoptimalkeun gambar, sabab ngalibatkeun damel via jaringan, anu henteu gaduh pangaruh anu positif kana kualitas gambar.

Qubes nyadiakeun parabot sorangan pikeun integrasi VM. Anu mimiti, ieu mangrupikeun subsistem grafik - windows tina VM anu béda dipintonkeun dina desktop tunggal kalayan pigura warna sorangan. Sacara umum, parabot integrasi dumasar kana kamampuhan tina hypervisor - memori dibagikeun (meja hibah Xen), parabot bewara (channel acara Xen), dibagikeun gudang xenstore sarta protokol komunikasi vchan. Kalayan pitulung maranéhanana, komponén dasar qrexec na qubes-rpc, sarta jasa aplikasi dilaksanakeun - audio atawa USB redirection, mindahkeun file atawa eusi clipboard, executing paréntah sarta aplikasi launching. Kasebut nyaéta dimungkinkeun pikeun nyetél kawijakan nu ngidinan Anjeun pikeun ngawatesan jasa sadia on VM a. Gambar di handap mangrupa conto prosedur pikeun initializing interaksi dua VMs.

Ngagunakeun QubesOS pikeun digawe sareng Windows 7

Ku kituna, gawé di VM dilaksanakeun tanpa ngagunakeun jaringan, anu ngamungkinkeun pamakéan pinuh ku VMs otonom pikeun nyegah leakage informasi. Contona, ieu kumaha separation tina operasi cryptographic (PGP / SSH) dilaksanakeun, nalika konci swasta dipaké dina VM terasing sarta teu balik saluareun aranjeunna.

Témplat, aplikasi sareng hiji-waktos VM

Sadaya karya pamaké di Qubes dipigawé dina mesin virtual. Sistim host utama dipaké pikeun ngadalikeun sarta visualize aranjeunna. OS dipasang babarengan sareng set dasar mesin virtual dumasar-témplat (TemplateVM). Citakan ieu mangrupikeun Linux VM dumasar kana distribusi Fedora atanapi Debian, kalayan alat integrasi dipasang sareng dikonpigurasi, sareng sistem khusus sareng partisi pangguna. Pamasangan sareng ngapdet parangkat lunak dilaksanakeun ku manajer pakét standar (dnf atanapi apt) tina repositori anu dikonpigurasi sareng verifikasi tanda tangan digital wajib (GnuPG). Tujuan VM sapertos kitu nyaéta pikeun mastikeun kapercayaan kana aplikasi VM anu diluncurkeun dina dasarna.

Dina ngamimitian, hiji aplikasi VM (AppVM) ngagunakeun snapshot tina partisi sistem tina template VM pakait, sarta sanggeus parantosan ngahapus snapshot ieu tanpa nyimpen parobahanana. Data anu diperyogikeun ku pangguna disimpen dina partisi pangguna anu unik pikeun tiap aplikasi VM, anu dipasang dina diréktori bumi.

Ngagunakeun QubesOS pikeun digawe sareng Windows 7

Ngagunakeun VMs disposable (disposableVM) tiasa mangpaat tina sudut pandang kaamanan. VM sapertos didamel dumasar kana citakan dina waktos ngamimitian sareng diluncurkeun pikeun hiji tujuan - pikeun ngaéksekusi hiji aplikasi, ngarengsekeun padamelan saatos ditutup. VMs anu tiasa dianggo tiasa dianggo pikeun muka file anu curiga anu eusina tiasa nyababkeun eksploitasi kerentanan aplikasi khusus. Kamampuhan pikeun ngajalankeun hiji-waktos VM diintegrasikeun kana manajer file (Nautilus) sareng klien email (Thunderbird).

Windows VM ogé tiasa dianggo pikeun nyiptakeun citakan sareng VM sakali ku cara mindahkeun profil pangguna ka bagian anu misah. Dina vérsi kami, citakan sapertos kitu bakal dianggo ku pangguna pikeun tugas administrasi sareng pamasangan aplikasi. Dumasar témplat, sababaraha aplikasi VM bakal didamel - kalayan aksés kawates kana jaringan (kamampuan sys-firewall standar) sareng tanpa aksés ka jaringan pisan (alat jaringan virtual henteu didamel). Sadaya perobahan sareng aplikasi anu dipasang dina citakan bakal sayogi pikeun dianggo dina VM ieu, sareng upami program tetengger diwanohkeun, aranjeunna moal gaduh aksés jaringan pikeun kompromi.

Gelut pikeun Windows

Fitur anu dijelaskeun di luhur mangrupikeun dasar Qubes sareng tiasa dianggo sacara stabil; kasusah dimimitian ku Windows. Pikeun ngahijikeun Windows, anjeun kudu make susunan tamu parabot Qubes Windows Pakakas (QWT), nu ngawengku drivers pikeun gawé bareng Xen, supir qvideo sarta susunan Utiliti pikeun bursa informasi (transfer file, clipboard). Proses instalasi sareng konfigurasi didokumentasikeun sacara rinci dina situs wéb proyék, ku kituna kami bakal ngabagi pangalaman aplikasi kami.

Kasusah utama nyaéta kurangna dukungan pikeun alat anu dikembangkeun. Key Developers (QWT) katingalina henteu sayogi sareng proyék integrasi Windows ngantosan pamekar timah. Ku alatan éta, mimiti sagala, éta diperlukeun pikeun meunteun kinerja sarta ngabentuk pamahaman kamungkinan ngarojong eta sacara mandiri, upami diperlukeun. Anu paling hese pikeun ngembangkeun sareng debug nyaéta supir grafik, anu niru adaptor pidéo sareng tampilan pikeun ngahasilkeun gambar dina mémori anu dibagikeun, ngamungkinkeun anjeun pikeun ningalikeun sadayana desktop atanapi jandela aplikasi langsung dina jandela sistem host. Salila analisa operasi supir, urang diadaptasi kode pikeun assembly di lingkungan Linux Ubuntu jeung digawé kaluar skéma debugging antara dua sistem tamu Windows. Dina tahap crossbuild kami nyieun sababaraha parobahan anu disederhanakeun hal pikeun urang, utamana dina watesan "jempé" instalasi utilitas, sarta ogé ngaleungitkeun degradasi bangor kinerja nalika digawé di VM keur lila. Urang dibere hasil karya dina misah repositories, sahingga teu lila mereun Kalungguhan Qubes pamekar.

Tahap anu paling kritis dina hal stabilitas sistem tamu nyaéta ngamimitian Windows, di dieu anjeun tiasa ningali layar biru anu akrab (atanapi henteu ningali éta). Kanggo sabagéan ageung kasalahan anu diidentifikasi, aya sababaraha solusi - ngaleungitkeun supir alat blok Xen, nganonaktipkeun kasaimbangan mémori VM, ngalereskeun setélan jaringan, sareng ngaminimalkeun jumlah inti. parabot tamu urang ngawangun installs tur ngajalankeun on pinuh diropéa Windows 7 jeung Windows 10 (iwal qvideo).

Nalika mindahkeun tina lingkungan nyata ka lingkungan maya, timbul masalah nalika ngaktipkeun Windows upami versi OEM anu tos dipasang dianggo. Sistem sapertos kitu nganggo aktivasina dumasar kana lisénsi anu ditunjuk dina UEFI alat. Pikeun leres ngolah aktivasina, anjeun kedah narjamahkeun salah sahiji sadaya bagian ACPI tina sistem host (méja SLIC) kana sistem tamu sareng rada ngédit anu sanés, ngadaptar produsén. Xen ngamungkinkeun anjeun ngarobih eusi ACPI tina tabel tambahan, tapi tanpa ngarobih anu utama. A patch ti proyék OpenXT sarupa, nu diadaptasi pikeun Qubes, mantuan jeung solusi. Perbaikan sigana mangpaat henteu ngan pikeun urang sareng ditarjamahkeun kana gudang Qubes utama sareng perpustakaan Libvirt.

Karugian atra tina alat integrasi Windows kalebet kurangna dukungan pikeun audio, alat USB, sareng pajeulitna damel sareng média, sabab teu aya dukungan hardware pikeun GPU. Tapi di luhur henteu nyegah pamakean VM pikeun damel sareng dokumén kantor, sareng henteu nyegah peluncuran aplikasi perusahaan khusus.

Sarat pikeun pindah ka modeu operasi tanpa jaringan atawa ku jaringan kawates sanggeus nyieun template Windows VM ieu kaeusi ku nyieun konfigurasi luyu tina aplikasi VMs, sarta kamungkinan selektif nyambungkeun média removable ieu ogé direngsekeun ku parabot OS baku - lamun disambungkeun. , aranjeunna sadia dina sistem VM sys-usb, ti mana maranéhna bisa "diteruskeun" ka VM diperlukeun. Desktop pamaké kasampak kawas kieu.

Ngagunakeun QubesOS pikeun digawe sareng Windows 7

Versi ahir sistem éta positif (sajauh sapertos solusi komprehensif ngamungkinkeun) ditarima ku pamaké, sarta parabot baku sistem ngamungkinkeun pikeun dilegakeun aplikasi ka workstation mobile pamaké kalawan aksés via VPN.

Gantina kacindekan

Virtualisasi sacara umum ngamungkinkeun anjeun ngirangan résiko ngagunakeun sistem Windows anu ditinggalkeun tanpa dukungan - éta henteu maksakeun kasaluyuan sareng hardware énggal, éta ngamungkinkeun anjeun ngaluarkeun atanapi ngontrol aksés kana sistem liwat jaringan atanapi ngalangkungan alat anu disambungkeun, sareng ngamungkinkeun anjeun nerapkeun lingkungan peluncuran hiji-waktos.

Dumasar kana ide ngasingkeun ngaliwatan virtualisasi, Qubes OS ngabantosan anjeun ngungkit ieu sareng mékanisme kaamanan anu sanés. Ti luar, loba jalma ningali Qubes utamana salaku kahayang pikeun anonymity, tapi éta sistem mangpaat pikeun insinyur, anu mindeng juggle proyék, infrastruktur, jeung Rahasia pikeun ngakses aranjeunna, sarta pikeun peneliti kaamanan. Pamisahan aplikasi, data sareng formalisasi interaksina mangrupikeun léngkah awal analisis ancaman sareng desain sistem kaamanan. Pemisahan ieu ngabantosan struktur inpormasi sareng ngirangan kamungkinan kasalahan kusabab faktor manusa - rurusuhan, kacapean, jsb.

Ayeuna, tekenan utama dina pangwangunan nyaéta pikeun ngalegaan fungsionalitas lingkungan Linux. Vérsi 4.1 keur disiapkeun keur release, nu bakal dumasar kana Fedora 31 tur kaasup versi ayeuna tina komponén konci Xen na Libvirt. Perhatos yén Qubes didamel ku para profesional kaamanan inpormasi anu sok gancang ngaleupaskeun apdet upami aya ancaman atanapi kasalahan énggal.

afterword

Salah sahiji kamampuan ékspérimén anu kami kembangkeun ngamungkinkeun urang nyiptakeun VM kalayan dukungan pikeun aksés tamu ka GPU dumasar kana téknologi Intel GVT-g, anu ngamungkinkeun urang ngagunakeun kamampuan adaptor grafik sareng sacara signifikan dilegakeun ruang lingkup sistem. Dina waktos nyerat, fungsionalitas ieu dianggo pikeun uji ngawangun Qubes 4.1, sareng sayogi dina github.

sumber: www.habr.com

Tambahkeun komentar