Windows 8 krijgt sandbox-omgeving met diverse toegangsniveaus

Microsoft is van plan om in Windows 8 een sandbox-omgeving op te nemen waarbinnen applicaties uit de App Store moeten draaien. Binnen de zogenaamde LowBox zouden verschillende toegangsniveaus voor deze applicaties bestaan.

Dat meldt de doorgaans goed geïnformeerde Mary-Jo Foley op haar weblog. Microsoft laat in Windows Phone 7 al applicaties draaien binnen een sandbox, om zo de kans op beveiligingsproblemen te verkleinen. De softwaregigant zou dit mechanisme willen doortrekken naar Windows 8 en daaraan nog enkele verbeteringen willen toevoegen.

Binnen het LowBox-model moeten zogeheten Appx-applicaties gaan draaien. Appx-applicaties vormen een nieuw applicatietype van Microsoft en lijkt vooral gebruikt te gaan worden voor touchscreen-interfaces. Ontwikkelaars van appx-applicaties moeten in een appxmanifest.xml-bestand aangeven welke toegangsrechten de software nodig heeft.

Microsoft wil het LowBox-model gebruiken voor applicaties die in de Windows 8 App Store kunnen worden aangekocht. De appx-toepassingen kunnen vijf beveiligingsniveaus meekrijgen, die door Microsoft buckets genoemd zouden worden.

'Bucket 5' zou de meeste toegangsrechten verschaffen aan applicaties en vooral bedoeld zijn voor oudere apps. Microsoft wil in 'bucket 4' zogenaamde immersive apps plaatsen. Dergelijke applicaties zouden de traditionele Windows-navigatiecomponenten vervangen door eigen creaties, waarmee de gebruiker een 'unieke' omgeving moet krijgen. De nieuwe Jupiter-bibliotheek met gui-elementen moet ontwikkelaars daarbij helpen. Webapplicaties zouden in 'bucket 3' thuishoren. Welke apps in 'bucket 1' en 'bucket 2' thuishoren, is nog niet duidelijk.

Met het toevoegen van een dichtgespijkerde sandbox lijkt Microsoft van Windows 8 een OS te maken dat aanmerkelijk minder onderhoud door de gebruiker zou vergen. De softwaregigant zou dit concept vooral willen toepassen op tablets, waarbij Microsoft goed gekeken heeft naar het model dat iOS hanteert.

Door Dimitri Reijerman

Redacteur

06-04-2011 • 14:40

140

Submitter: Ramon

Reacties (140)

140
124
48
2
0
27
Wijzig sortering
Anoniem: 353137 6 april 2011 14:43
Is een sandbox niet makkelijk te kraken?? Ik zou denk ik voor een andere strategie gaan..
een zandbak is eigenlijk alles of een deel gewoon in een virtuele omgeving laten draaien. Veel virusscanners doen dit om bestanden te testen! Voor een os is er 1 die het geheel doet genaamd Qubes gemaakt door Joanna Rutkowska en haar bedrijf. Als je ziet wat de hardware eisen voor een linux bak zijn met dit OS, kun je je afvragen in hoeverre MS een goeie zandbak gaat bouwen! De hardware eisen zijn nu al best hoog! (al moet ik zeggen het idee achter Qubes is super goed en super veilig)

Leuk detail: de blue pill was o.a. van haar.

(dit was met windows 7 al de bedoeling toen windows 8 en sinds kort staat het gepland voor de opvolger van windows met een nieuwe kernel of windows 9 of 10)

de link overigens: http://qubes-os.org/Home.html

@johnkeates: Nee, Qubes is op Xen gebaseerd maar er zijn een paar verschillen! (die ga ik niet allemaal uitleggen, lees alles maar eerst dan zie je ze vanzelf!)

Grote verschil is Apple signed alles omdat anders malafide software hun OS kan slopen (er is alleen gebleken dat gesigned progjes ook malafide kunnen zijn of de sleutels! --> waardoor dit alsnog kan)

Windows doet dit juist niet je kan alles doen dan, maar wel in een sandbox. (alleen programeer deze slecht en je kan alsnog bij het OS, MS en goed programmeren daar zijn de meningen over verdeeld!)

Linux/Unix werkt volgens een blokkendoos principe en is in feite al een sandbox voor een deel.

Windows was totaal geweven, trek de onderste blok weg uit de blokken toren en deze stort totaal in zeg maar. (tot windows 7 en daarom is windows 7 ook gewoon stukken beter!!)

Mac OSX is een Unix variant maar hier is aqua in X verweven waardoor deze blokkentoren niet tot de fundering maar de laag erboven of daar weer boven kan instorten.

Voordelen zijn simpel: Windows super snel en makkelijk te programeren in verhouding tot de rest!

Mac osx is daar iets trager in omdat het 2 of meer lagen heeft en dus ook die lagen apart van elkaar moet scheiden met security maar ook samen moet laten werken op andere fronten!

Unix/Linux: Altijd een extra laag is een voordeel maar tegelijk ook een nadeel! Elke laag moet soms zijn eigen security hebben en bijv. een driver moet over meerdere lagen werken en ook programma''s die hetzelfde doen! Punt daarop is simpel het is net stabieler en veiliger als Mac osx en veel meer als windows. Maar programmeren ervoor gaat daardoor wel extreem langzamer, in verhouding tot windows en een stuk langzamer in verhouding tot MAC OSX.

GNU/HURD: Niet 1 blokkentoren, maar meerdere blokkentorens. Extreem veilig, Extreem Stabiel --> als het ooit klaarkomt, en dat zegt genoeg! ;) :X Deel van code gebruikt in Linux/Unix --> Daarom eigenlijk ook GNU/Linuix, GCC, GNU... enz.

[Reactie gewijzigd door rob12424 op 25 juli 2024 12:34]

Tsja, je kan ook gewoon een Xen hypervisor nemen en daar windows in draaien... de perfecte sandbox.
Qubes is dan ook gebaseerd op Xen...
Windows was totaal geweven, trek de onderste blok weg uit de blokken toren en deze stort totaal in zeg maar. (tot windows 7 en daarom is windows 7 ook gewoon stukken beter!!)
Kun je dit beargumenteren? Ik zeg niet dat je geen gelijk hebt maar je noemt geen bron of onderbouwing voor deze (imho) nogal baude stelling. Wat is er zo verschillend aan W7 t.o.v. Windows Vista dat W7 ineens stukken beter is waar Vista nog een blokkentoren was?
De sandbox is een exrta veiligheids barriere tussen applicatie software en OS. Op dit moment is het vaak zo dat je alleen de applicatie hoeft te kraken, en dan heb je toegang tot het OS. Een sandbox is gewoon een afschermde omgeving waarbinnen je applicatie draait. Daardoor moet je én de applicatie, én de sandbox kraken. Dat is dus al veel moeilijker dan alleen de applicatie te kraken!

Die sandbox kan ook problemen opleveren wat betreft prestaties en flexibliteit. Daarom wil je het niet overal toepassen. Windows heeft trouwens al een sandbox in Vista en W7 zitten voor het draaien van de internet explorer. Logisch, want daar komen de meeste aanvallen vandaan. En inderdaad, de meeste exploits worden inderdaad daardoor tegengehouden. Moet je alleen niet de sandbox functionaliteit ongedaan maken.... hetgeen je doet door UAC uit te zetten.

[Reactie gewijzigd door Anoniem: 175233 op 26 juli 2024 06:01]

en welke strategie zou dat dan zijn? Een sandbox laat de gebruiker enkel in de sandbox spelen en niet daarbuiten. Het kan best dat er een veiligheidsgat in een sandbox gevonden wordt, maar het principe wordt al succesvol in verschillende OSen toegepast.
Zoals ik hieronder aangeef: context dependant security. Daarmee heeft elk programma een op maat gesneden sandbox die ook nog afhangt van de gebruiker die het programma start.
Een beetje zoals BSD dat doet? En Unix kan? En linux?
Anoniem: 347253 @johnkeates6 april 2011 18:53
Is dit nu ook hoe Android werkt of zie ik het verkeerd? In android heb je ook zo'n manifest file waarin je aanmoet geven als je speciale handeling wil verrichten zoals bellen met de telefoon, internetconnectie en dergelijke.

Wat ik me dus afvraag, de processen als svchost.exe en andere SYSTEM processen hebben natuurlijk Bucket 5 of hoogstwaarschijnlijk hoger nodig, en het proces waarin de sandboxen aangemaakt worden en dergelijke nog een 3x zo hoog bucket level. Als er dan een beveiligingslek in een van deze processen wordt gevonden ben je toch gewoon de sjaak? Of zie ik dat compleet verkeerd?
Anoniem: 341744 @humbug6 april 2011 15:43
succes vol ? dat valt mij vies tegen neem de ios jailbreak als voorbeeld.
Het Jailbreaken van het iOS gaat niet via de sandbox, maar via de onderliggende kernel. Met de sandbox zelf is dus niks mis, maar wel met de onderliggende software ;)
Ten eerste, op welke manier is het volgens jou makkelijk te kraken?
Ten tweede, aan wat voor strategie zat je dan te denken?

Ik raad je aan deze wiki even door te lezen om echt een beeld te krijgen wat een sandbox-omgeving voor beveiligingsvoordelen te bieden heeft.
Misschien ooit eens gedacht aan layered vulnerabilities ? , als die gaten worden ontdekt waar ik dus ook van uit gaat dat er hier en daar gaten zullen vallen is het ineens niet meer zo veilig.

In de diepte zou een sandbox aan verschillende eisen moeten voldoen om dit uit te sluiten maar goed gezien de vele bugs en gaten in heel veel producten zullen er ook weer in windows 8 gaten vallen.
Ik zou eigenlijk liever zien dat ze context dependent security zouden toevoegen, zoals VMS dat vroeger had en je tegenwoordig met SElinux kunt implementeren.

Dus dat je bepaalde rechten alleen krijgt als je tot een bepaalde groep behoort en de recht vanuit een bepaalde DLL of een bepaald programma vraagt.

Groot voordeel van die benadering is dat 'vreemde' software niets mag, totdat je er expliciet rechten aan toekent. Ook 'bekende' software mag alleen wat het nodig heeft. Met de hier voorgestelde oplossing is het voldoende om je toegang tot een bepaalde sandbox te verschaffen, waar je dan in een keer heel veel rechten kan krijgen in plaats van een op maat gesneden rechtenset.
Allow <just downloaded app you like to use> to access <some weird technical term you never heard off>.
[yes] [no]


Welke knop zal gekozen worden? Die manier van werken heeft ook zo goed goed geholpen de afgelopen 20 jaar gezien de weinige botnets.
Als je het weer aan de gebruiker overlaat dan kom je inderdaad niet ver. Maar in combinatie met application signing wordt het al anders natuurlijk.
Anoniem: 175233 @brompot7586 april 2011 18:30
Dat soort security sowieso al gedeetelijk in het OS. Systeem programma's zijn alleen door administrators toegankelijk. Idem voor delen van de registery e.d.

Alle rechten per applicatie regelen is veel te ingewikkeld. Dat is leuk voor een bank met slechts 1 stuk software, maar niet voor een algemeen consumer OS. Dat komt er dan namelijk op neer dat óf geen enkele applicatie meer werkt, zonder allerlei security rondslomp, óf dat men simpelweg alle applicaties alle rechten geeft. En dan krijg je precies datgene wat men wil vermijden... namelijk dat alle apps met admin rechten draaien.
Windows baseert alles nu op discretionary ACL's. UAC is niets anders dan een extra barriere om de rechten die aan de gebruiker toegekend zijn daadwerkelijk te activeren. Ook een applicatie die geen administrative vlag in de executable header heeft kun je starten met die rechten door er rechts op te klikken en de juiste optie te kiezen.

Normale applicaties hebben bijna niets nodig. Toegang tot documenten, tot bepaalde netwerk poorten en zo nog een paar. Maar toegang tot poort 25 wil je beperken tot echte mail software.

Als je dit met application signing combineert (a la signed applets in java) dan moet je een eind kunnen komen zonder dat je de gebruiker ermee belast. Blacklist erbij via Windows Update en je bent al bijna rond.

En een bank met maar 1 applicatie? Heb je wel eens in de IT keuken van een mopderne bank gekeken? Dat zijn hele complexe omgevingen met hele ketens van applicaties. Als de implementatie ergens complex is dan is het wel bij een bank.
Anoniem: 261819 6 april 2011 15:13
Om maareens even te quoten uit het nieuwsartikel:
Microsoft wil het LowBox-model gebruiken voor applicaties die in de Windows 8 App Store kunnen worden aangekocht.
We hebben het hier dus over applicaties uit de App Store. Nergens word er gesproken over "native" applicaties. Waarschijnlijk gaat Microsoft dit dus gebruiken om er voor te zorgen dat applicaties uit hun app Strore een gegarandeerde veiligheid hebben.
Inderdaad. En dat is ook nodig, aangezien zij zelf ineens de aanbieder van de software worden. Je wilt als bedrijf niet verantwoordelijk zijn voor de verspreiding van virussen en malware.

Daarnaast is het voor gebruikers fijn om te weten dat software uit een App Store gegarandeerd veilig is. Iets dat je met willekeurig downloaden van internet niet hebt.

[Reactie gewijzigd door Bosmonster op 26 juli 2024 06:01]

Dergelijke applicaties zouden de traditionele Windows-navigatiecomponenten vervangen door eigen creaties, waarmee de gebruiker een 'unieke' omgeving moet krijgen.
Ligt het aan mij, of ben ik de enige die hiervoor huivert? Straks krijg je allemaal vage filebrowsers en save-dialogs. Programma's met zelf ontworpen GUI's, zonder ook maar enige samenhang met andere softwarepakketten. Dat "uniek" klinkt eerder als "rommelig". Of heb ik die hele zin nu verkeerd begrepen?
Volgens mij is dat een vertaalfoutje van t.net. Met Immersive wordt afaik de Metro interface bedoelt zoals die van Windows Phone 7, die naar Windows 8 gebracht gaat worden.
Ik vind dit een zeer strak plan van MS, al vraag ik me wel af waarom ze t alleen/vooral voor touchscreen applications willen gebruiken. Ik zou zeggen: trek het door naar alle apps!

Het is natuurlijk ook nog mogelijk dat ze gewoon daarmee gaan beginnen (en dat later de rest volgt), wat logisch zou zijn: Microsoft's huidige interfaces zijn niet voor touchscreen interactie ontworpen, wat betekent dat hun nieuwe touchscreen technologie in principe van de grond af opgebouwd moet worden. Dan kan je t even goed m.b.v. deze sandboxing-techniek doen.
Voor de andere apps is er al een enorme (legacy)codebase aanwezig, dus is t handiger om dat iets naar achter te schuiven terwijl intussen wel al de mogelijkheid geboden wordt om hiermee voor non-touchscreen apps aan de slag te gaan.
Ik ben benieuwd wat voor performance-impact dat gaat hebben en hoe dat gaat samenwerken met applicaties die nogal leunen op hardware, bv games.
Ik vindt het best een puik idee. Jammer dat het zo gelimiteerd wordt toegepast, eigenlijk. Ik zou best heel mijn Windows 8 zo onderverdeeld willen zien (behalve de benodigde resources dan... Maar als ze dat slim zouden weten weg te coden).
Anoniem: 175233 6 april 2011 15:14
Nu wordt er gedaan alsof dit iets nieuws is... Maar vanaf Vista draait IE al in een sandbox! En daar merkt de gebruiker niets van.

Het is logisch dat MS de sandbox constructie verder uitbreid met meerdere logen. De software verschuift steeds meer richting internet, app stores, en webapps, en de veiligheids risico's daarmee ook.
Precies, alleen heet die sandbox in Vista 'security compartment', maar het is inderdaad niks nieuws.
Ik vroeg mij af bij het lezen van dit artikel wat de toekomst van anti-virus bedrijven is als Windows straks zandbakken gaat gebruiken.

http://tweakers.net/nieuw...afee-door-intel-goed.html

Webapplicaties zouden in 'bucket 3' thuishoren.

Dus de toekomst in een bedrijfsnetwerk is Windows 8 op de thinclients die vervolgens in bucket 3 verbinding maken met de cloud?

Met het toevoegen van een dichtgespijkerde sandbox lijkt Microsoft van Windows 8 een OS te maken dat aanmerkelijk minder onderhoud door de gebruiker zou vergen.

Werkt volgens mij twee kanten op. Krijgen gebruikers ook minder toegang/controle over het OS of niet? Kan ik straks ook nog gewoon powertools, tweakui etc installeren voor Windows 8 of is dat dan ook dichtgetimmerd? Is het draaien van apps straks alleen nog maar mogelijk in een zandbak? Dan maar hopen dat ze niet als bij Vista UAC aanzetten want dan gaan gebruikers zich daar mateloos aan iriteren (are you sure you want program X to do Y? y/n) en alles buiten de zandbak draaien.

Microsoft wil in 'bucket 4' zogenaamde immersive apps plaatsen. Dergelijke applicaties zouden de traditionele Windows-navigatiecomponenten vervangen door eigen creaties, waarmee de gebruiker een 'unieke' omgeving moet krijgen.

Zoiets als de yes/no/cancel knoppen aanpassen bij spyware/addware/etc of begrijp ik het verkeerd?

Verder hoop ik dat Windows 8 wel wat te bieden heeft zoals Windows 7 naar mijn mening de beste is tot dusver vergeleken met de rest.
Microsoft is van plan om in Windows 8 een sandbox-omgeving op te nemen waarbinnen applicaties uit de App Store moeten draaien.
Als ik het goed begrijp, geldt die sandbox enkel voor applicaties uit de app store?

Leuk idee maar wat heb je aan een sandbox die applicaties isoleert vanuit een appstore waarvan de submits (vermoedelijk) worden nagekeken door microsoft? De kans dat daar een malafide programma in terecht komt, is klein. Ik zeg niet dat die kans onbestaande is, maar klein.

De applicaties in windows, zoals we die nu al kennen en kunnen installeren, zullen blijven bestaan, je kan die dan gewoon installeren om de appstore heen. Maar dat zijn net de applicaties waarbij je ellende kunt binnenhalen op je PC, en die zullen niet gaan draaien binnen een sandbox?

Ik vind het vreemd.

Ook met de volgende uitspraak heb ik problemen:
Met het toevoegen van een dichtgespijkerde sandbox lijkt Microsoft van Windows 8 een OS te maken dat aanmerkelijk minder onderhoud door de gebruiker zou vergen.
Ik ben van mening, dat zolang windows te installeren valt op elke mogelijke configuratie die je je kan inbeelden, dat er onderhoud mee gepaard gaat, drivers, applicaties, ...

De enige manier waarop "onderhoud" terug gedrongen wordt, is dat applicaties uit de app store, waarschijnlijk snel en makkelijk te installeren/verwijderen zijn zonder dat er deeltjes van het programma achterblijven of iets dergelijks.. Beetje vergelijkbaar met Silverlight OOB applicatie, die installeer je ook met een wip en een klik. (idem voor verwijderen)

Op dit item kan niet meer gereageerd worden.