Përdorimi i QubesOS për punë me Windows 7

Në Habr nuk ka aq shumë artikuj për sistemin operativ Qubes, dhe ata që kam parë pak përshkruajnë përvojën e aplikimit. Nën këtë, shpresoj të korrigjoj këtë me shembuj të përdorimit të Qubes si një mjet mbrojtës të mjedisit Windows dhe, për rrjedhojë, të vlerësoj numrin e përdoruesve të gjuhës ruse të sistemit.

Përdorimi i QubesOS për punë me Windows 7

Pse Qubes?

Historia me përfundimin e mbështetjes teknike për Windows 7 dhe rritja e shqetësimit të përdoruesve solli nevojën për të organizuar punën e këtij sistemi operative, duke marrë parasysh kërkesat e mëposhtme:

  • të siguroni përdorimin e një Windows 7 të aktivizuar plotësisht me mundësinë për përdoruesin të instaloje përditësime dhe aplikacione të ndryshme (përfshirë përmes Internetit);
  • të zbatoni përjashtimin e plotë ose të veçantë të ndërveprimeve rrjet, sipas kushteve (modalitete të punës jashtë linje dhe filtrimi të trafikut);
  • të ofroni mundësinë e lidhjes selektive të mediave dhe pajisjeve të lëvizshme.

Ky grup kufizimesh nënkupton një përdorues të përgatitur qartë, pasi lejohet administrimi i pavarur, dhe kufizimet nuk lidhen me bllokimin e veprimeve të tij të mundshme, por me përjashtimin e gabimeve të mundshme ose ndikimeve dëmtuese programore. Tani, nuk ka ndonjë shkelës të brendshëm në model.

Në kërkim të zgjidhjes, ne shpejt heqëm dorë nga ideja për të realizuar kufizimet me mjete të ndërtuara ose shtesë të Windows, pasi është mjaft e vështirë të kufizosh përdoruesin me privilegje administratori, duke i lënë mundësinë për të instaluar aplikacione.

Opcioni tjetër i zgjidhjes ishte izolimi përmes virtualizimit. Mjetet më të njohura për virtualizimin desktop (p.sh. si virtualbox) janë të pamjaftueshme për zgjidhjen e problemeve të sigurisë dhe kufizimet e përmendura duhet të realizohen nga përdoruesi duke kaluar vazhdimisht ose duke konfiguruar parametrat e makinës virtuale (më pas VM), çfarë rrit rrezikun e gabimeve.

Megjithatë, ne kemi eksperiencë në përdorimin e Qubes si një sistem operativ për desktop, por pasiguria në stabilitetin e funksionimit me Windows si mysafir ishte shqetësuese. U vendos të kontrollohej versioni aktual i Qubes, pasi kufizimet e vendosura përputhen shumë mirë me paradigmat e këtij sistemi, veçanërisht realizimi i template-ve të makinave virtuale dhe integrimi vizual. Më pas do të përpiqem të tregoj shkurtimisht idetë dhe mjetet e Qubes duke ilustruar zgjidhjen e shkallës së caktuar.

Llojet e virtualizimit Xen

Qubes bazohet në hipervizorin Xen, i cili minimizon funksionet e menaxhimit të burimeve të procesorit, memories dhe makinave virtuale. Të gjitha punët e tjera me pajisjet përqendrohen në dom0 bazuar në bërthamën Linux (në Qubes për dom0 përdoret distribuim Fedora).

Përdorimi i QubesOS për punë me Windows 7

Xen mbështet disa lloje virtualizimi (do të jap shembuj për arkitekturën Intel, megjithëse Xen mbështet edhe të tjera):

  • Paravirtualizimi (PV) - një modus virtualizimi pa përdorimin e mbështetjes harduerike, që ngjason me virtualizimin në konteiner, mund të përdoret për sisteme me bërthama të përshtatura (në këtë modus funksionon dom0);
  • Virtualizimi i plotë (HVM) - në këtë modus përdoren mbështetje harduerike për burimet e procesorit, ndërsa të gjitha pajisjet e tjera emulohen me anë të QEMU. Ky është mënyra më universale për të nisur sisteme operative të ndryshme;
  • Paravirtualizimi i pajisjeve (PVH - Paravirtualized Hardware) - modus virtualizimi me përdorimin e mbështetjes harduerike kur për të punuar me pajisjet, bërthama e sistemit mysafir përdor shoferë të përshtatur me mundësitë e hipervizorit (p.sh., memorie e ndarë), duke eliminuar nevojën për emulimin me QEMU dhe duke rritur performancën e hyrjes-daljes. Bërthama Linux që nga versioni 4.11 mund të funksionojë në këtë modus.

Përdorimi i QubesOS për punë me Windows 7

Deri në versionin Qubes 4.0, për arsye sigurie është duke u hequr dorë nga përdorimi i modusit të paravirtualizimit (përfshirë për shkak të dobësive të njohura të arkitekturës Intel, të cilat trajtohen pjesërisht me përdorimin e virtualizimit të plotë), dhe në mënyrë të paracaktuar përdoret modus PVH.

Kur përdorimi i emulacionit (modi HVM), nisja e QEMU bëhet në një VM të izoluar të quajtur stubdomain, duke reduktuar kështu rrezikun e shfrytëzimit të gabimeve të mundshme në implementim (projekti QEMU përmban shumë kod, përfshirë për përputhshmëri).
Ky mod në rastin tonë duhet të përdoret për Windows.

Makinat virtuale të shërbimit

Në arkitekturën e sigurisë Qubes, një nga mundësitë kryesore të hipervizorit është transmetimi i pajisjeve PCI në mjedisin e mysafirit. Përjashtimi i pajisjeve lejon izolimin e pjesës pritëse të sistemit nga sulmet e jashtme. Xen mbështet këtë për modet PV dhe HVM, në rastin e dytë kërkohet mbështetje për IOMMU (Intel VT-d) — menaxhimi harduerik i memories për pajisjet që virtualizohen.

Kështu krijohen disa makina virtuale sistemore:

  • sys-net, së cilës i kalohen pajisjet rrjetësore dhe e cila përdoret si urë për VM të tjera, për shembull, duke realizuar funksione të një firewalli ose klientit të rrjetit VPN;
  • sys-usb, së cilës i kalohen USB dhe kontrollues të tjerë të pajisjeve periferi;
  • sys-firewall, e cila nuk përdor pajisje, por punon si një firewall për VM të lidhura.

Për punën me pajisjet USB përdoren shërbime proxy, të cilat ofrojnë gjithashtu:

  • për klasën e pajisjeve HID (pajisje ndërfaqe njeriu) transmetimin e komandave në dom0;
  • për mbajtësit e lëvizshëm ridrejtojnë volumin e pajisjeve në VM të tjera (përveç dom0);
  • ridrejton direkt pajisjen USB (përdoren USBIP dhe mjete integrimi).

Në një konfigurim të tillë, një sulm i suksesshëm përmes stekut rrjetësor ose pajisjeve të lidhura mund të çojë në kompromitimin vetëm të VM shërbimit të nisur, e jo të gjithë sistemit në tërësi. Dhe pas rindizjes së VM shërbimit, ajo do të ngarkohet në gjendjen fillestare.

Mjetet e integrimit të VM

Ka janë disa mënyra për të ndërvepruar me desktopin e makinës virtuale — instalimi i aplikacioneve në sistemin e mysafirëve ose simulimi i videos përmes mjeteve të virtualizimit. Aplikacionet e mysafirit mund të përbëhen nga mjete të ndryshme universale për akses në distancë (RDP, VNC, Spice, etj.) ose të përshtatura për një hipervizor të caktuar (kështu që këto mjete zakonisht quhen mjete të mysafirit). Mund të përdoret edhe një variant miks, kur hipervizori simulon hyrje- dalje për sistemin e mysafirit, ndërsa jashtë ofron mundësinë për të përdorur një protokoll, kombinuar hyrjen daljen, siç është rasti me Spice. Ndërsa, mjetet e aksesit në distancë zakonisht optimizojnë imazhin, pasi supozojnë punën përmes rrjetit, që ndikon negativisht në cilësinë e figurës.

Qubes ofron mjete të veta për integrimin e VM-ve. Kryesisht, kjo është nënsyshtema grafike — dritaret nga VM të ndryshme shfaqen në një desktop të vetëm me një kuadrim ngjyrash të vetë. Në përgjithësi, mjetet e integrimit bazohen në kapacitetet e hipervizorit — kujtesa e ndarë (Xen grant table), mjetet e njoftimit (Xen event channel), depozita e ndarë xenstore dhe protokolli i komunikimit vchan. Me ndihmën e tyre realizohen komponentët bazë qrexec dhe qubes-rpc, si dhe shërbimet aplikative — ridrejtimi i tingullit apo USB, transferimi i skedarëve ose përmbajtjes së kopjimit, ekzekutimi i komandave dhe nisja e aplikacioneve. Ekziston mundësia për të vendosur politika që lejojnë të kufizohen shërbimet e disponueshme në VM. Më poshtë është një shembull i procedurës së infrastrukturës për ndërveprimin e dy VM-ve.

Përdorimi i QubesOS për punë me Windows 7

Kështu, puna në VM bëhet pa përdorimin e rrjetit, çka lejon përdorimin e plotë të VM-eve autonome për t'u shmangur rrjedhjes së informacionit. Për shembull, kështu realizohet ndarja e operacioneve kriptografike (PGP/SSH), kur çelësat e mbyllur përdoren në VM të izoluar dhe nuk dalin jashtë kufijve të tyre.

Shabllonët, aplikacionet dhe VM-të e një përdorimi

Të gjitha veprimet e përdoruesit në Qubes realizohen në makina virtuale. Sistemi kryesor i hostit përdoret për të menaxhuar funksionimin e tyre dhe vizualizimin. Sistemi operacional instalohet së bashku me një grup bazë makinash virtuale të ndërtuara mbi shabllonë (TemplateVM). Një shabllon përbën një VM Linux të krijuar mbi distribucionet Fedora ose Debian, me mjete të integruara të instaluara dhe të konfiguruara, si dhe ndarje sistemore dhe përdoruese të dedikuara. Instalimi dhe përditësimi i softuerit realizohet nga menaxheri standard i paketave (dnf ose apt) nga depozitë të konfiguruara me një kontroll të detyrueshëm të nënshkrimit digjital (GnuPG). Qëllimi i këtyre VM-ve është të sigurojnë besueshmëri për VM-të aplikative që drejtohen mbi to.

VM-ja aplikative (AppVM) gjatë nisjes përdor një kopje të ndarjes sistemore të shabllonit përkatës të VM-së dhe, pas përfundimit, e fshin këtë kopje pa ruajtur ndryshimet. Të dhënat e nevojshme për përdoruesin ruhen në një ndarje përdoruese unike për çdo VM aplikative, e cila montohet në katalogun e shtëpisë.

Përdorimi i QubesOS për punë me Windows 7

Një zgjidhje e dobishme për sa i përket sigurisë është përdorimi i VM-ve të përkohshme (disposableVM). Kjo VM krijohet mbi bazën e shabllonit në momentin e nisjes dhe lançohet me një qëllim — ekzekutimin e një aplikacioni, duke përfunduar punën pas mbylljes së tij. VM-të e përkohshme mund të përdoren për të hapur skedarë të dyshimtë, përmbajtja e të cilëve mund të çojë në shfrytëzimin e dobësive të aplikacioneve përkatëse. Mundësia për të drejtuar një VM të përkohshme është e integruar në menaxherin e skedarëve (Nautilus) dhe në klientin e postës (Thunderbird).

VM-ja Windows gjithashtu mund të përdoret për krijimin e një shablloni dhe një VM të përkohshme, për këtë, profili i përdoruesit transferohet në një ndarje të veçantë. Në variantin tonë, ky shabllon do të përdoret nga përdoruesi për detyra administrimi dhe instalimi aplikacionesh. Nga ky shabllon do të krijohen disa VM aplikative — me qasje të kufizuar në rrjet (kapacitetet standarde të sys-firewall) dhe pa akses në rrjet fare (nuk krijohet një pajisje rrjetë virtuale). Për të punuar në këto VM do të jenë të disponueshme të gjitha ndryshimet dhe aplikacionet e instaluara në shabllon dhe madje edhe në rast të infiltrimve të programeve kërcënuese, nuk do të kenë akses në rrjet për të kompromentuar.

Lufta për Windows

Mundësi të përshkruara më sipër përbëjnë bazën e Qubes dhe funksionojnë mjaft stabilisht, duke filluar me Windows. Për integrimin e Windows, është e nevojshme të përdoren mjetet e mysafirëve të Qubes Windows Tools (QWT), të cilat përfshijnë drejtuesit për punën me Xen, drejtuesin qvideo dhe një grup utilitarësh për shkëmbimin e informacionit (pranimi-dërgimi i skedarëve, kopjimi në bufer). Procesi i instalimit dhe konfigurimit është dokumentuar në detaje në faqen e projektit, kështu që do të ndalim përvojën tonë të aplikimit.

Sfidën kryesore përbën në thelb mungesa e mbështetjes së instrumenteve të zhvilluara. Zhvilluesit kryesorë (QWT), duket se nuk janë të aksesueshëm dhe projekti i integrimit me Windows është në pritje të zhvilluesit kryesor. Prandaj, si fillim, ishte e nevojshme të vlerësohej funksionaliteti dhe të krijohej një kuptim rreth mundësisë së mbështetjes së tij në rast nevoje vetë. Drejtuesi grafik është më i komplikuari për zhvillim dhe debug, i cili emulon një adapter video dhe ekran për formimin e imazhit në kujtesën e ndarë, duke lejuar që të shfaqet e gjithë tavolina e punës apo drejtpërdrejt dritarja e aplikacionit në dritaren e sistemit host. Gjatë analizës së punës së drejtuesit, ne kemi adaptuar kodin për ndërtim në mjedisin Linux dhe kemi punuar në skemën e debugging midis dy sistemeve të Windows mysafirë. Në fazën e krosndërtimit, kemi bërë disa ndryshime lehtësuese për ne, kryesisht në pjesën e instalimeve "të qeta" të utilitarëve, si dhe kemi eliminuar degradimin e bezdisshëm të performancës gjatë punës së gjatë në VM. Rezultatet e punës i kemi formuar në një dokument të veçantë. repotitë e tij, duke e bërë këtë për një kohë të shkurtër të frymëzuar nga zhvilluesi kryesor i Qubes.

Faza më kritike në raport me stabilitetin e sistemit mysafir është lançimi i Windows, këtu mund të shihni ekranin blu të njohur (ose madje të mos e shihni fare). Për shumicën e gabimeve të identifikuara janë gjetur mundësi të ndryshme për të kaluar - heqja e drejtuesve të Xen për pajisjet bllokuese, çaktivizimi i balancimit të memories së VM, ngushtimi i cilësimeve rrjetore dhe minimizimi i numrit të bërthamave. Ndërtimi ynë i mjeteve mysafirë instalohet dhe funksionon në Windows 7 dhe Windows 10 të përditësuara plotësisht (përveç qvideo).

Kur kalon nga ambienti fizik në atë virtual, haset një problem me aktivizimin e Windows në rastin e përdorimit të versioneve OEM të parainstaluara. Këto sisteme përdorin aktivizimin e bazuar në licencat e regjistruara në UEFI të pajisjes. Për funksionimin e saktë të aktivizimit, është e nevojshme të transmetohet në sistemin miqësor një nga ndarjet ACPI të sistemit pritës në tërësi (tabela SLIC) dhe të pak ndryshohen të tjera, duke regjistruar prodhuesin. Xen lejon përshtatjen e përmbajtjes së tabelave ACPI shtesë, por pa modifikimin e atyre kryesore. Zgjidhja u ndihmua nga një patch nga një projekt i ngjashëm OpenXT, i cili u adaptua për Qubes. Këto korrigjime u treguan të dobishme jo vetëm për ne, por u përfshinë në depozitën kryesore të Qubes dhe në bibliotekën Libvirt.

Disavantazhet evidente të mjeteve të integrimit të Windows përfshijnë mungesën e mbështetjes për zërin, pajisjet USB dhe vështirësitë në punën me media, pasi nuk ka mbështetje harduerike për GPU. Por përmëndurat nuk pengojnë përdorimin e VM për punën me dokumente zyrtare dhe nuk i pengojnë startimin e aplikacioneve specifike për korporatat.

Kërkesa për kalimin në modalitetin e punës pa rrjet ose me rrjet të kufizuar pas krijimit të template-it të Windows VM u zbatua përmes krijimit të konfigurimeve përkatëse të VM-ve aplikative, dhe mundësia e zgjedhjes së lidhjes së mediave të jashtme gjithashtu u zgjidh me mjete të sistemit operativ — kur lidhen, ato janë të disponueshme në VM-në sistematike sys-usb, nga ku mund të 'kalojnë' në VM-në e nevojshme. Desktopi i përdoruesit duket afërsisht kështu.

Përdorimi i QubesOS për punë me Windows 7

Versioni përfundimtar i sistemit është miratuar pozitivisht (sa e lejon një zgjidhje kaq komplekse) nga përdoruesit, dhe mjetet e sistemit e lejuan zgjerimin e aplikimit në vendin e punës të lëvizshëm të përdoruesit me akses nëpërmjet VPN.

Në përfundim

Virtualizimi në përgjithësi lejon uljen e rreziqeve të përdorimit të sistemeve Windows që janë lënë pa mbështetje — nuk detyron sigurinë e pajtueshmërisë me pajisje të reja harduerike, lejon përjashtimin ose kontrollin e aksesit në sistem përmes rrjetit ose pajisjeve të lidhura, dhe lejon realizimin e një ambienti për fillimin njëherësh.

Sistemi OS Qubes, i bazuar në idenë e izolimit përmes virtualizimit, ndihmon në përdorimin e këtyre dhe mekanizmave të tjerë për të siguruar sigurinë. Nga jashtë, shumë e shohin Qubes kryesisht si një përpjekje për anonimitet, por kjo është një sistem i dobishëm si për inxhinierët, të cilët shpesh kombinojnë projekte, infrastrukturat dhe sekretet e aksesit në to, ashtu edhe për kërkuesit e sigurisë. Ndërprerja e aplikacioneve, të dhënave dhe formalisht e ndërveprimit të tyre janë hapat fillestarë të analizës së kërcënimeve dhe projektimit të sistemit të mbrojtjes. Ky ndarje ndihmon në strukturn e informacionit dhe zvogëlon mundësinë e gabimit për shkak të faktorëve njerëzorë — nxhitesës, lodhjes etj.

Aktualisht, fokusi kryesor në zhvillim është zgjerimi i funksionalitetit të mjediseve Linux. Po përgatitet të lansohet versioni 4.1, i cili do të bazohet në Fedora 31 dhe do të përfshijë versionet aktuale të komponenteve kyçe Xen dhe Libvirt. Duhet theksuar se Qubes krijohet nga profesionistë në fushën e sigurisë informative, të cilët gjithmonë lëshojnë përditësime në mënyrë të shpejtë në rast të identifikimit të kërcënimeve të reja ose gabimeve.

Pasthënie

Një nga mundësitë eksperimentale që po zhvillojmë na lejon të krijojmë VM me mbështetje për aksesin e mysafirëve në GPU, bazuar në teknologjinë Intel GVT-g, gjë që lejon përdorimin e mundësive të grafikës dhe zgjerimin ndjeshëm të fushës së aplikimit të sistemit. Në momentin e shkruar të këtij artikulli, ky funksionalitet punon për ndërtimet testuese të Qubes 4.1 dhe është i disponueshëm në github.

Burimi: habr.com

Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы 🔥 Купить надежный хостинг для сайтов с защитой от DDoS, VPS VDS серверы | ProHoster