Pa gen anpil atik sou Habr konsènan sistèm operasyon Qubes la, epi sa mwen wè yo pa kouvri anpil bagay an tèm de eksperyans itilizatè. Anba seksyon an, mwen espere remèdye sa a avèk yon egzanp sou itilizasyon Qubes kòm yon zouti sekirite. Windows epi, an menm tan, estime kantite itilizatè sistèm nan ki pale Ris.

Poukisa Qubes?
Istwa fen sipò teknik la Windows 7 ak enkyetid k ap ogmante nan itilizatè yo te mennen nan nesesite pou òganize travay sistèm operasyon sa a, pran an kont egzijans sa yo:
- asire itilizasyon yon bagay ki aktive nèt Windows 7 ak kapasite pou itilizatè a enstale mizajou ak divès aplikasyon (ki gen ladan atravè Entènèt la);
- aplike eksklizyon konplè oswa selektif nan entèraksyon rezo ki baze sou kondisyon (operasyon otonòm ak mòd filtraj trafik);
- bay kapasite nan oaza konekte medya detachable ak aparèy.
Ansanm restriksyon sa a sipoze yon itilizatè ki byen prepare, depi administrasyon endepandan gen dwa, epi restriksyon yo pa gen rapò ak bloke aksyon potansyèl li yo, men nan esklizyon erè posib oswa efè lojisyèl destriktif. Moun sa yo. Pa gen okenn delenkan entèn nan modèl la.
Nan rechèch nou pou yon solisyon, nou te byen vit abandone lide pou aplike restriksyon lè l sèvi avèk mwayen entegre oswa adisyonèl. Windows, piske li trè difisil pou mete restriksyon sou yon itilizatè ki gen privilèj administratè tout pandan w ap pèmèt li enstale aplikasyon.
Pwochen solisyon an te izolasyon lè l sèvi avèk Virtualization. Zouti byen li te ye pou Virtualization Desktop (pa egzanp, tankou Virtualbox) yo mal adapte pou rezoud pwoblèm sekirite ak restriksyon ki nan lis la pral oblije fè pa itilizatè a pa toujou ap chanje oswa ajiste pwopriyete yo nan machin nan vityèl envite (apwe sa refere a. kòm VM), ki ogmante risk pou erè.
An menm tan, nou te gen eksperyans nan itilizasyon Qubes kòm yon sistèm òdinatè pou itilizatè, men nou te gen dout sou estabilite sistèm envite a. WindowsMwen deside teste vèsyon aktyèl Qubes la paske limitasyon li te enpoze yo anfòm byen ak paradigme sistèm nan, patikilyèman aplikasyon modèl machin vityèl yo ak entegrasyon vizyèl la. Anba a, mwen pral eseye dekri yon ti kras ide ak zouti ki dèyè Qubes yo, lè l sèvi avèk yon solisyon pou pwoblèm nan.
Kalite Xen Virtualization
Qubes baze sou ipèvizè Xen an, ki minimize jesyon resous CPU, memwa, ak machin vityèl. Tout lòt jesyon aparèy yo konsantre nan dom0 ki baze sou nwayo a. Linux (Nan Qubes, yo itilize distribisyon Fedora pou dom0).

Xen sipòte plizyè kalite virtualizasyon (mwen pral bay egzanp pou achitekti Intel, byenke Xen sipòte lòt moun):
- paravirtualization (PV) - yon mòd Virtualization san yo pa itilize sipò pyès ki nan konpitè, okoumansman de Virtualization veso, ka itilize pou sistèm ki gen yon nwayo adapte (dom0 opere nan mòd sa a);
- Virtualization konplè (HVM) - nan mòd sa a, sipò pyès ki nan konpitè yo itilize pou resous processeur, ak tout lòt ekipman yo imite lè l sèvi avèk QEMU. Sa a se fason ki pi inivèsèl yo kouri sistèm opere divès kalite;
- Materyèl ParaVirtualized (PVH) se yon mòd virtualizasyon asisté pa pyès ki nan konpitè kote nwayo envite a itilize chofè adapte ak kapasite ipèvizè a (pa egzanp, memwa pataje) pou travay avèk pyès ki nan konpitè a, sa elimine nesesite pou emulasyon QEMU epi ogmante pèfòmans I/O. Nwayo Linux Apati vèsyon 4.11 li ka fonksyone nan mòd sa a.

Kòmanse ak Qubes 4.0, pou rezon sekirite, yo abandone itilizasyon mòd paravirtualization (tankou akòz frajilite li te ye nan achitekti Intel, ki pasyèlman atténue pa itilizasyon virtualizasyon konplè); mòd PVH yo itilize pa default.
Lè w ap itilize imitasyon (mòd HVM), QEMU lanse nan yon VM izole ki rele stubdomain, kidonk diminye risk pou eksplwate erè potansyèl nan aplikasyon an (pwojè QEMU a gen anpil kòd, ki gen ladan konpatibilite).
Nan ka nou an, nou ta dwe itilize mòd sa a pou Windows.
Sèvis machin vityèl
Nan achitekti sekirite Qubes, youn nan kapasite kle nan hypervisor la se transfè aparèy PCI nan anviwònman envite. Eksklizyon pyès ki nan konpitè pèmèt ou izole pati lame a nan sistèm nan soti nan atak ekstèn. Xen sipòte sa a pou mòd PV ak HVM, nan dezyèm ka a li mande sipò pou IOMMU (Intel VT-d) - jesyon memwa pyès ki nan konpitè pou aparèy virtualize.
Sa a kreye plizyè sistèm machin vityèl:
- sys-net, nan ki aparèy rezo yo transfere epi ki itilize kòm yon pon pou lòt VMs, pou egzanp, sa yo ki aplike fonksyon yo nan yon firewall oswa yon kliyan VPN;
- sys-usb, kote USB ak lòt contrôleur aparèy periferik yo transfere;
- sys-firewall, ki pa sèvi ak aparèy, men ki travay kòm yon firewall pou VM ki konekte.
Pou travay ak aparèy USB, yo itilize sèvis prokurasyon, ki bay, pami lòt bagay:
- pou klas aparèy HID (aparèy koòdone imen), voye kòmandman bay dom0;
- pou medya detachable, redireksyon volim aparèy nan lòt VM (eksepte pou dom0);
- redireksyon dirèkteman nan yon aparèy USB (itilize USBIP ak zouti entegrasyon).
Nan yon konfigirasyon konsa, yon atak siksè atravè pile rezo a oswa aparèy konekte ka mennen nan konpwomi a nan sèlman sèvis la kouri VM, epi yo pa tout sistèm nan kòm yon antye. Epi apre rekòmanse VM sèvis la, li pral chaje nan eta orijinal li.
Zouti entegrasyon VM
Gen plizyè fason yo kominike avèk Desktop nan yon machin vityèl - enstale aplikasyon nan sistèm envite oswa imite videyo lè l sèvi avèk zouti Virtualization. Aplikasyon pou envite yo ka divès kalite zouti aksè inivèsèl aleka (RDP, VNC, Spice, elatriye) oswa adapte ak yon hypervisor espesifik (zouti sa yo anjeneral yo rele sèvis piblik envite). Yon opsyon melanje kapab tou itilize, lè hypervisor la imite I/O pou sistèm envite a, epi deyò a bay kapasite pou sèvi ak yon pwotokòl ki konbine I/O, pou egzanp, tankou Spice. An menm tan an, zouti aksè aleka anjeneral optimize imaj la, paske yo enplike travay atravè yon rezo, ki pa gen yon efè pozitif sou bon jan kalite a nan imaj la.
Qubes bay zouti pwòp li yo pou entegrasyon VM. Premye a tout, sa a se yon sous-sistèm grafik - fenèt ki soti nan diferan VM yo parèt sou yon sèl Desktop ak pwòp ankadreman koulè yo. An jeneral, zouti entegrasyon yo baze sou kapasite hypervisor - memwa pataje (tab sibvansyon Xen), zouti notifikasyon (chanèl evènman Xen), xenstore depo pataje ak pwotokòl kominikasyon vchan. Avèk èd yo, eleman debaz qrexec ak qubes-rpc, ak sèvis aplikasyon yo aplike - redireksyon odyo oswa USB, transfere dosye oswa kontni clipboard, egzekite kòmandman ak lanse aplikasyon yo. Li posib pou mete règleman ki pèmèt ou limite sèvis ki disponib sou yon VM. Figi ki anba a se yon egzanp pwosedi pou inisyalize entèraksyon de VM.

Kidonk, travay nan VM a fèt san yo pa itilize yon rezo, ki pèmèt tout itilizasyon VM otonòm pou evite flit enfòmasyon. Pou egzanp, sa a se ki jan separasyon nan operasyon kriptografik (PGP / SSH) aplike, lè kle prive yo itilize nan VM izole epi yo pa ale pi lwen pase yo.
Modèl, aplikasyon ak VM yon sèl fwa
Tout travay itilizatè nan Qubes fèt nan machin vityèl yo. Sistèm prensipal ki kache a itilize pou jere epi vizyalize yo. Sistèm operasyon an enstale ansanm ak yon seri debaz machin vityèl ki baze sou modèl (TemplateVM). Yon modèl konsa se Linux VM ki baze sou distribisyon Fedora oubyen Debian, avèk zouti entegrasyon enstale ak konfigire ak patisyon sistèm ak itilizatè dedye. Enstalasyon ak mizajou lojisyèl yo fèt pa manadjè pake entegre a (dnf oswa apt) soti nan depo konfigire ak verifikasyon siyati dijital obligatwa (GnuPG). Objektif machin vityèl sa yo se asire konfyans nan machin vityèl aplikasyon k ap fonksyone sou yo.
Nan demaraj, yon aplikasyon VM (AppVM) sèvi ak yon snapshot nan patisyon sistèm nan modèl VM ki koresponn lan, epi apre yo fin efase snapshot sa a san yo pa sove chanjman yo. Done itilizatè a mande yo estoke nan yon patisyon itilizatè inik pou chak aplikasyon VM, ki monte nan anyè kay la.

Sèvi ak VM jetab (disposableVM) ka itil nan yon pwen de vi sekirite. Yon VM konsa kreye ki baze sou yon modèl nan moman demaraj la epi li lanse pou yon sèl objektif - pou egzekite yon aplikasyon, ranpli travay apre li fin fèmen. Yo ka itilize VM jetab pou louvri dosye sispèk ki gen sa ki ka mennen nan eksplwatasyon frajilite aplikasyon espesifik yo. Kapasite nan kouri yon VM yon sèl-fwa entegre nan manadjè a dosye (Nautilus) ak kliyan imel (Thunderbird).
Windows Yon VM kapab itilize tou pou kreye yon modèl ak yon VM jetab; pou sa, pwofil itilizatè a deplase nan yon patisyon apa. Nan aplikasyon nou an, itilizatè a pral itilize yon modèl konsa pou travay administrasyon ak enstalasyon aplikasyon. Plizyè VM aplikasyon pral kreye ki baze sou modèl la—youn ak aksè rezo limite (lè l sèvi avèk kapasite sys-firewall default yo) ak youn ki pa gen aksè rezo ditou (pa gen okenn aparèy rezo vityèl ki kreye). Tout chanjman ak aplikasyon ki enstale nan modèl la ap disponib pou operasyon nan VM sa yo, e menm si yo entwodui backdoor, yo pral refize aksè rezo a pou konpwomi.
Batay la pou Windows
Kapasite ki dekri pi wo yo se baz Qubes epi yo fonksyone byen stab, difikilte yo kòmanse ak WindowsPou entegrasyon Windows Ou dwe itilize Qubes Guest Toolset la. Windows Zouti QWT (QWT), ki gen ladan chofè pou Xen, yon chofè qvideo, ak yon seri zouti pou echanj enfòmasyon (transfè ak voye fichye, clipboard). Pwosesis enstalasyon ak konfigirasyon an byen dokimante sou sit entènèt pwojè a, kidonk nou pral pataje eksperyans nou lè nou sèvi avè l.
Difikilte prensipal la se esansyèlman mank sipò pou zouti ki devlope yo. Devlopè kle yo (QWT) pa disponib, epi pwojè entegrasyon an avèk Windows ap tann devlopè prensipal la. Se poutèt sa, premye etap la sete evalye fonksyonalite li epi detèmine si nou te kapab sipòte li tèt nou si sa nesesè. Pati ki pi difisil pou devlope ak debogaj se chofè grafik la, ki imite yon adaptè videyo ak yon ekran pou jenere yon imaj nan memwa pataje, sa ki pèmèt tout Desktop la oswa dirèkteman yon fenèt aplikasyon parèt nan fenèt sistèm lame a. Pandan n ap analize pèfòmans chofè a, nou te adapte kòd la pou konstwi nan anviwònman .NET la. Linux epi li te travay sou yon konplo debogaj ant de envite Windows sistèm yo. Pandan faz kwa-konstriksyon an, nou te fè plizyè chanjman senplifikasyon, sitou ki gen rapò ak enstalasyon silansye sèvis piblik yo, epi nou te elimine tou degradasyon pèfòmans anmèdan pandan operasyon alontèm nan VM a. Nou te konpile rezilta travay sa a nan yon dokiman apa. , kidonk pa pou lontan Dirijan Qubes Developer.
Etap ki pi kritik an tèm de estabilite sistèm envite a se lansman an. Windows, ou ka wè ekran ble abityèl la (oswa menm pa wè li). Yo te jwenn plizyè solisyon pou pifò nan erè yo idantifye yo, tankou dezaktive chofè aparèy blòk Xen yo, dezaktive balans memwa VM, bloke paramèt rezo yo, epi minimize kantite nwayo yo. Konstriksyon zouti envite nou an te enstale epi li te fonksyone sou yon sistèm konplètman mete ajou. Windows 7 ak Windows 10 (eksepte qvideo).
Lè w ap chanje soti nan yon anviwònman reyèl pou ale nan yon anviwònman vityèl, gen yon pwoblèm ak aktivasyon an. Windows Lè w ap itilize vèsyon OEM pre-enstale. Sistèm sa yo itilize aktivasyon ki baze sou lisans espesifye nan UEFI aparèy la. Pou asire yon aktivasyon kòrèk, li nesesè pou tradui youn nan seksyon ACPI sistèm lame a (tab SLIC la) nan sistèm envite a epi modifye lòt yo yon ti kras, espesifye enfòmasyon espesifik manifakti a. Xen pèmèt ou pèsonalize kontni lòt tab ACPI yo san ou pa modifye sa prensipal yo. Yon patch ki soti nan yon pwojè menm jan an, OpenXT, adapte pou Qubes, te ede ak solisyon an. Koreksyon yo te itil pou plis pase nou sèlman epi yo te pita imigre nan depo prensipal Qubes la ak bibliyotèk Libvirt la.
Dezavantaj evidan nan zouti entegrasyon yo Windows Li enpòtan pou mansyone mank sipò pou aparèy odyo ak USB, ansanm ak difikilte pou travay ak medya akòz mank sipò GPU pou pyès ki nan konpitè. Sepandan, sa pa anpeche yo itilize machin vityèl la pou travay ak dokiman biwo oswa pou egzekite aplikasyon espesifik pou antrepriz.
Obligasyon pou chanje an mòd offline oswa rezo limite apre kreyasyon modèl la Windows Yo te aplike machin vityèl la lè yo te kreye konfigirasyon machin vityèl aplikasyon ki apwopriye yo, epi yo te jere kapasite pou konekte medya amovib yo avèk zouti estanda sistèm operasyon an tou. Lè yo konekte, yo aksesib nan machin vityèl sistèm sys-usb la, kote yo ka voye yo nan machin vityèl yo vle a. Biwo itilizatè a sanble ak sa.

Vèsyon final la nan sistèm lan te pozitivman (osi lwen ke yon solisyon konplè pèmèt) itilizatè yo aksepte, ak zouti yo estanda nan sistèm nan te fè li posib yo elaji aplikasyon an nan estasyon mobil itilizatè a ak aksè atravè VPN.
Olye pou yo yon konklizyon
Virtualizasyon an jeneral pèmèt diminye risk itilizasyon yo Windows sistèm ki rete san sipò - pa fòse konpatibilite ak nouvo pyès ki nan konpitè, pèmèt ou eskli oswa kontwole aksè nan sistèm nan atravè rezo a oswa atravè aparèy ki konekte, pèmèt ou aplike yon anviwònman pou yon lansman yon sèl fwa.
Ki baze sou lide izolasyon atravè Virtualization, Qubes OS ede ou ogmante mekanis sa yo ak lòt pou sekirite. Soti nan deyò a, anpil moun wè Qubes prensipalman kòm yon dezi pou anonim, men li se yon sistèm itil tou de pou enjenyè, ki souvan Jungle pwojè, enfrastrikti, ak sekrè jwenn aksè nan yo, ak pou chèchè sekirite. Separasyon aplikasyon, done ak fòmalizasyon entèraksyon yo se premye etap analiz menas ak konsepsyon sistèm sekirite. Separasyon sa a ede estriktire enfòmasyon ak diminye chans pou erè akòz faktè imen an - prese, fatig, elatriye.
Kounye a, prensipal konsantrasyon devlopman an se sou elaji fonksyonalite yo. Linux Mèkredi. Vèsyon 4.1 la ap prepare pou lage. Li pral baze sou Fedora 31 epi li pral gen ladan dènye vèsyon konpozan kle yo Xen ak Libvirt. Li enpòtan pou note ke Qubes devlope pa pwofesyonèl sekirite enfòmasyon, ki toujou lage mizajou rapidman lè yo dekouvri nouvo menas oswa pinèz.
Apreword
Youn nan kapasite eksperimantal n ap devlope pèmèt nou kreye VM ak sipò pou aksè envite nan GPU ki baze sou teknoloji Intel GVT-g, ki pèmèt nou sèvi ak kapasite adaptè grafik la ak elaji siyifikativman sijè ki abòde lan sistèm nan. Nan moman w ap ekri a, fonksyonalite sa a ap travay pou tès Qubes 4.1, epi li disponib sou .
Sous: www.habr.com
