Ja sa na to pozerám z iného uhla. Na kieho čerta bežia prehliadače mimo sandboxu. Už dávno mali mať všetky OS implementovaný systémový sandbox a všetky prehliadače do jedného mali bežať výhradne v ňom, včetne rutín pre vykreslovanie, púšťanie videa a pod. Proste keď niekto hackne nejakú vykreslovaciu rutinu, tak sa nič nestane, lebo stále bude v Sandboxe.
Ale vážne, načo má prehliadač prístup k jadru OS?
Toto nie je o Flash a NPAPI pluginoch, prehliadače sú večne deravé aj bez Flashu. Každý mesiac sú odhalené zraniteľnosti v každom prehliadači. Výrobca OS nech sa stará o bezpečnosť SandBoxu, výrobca prehliadača nech si stráži bezpečnosť prehliadača.
@TheSalko
souhlasim s tebou, bohuzel problem je komplexnejsi zda se: https://www.theregister.co.uk/2017/01/27/gag_free_ex_mozilla_dev_joins_antivirus_roasting_chorus_its_poison/
Dalsi veci je, ze sandbox neni samospasnej (cekam, ze tenhle rok uvidime prvni vlastovky novejch "viru" a metod kompromitace systemu). M$ vydal nejakej ten jejich DX Shader compiler a myslim, ze od FF 52 uz je v experimentalu webassembly (https://hacks.mozilla.org/2016/03/a-webassembly-milestone/). Prohlizece vyzaduji totiz grafickou akceleraci a vyvojari "her?" by chteli mit prohlizec evidentne jako platformu (LOL). Nicmene mame byt pry v klidu - http://www.pcworld.com/article/2978837/security/intel-says-gpu-malware-is-no-reason-to-panic-yet.html
K tomu sandboxu, uz se to tu resilo s Edge resp. M$ Browserem, kdyz budes mit M$ Domenu a system bude muset vynucovat policies na prohlizec nebo pres nejaky ty jejich M$ technologie budes chtit treba v bance, neco nacpat do toho systemu (nenapada me realnej priklad tedka). Tak ti je sandbox na obtiz.
Tenhle rok bude fakt super zabavnej, citim to v kostech ^_^ Umite si predstavit, ze neco jako webassembly pobezi na smartfounech? :DDDD
Webassembly na mobilech? To si dovedu predstavit uplne bez problemu.
Prohlizec jako zobrazovac statickeho HTML/CSS je uz davno mrtvy, stala se z nej behova platforma pro aplikace.
A neni moc duvod proc by to nemohlo byt pouzito treba i jako herni platforma (pomineme-li fakt, ze uz se to deje). Webassembly, WebGL jsou vsechno technologie, ktere v rich behove platforme maji sve misto.
Samozrejme je potreba se bavit o dobrem navrhu, sandboxu, trackovani atd. Ale v dusledku to muze prispet k celkovemu zvyseni bezpecnosti - odpada instalace spousty nativnich aplikaci (kolik pocitacu se zavirvalo tim, ze jejich uzivatele si nainstalovali nejakou hru z webu), protoze pobezi rovnou v prohlizeci v bezpecnem sandboxu (o cemz presne je webassembly).
@tnr
Snad jsi to nepochopil spatne, ja rozumim te potrebe i relativne logicnosti. Do jiste miry se prohlizece pomalu dostaly do stadia, kdy je to jedina aplikace, kterou na destkopu obycejny BFU potrebuje. Takze, to ze se z "prohlizece" stava "pseudo os/platforma" ehm <no flame> "ahoj emacs" </no flame>, to je proste trend a vzhledem k tomu, ze se defakto tlusty klient meni na tenky zase, vyvoj.
Jde mi o to, ze sandbox/chroot je dobrej improvement a souhlasim, ze to zase stizi situaci utocnikum. To ale nemeni nic na tom, ze WebGL ti da moznost si sahnout pres driver na HW i kdyby to bylo pres nejaky API a v tom vidim kamen urazu. Defakto se tak dostanes do SHM, sandbox nesandbox (tohle zalezi i na graficky karte a driveru, takze neber doslova), nicmene u laptopu a telefonu/embedded je to ~80%+ zarizeni.
K tem telefonum, odvazuju se tvrdit, ze treba Copperhead OS je aktualne nejvetsim security tahounem celeho Androidu a Gugl prebira a implementuje nektere security features, ktere v nem vyvojari implementovali (z jinych projektu) napr. PAX (ASLR). Na tohle odkazuje i ten prvni clanek z meho komentare. Dal tady mas utoky jako RAW Hammer, kterej pokud by se dal aplikovat na SHM skrze WebGL tak mas dost velkej problem (kdyz mas ASLR tak ses relativne v klidu - proto to do FF dali). Dalsi vec je, ze na telefonu mit antivirak je "drahy" hlavne co se baterky tyce. Dalsi zalezitost je samotny ASM pro arm, kde se defakto nemas sanci se ubranit.
Na desktopu je ta situace odlisna, ale principy jsou podobny/stejny. Dalsi tendence treba gugl chrom a offline gmail a.k.a. local storage z browseru. A zduraznim, sandbox neni samospasnej, stejne jako neni samospasnej jail / chroot, ale to uz se dostavame na "vyssi divci". Uplne staci ze treba na linuxu bez SELinuxu si muzes nepekne pohrat s file descriptorama (prava neprava) a nema te co vyrvat (oukej zacali s AppArmor, ale to je furt "malo", ale lepsi nez nic).
kompletni sandbox pro prohlizec je trivialni zalezitost, na Fedore napr:
$sandbox -X -t sandbox_web_t firefox
popr. Firejail a dalsi.
Ovsem ma to zatim par vad na krase a tou hlavni je X11. Az se prejde na Wayland tak se muzeme bavit o nejake bezpecnosti, do te doby to je polovicni reseni.
tohle je z Fedory 26: http://rpmfind.net/linux/RPM/fedora/devel/rawhide/i386/f/firefox-51.0.1-2.fc26.i686.html
F25 uz jede wayland (a je to teda .... zatim to neposloucha, hlavne kvuli "starsim" aplikacim)
Co si mám představit pod kompletním sandboxem? Jak je omezený přístup k souborům? (To byl AFAIR u firejailu docela problém.) Jak to brání aplikaci otevírat okna vypadající jako jiné aplikace a loudit tak od uživatele hesla? Jak to brání aplikaci přistupovat ke schránce a číst z ní citlivá data, popř. modifikovat tam data jako čísla účtů? Jak to brání přístupu k potenciálně zranitelným komplexním API k GPU nebo k různým systémovým voláním? Jak to omezí přístup k mikrofonu a kameře?
Z velké části toto všechno řeší QubesOS. Cenou za to ale je mj. absence GPU akcelerace nebo někdy trochu méně pohodlná práce se schránkou.
Ale ani sebelepší sandbox nezabrání tomu, aby ho někdo špatně použil. Prohlížeč se stává skoro operačním systémem. Pokud izolujeme prohlížeč od zbytku systému, ale všechno budeme dělat uvnitř prohlížeče, moc jsme si nepomohli. Nabízí se mít více vzájemně izolovaných instancí prohlížeče, což ale asi není uživatelsky nejpřívětivější… Nebo můžeme prohlížeč rozkouskovat a sandboxovat jeho jednotlivé podčásti, ale to zase není tak triviální – na to je potřeba hledat řešení pro každou aplikaci zvlášť a hotové řešení pro prohlížeč asi zatím nemáme.
Mas pravdu, jenze to se zdaleka netyce jen browseru. Vem si skoro libovolnou gamesu ... a instaluje nejakej shit do systemu ... ze prej "anticheat" ... nejvetsi prca na tom je, ze si proste vemes druhej stroj, postavis ho vedle, pichnes do switche ... a voiala. Muzes si trebas na druhej monas vytahnout mapu a aktualni polohu vsech hracu. Kdo za to muze? Cheater? Ne, muze za to debil za vyvojarskou klavesnici. Ale hlavne ze ti rozesere system isntalaci "ochrany".
Alternativne ... nepotrebujes ani ten sekudarni stroj, staci ti klavesnice ... s vlastnim cpu a vlastni ram ... mas pocit ze nekdo dava jedno kombo za druhym a ze se do neda? No ... da ... ;D.
Takhle je to se vsim, defakto by v sandboxu melo bezet minimalne vsechno co komunikuje po siti. Jenze se bez podivat treba opet na soudruhy z M$ ... http://diit.cz/clanek/windows-game-mode takhle to dopadne.