Wikisage is op 1 na de grootste internet-encyclopedie in het Nederlands. Iedereen kan de hier verzamelde kennis gratis gebruiken, zonder storende advertenties. De Koninklijke Bibliotheek van Nederland heeft Wikisage in 2018 aangemerkt als digitaal erfgoed.
- Wilt u meehelpen om Wikisage te laten groeien? Maak dan een account aan. U bent van harte welkom. Zie: Portaal:Gebruikers.
- Bent u blij met Wikisage, of wilt u juist meer? Dan stellen we een bescheiden donatie om de kosten te bestrijden zeer op prijs. Zie: Portaal:Donaties.
Simplified Mandatory Access Control Kernel
Smack (volledige naam: Simplified Mandatory Access Control Kernel) is een onderdeel van het besturingssysteem Linux dat gebruikt wordt voor informatiebeveiliging. De oorspronkelijke auteur van Smack is Casey Schaufler, die de allereerste versie op 17 april 2008 uitbracht, onder de GPL2-licentie. Met Smack kan ervoor gezorgd worden, dat een computer die linux gebruikt beter beveiligd wordt.
Bij het ontwerp van Smack was eenvoud het voornaamste doel. Het gebruik van Smack is veel eenvoudiger dan dat van bijvoorbeeld SELinux, en daarmee samenhangend is de toepassing ervan ook beperkter. Smack is officieel sinds Linux release 2.6.25 beschikbaar.
Smack gebruikt extended attributen van bestandssystemen om labels van bestanden bij te houden. Eenvoudig gesteld zijn extended attributen kenmerken van bestanden en mappen die uitgebreider zijn dan de kenmerken die hier normaal gesproken op van toepassing zijn.
Smack is een kernel security module voor Linux die data en interacties van processen beschermt tegen kwaadwillende manipulatie, waarbij een verzameling op maat gemaakte Mandatory Access Control-regels wordt gebruikt. kenmerkend voor Mandatory Access Control of MAC is, dat gebruikers niet kunnen bepalen welke rechten andere gebruikers hebben, maar dat het systeem, of degene die het systeem onder controle heeft, dit bepaalt.
Voor het mobiele besturingssysteem MeeGo was Smack het voornaamste accesscontrolmechanisme. Verder wordt het gebruikt om HTML5-webapplicaties in een sandbox te kunnen draaien binnen de Tizen-architectuur, in de commerciële Wind River Linux-toepassingen voor ontwikkeling van embedded devices en in digitale televisieproducten van Philips.
Voor het wijzigen van deze attributen kan men het attr-commando gebruiken. Het security.SMACK64-attribuut wordt gebruikt om het Smack label files in te stellen. Als men /dev/null zo wil opzetten, dat het het door Smack gereserveerde label "ster" krijgt, kan dit bijvoorbeeld op de volgende manier:
attr -S -s SMACK64 -V '*' /dev/null
Ontwerp
Smack bestaat uit drie onderdelen:
- Een kernelmodule die is geïmplementeerd als een Linux Security Module. Het werkt het beste met filesystemen die extended attributen ondersteunen.
- Een opstartscript dat ervoor zorgt dat device files de correcte Smack-attributen hebben en dat de SMACK-configuratie inlaadt.
- Een aantal aanpassingen (patches) voor de GNU Core Utilities package die ervoor zorgen dat zij kunnen omgaan met extended file attributes van Smack. Voor Busybox zijn er ook een aantal patches beschikbaar gesteld voor dit doel. User-space-ondersteuning is niet vereist voor Smack.
Kritiek
Een punt van kritiek dat tegen Smack is ingebracht is, dat het als een nieuwe LSM-module is geschreven, terwijl het ook als SELinux security policy had kunnen worden geïmplementeerd, die gelijkwaardige functionaliteit verzorgt. Dergelijke SELinux policies zijn wel voorgesteld, maar niemand heeft nog een praktisch werkende SELinux policy geïmplementeerd die Smack volledig vervangt. De auteur van SMACK antwoordde op deze kritiek, dat het niet praktisch zou zijn Smack door een SELinux policy te vervangen, aangezien SELinux een ingewikkelde configuratietaal heeft en er ook uit filosofisch oogpunt verschillen zijn tussen het ontwerp van SMACK en dat van SELinux.