Gå til hovedindhold
Version2 it for professionelle
Forsiden

Hovedmenu

  • It-nyheder
  • Blogs
  • It-job
  • It-firmaer
  • Emner
  • Opret bruger
  • Log ind
Se kommentarer (6)
Emner Udviklingsværktøjer, Open source, Sikkerhedssoftware

Pebret Sikkerhed

Af Poul-Henning Kamp 12. august 2010 kl. 12:06

Da jeg var purk, var min mor dagplejermor og derfor havde huset et "legerum" hvor hele legokassen blev tømt ud i ferier og weekender.

En mandag efter en sådan extravaganza, kom en af børnene ud i køkkenet til min mor med en stor gul LegoTeknik konstruktion og overrakte den med ordende "Den ligner noget jeg ikke skal lege med".

Denne tankegang er stadig dybt fremmed for operativsystemer og programmer, selvom "Priviledge Separation" bestemt ikke er noget nyt.

Bortset fra nogle få centrale programmer med OpenSSHd og Googles Chromium som poster-boys, er princippet ukendt i vide kredse.

Ikke mindst fordi det er utroligt svært at implementere separationen, den "sandboxing" som Googles Chromium browser laver fylder f.eks 22,350 linier kode i Windows, med avendelse af Discretionarly Access Control og ACL's og sikrer faktisk ikke ret godt.

Men der er håb forude.

Min gode ven og lusepuster, Robert Watson, har i nogle år arbejdet på et projekt der hedder "Capsicum" som udvider POSIX modellen med en "capability" facilitet.

Med Capsicum, kan Chromiums sandboxe laves med blot 100 linier kode under FreeBSD og det lukker alle ladeportene: Filsystem, IPC, net osv.

Dem der har oplevet Robert Watson holde foredrag ved at man virkelig får noget for pengene, men desværre er det stort set krop umuligt at læse hans slides uden lydsporet, hvis man ikke på forhånd ved hvad han taler om. Men der er et par guldkorn i hans slides fra USENIX Security Symposium denne uge der er værd at checke.

Hatten af for Robert: Det er den slags nytænkning der skal til.

phk

Send Tweet
Udskriv
Billede af Poul-Henning KampOm Poul-Henning Kamp

Kommentarer (6)

Opret en konto eller log ind for at følge indhold på Version2 - og bliv opdateret via e-mail eller rss

Følg kommentarer
Henrik Brix Andersen 12. aug. 2010 - 23.49
 
100 linjer?

Hvor mange LoC fylder Capsicum så?

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Jesper Louis Andersen 13. aug. 2010 - 10.40
 
Det er rart at se ideerne fra EROS / plan9 i FreeBSD

Capability-orienteret sikkerhed er noget jeg har været en fortaler for gennem et par år. Desværre har det ikke, indtil nu, rigtigt været muligt at få i klassiske operativsystemer. Men det har R. Watson nu lavet om på. Tak for det!

Privsep bliver også benyttet i mange andre systemer end lige dem du nævner. Qmail og Postfix. Xorg, OpenNTPd, tcpdump, etc på OpenBSD.

For dem der ikke kender til ideen: En capability er en "nøgle/token" til at kunne gøre noget i systemet. De kan ikke forfalskes, selv om man skulle prøve. Hvis f.eks. en webserver skal have lov til at kunne kommunikere på en given port, så kan man sende den capability til ham fra operativsystemet. Dermed har han lov til at gøre dette, og kun dette med den capability. Andre kan ikke få adgang da de ikke sidder med den token som giver adgang og ikke kan forfalske sig til den.

Det kan vises, at capabilities er stærkere end den traditionelle UNIX-sikkerhedsmodel. Man kan f.eks. ende op med et system hvor selv superbrugeren ikke har adgang til dele af systemet - og det uden de helt store krumspring.

Ikke helt tilfældigt, så har sprog som Google Go implicit support for capabilities i dets kanalprimitiv. Det skyldes formentlig plan9-historikken blandt Go's forfattere. Erlang har også capabilities: Process ID'er og Referencer er non-forgeable i Erlang. Men for begge sprogs vedkommende handler det ikke i så høj grad om at sikre systemet som det handler om at en programmør ikke ved et uheld gør noget utilsigtet.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Anonym (ikke efterprøvet) 13. aug. 2010 - 11.21
 
Ser rigtigt interessant ud

Det kunne være interessant at forsøge at mappe det ud fra et personid perspektiv.

Umiddelbart ville jeg mene at det er i fuld overenstemmelse med det jeg ville kalde kontekstuel identitet og kontekst isolering.

Det kan langt hen ad vejen være ækvivalent om du definerer en kontekst ud fra den viden som konteksten indeholder eller ud fra de implicitte rettigheder til noget udenfor kontekst, fordi rettighederne i praksis inddrage viden i kontekst.

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Poul-Henning Kamps billede
Poul-Henning Kamp 13. aug. 2010 - 11.37
 
Re: Det er rart at se ideerne fra EROS / plan9 i FreeBSD
Man kan f.eks. ende op med et system hvor selv superbrugeren ikke har adgang til dele af systemet - og det uden de helt store krumspring.

Ja, det hedder "jail" :-)

Men lige som den privsep der anvendes andre steder, er det en utrolig grovkornet form for capabilities der slet ikke kan udtrykke de nuancer der er behov for.

@Henrik: Robert har lovet at et nyt patch imod FreeBSD 8.1 vil være klart inden længe, det giver det definitive svar på dit spørgsmål. Hold øje med Capsicum siden.

Poul-Henning

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Martin Hundebøll 13. aug. 2010 - 17.30
 
Alip's Sydbox

Nu er jeg ikke så meget inde i sandboxing, men er der (og i så fald: hvad er?) forskel på det PHK beskriver og så Sydbox[1], som Ali Polatel udvikler til exherbo?

[1] http://alip.github.com/2010/05/07/pinktrace/

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer
Poul-Henning Kamps billede
Poul-Henning Kamp 13. aug. 2010 - 18.51
 
Re: Alip's Sydbox

Jeg kender ikke Sydbox, men efter et hurtigt kig kan jeg ikke se hvorledes de undgår "the usual replacement race" hullet.

Forestil dig et open("/dev/null"...) kald.

Så snart checket har clear'et dig for adgang til /dev/null har du en anden tråd der skifter pointeren ud med en der peger på "/dev/mem" inden kernen når at åbne filen.

Man kan ikke implementere "layered security" hvis man ikke kan sikre argumenterne der arbejdes på og derfor skal man enten wrappe systemkaldene helt, eller lade være at prøve.

Men den rigtige person at spørge er Robert Watson, jeg er bare observatør på sidelinien.

Poul-Henning

  • Stem op 0
  • Stem ned 0
  • Log ind eller opret en konto for at skrive kommentarer

Tilføj kommentar

Opret en konto eller log ind for at følge indhold på Version2 - og bliv opdateret via e-mail eller rss

Følg kommentarer
Log ind herunder eller opret en bruger for at skrive kommentarer
Du kan logge ind med din e-mail-adresse
Der er forskel på store og små bogstaver i adgangskoden.
Glemt adgangskode?

Seneste nyt

It skal spare kommunerne for 165 millioner kroner i 2012

Udgivet 9. feb 16.02Opdateret 9. feb 16.02

Adobe: Vi laver ikke Flash til Android-udgaven af Chrome

Udgivet 9. feb 15.15Opdateret 9. feb 15.15

Så oldnordisk er politiets it-miljø: Nostalgisk gensyn med 1980’erne

Udgivet 9. feb 14.22Opdateret 9. feb 15.12

EMC lægger flash-cache på PCIe-kort: 4.000 gange hurtigere end harddiske

Udgivet 9. feb 13.39Opdateret 9. feb 13.39

Egedal Kommune sparer 100.000 om året med open source-CMS

Udgivet 9. feb 12.56Opdateret 9. feb 12.56
Flere it-nyheder »
Få it-nyheder og blogs hver dag med Version2's nyhedsbrev.

Seneste debat

  1. Stop SOPA, PIPA, ACTA, TPP og alle dem der kommer efter

    50 comments.
    Last update 2 timer 26 minutter
    Skrevet af Bjarne W. B. Petersen
  2. Opdateret liste over danske iværksættere

    1 comment.
    Last update 2 timer 28 minutter
    Skrevet af Mikkel Høgh
  3. Derfor bliver dårlige it-projekter ikke stoppet i tide

    1 comment.
    Last update 2 timer 49 minutter
    Skrevet af Kasper Jørgensen
  4. Grotesk jobinterview i 2007: »Tag ikke jobbet, vi får alligevel aldrig Polsag til at virke«

    17 comments.
    Last update 2 timer 58 minutter
    Skrevet af Claus Waldersdorff Knudsen
  5. Så oldnordisk er politiets it-miljø: Nostalgisk gensyn med 1980’erne

    6 comments.
    Last update 3 timer 39 sekunder
    Skrevet af Simon Justesen
  6. Domæne-forening: Lov om .aarhus og .cph var for tynd

    9 comments.
    Last update 3 timer 51 minutter
    Skrevet af Jarle Knudsen
  7. ACTA er i orden!

    51 comments.
    Last update 6 timer 23 minutter
    Skrevet af Jarle Knudsen
  8. It-advokat: Nu går grænsebommene ned over internettet

    10 comments.
    Last update 8 timer 10 minutter
    Skrevet af Niels Elgaard Larsen
Mere debat »

Information

  • Kontakt redaktionen
  • Job- og annoncesalg
  • Teknisk support
  • Om Version2
  • Brugerbetingelser
  • Privatlivspolitik

Aktuelle emner

  • Agil udvikling
  • Android
  • Bruttolønsordning
  • Business Intelligence
  • Cloud computing
  • Digitaliseringsstyrelsen
  • HTML5
  • Harddisk-priser
  • IE9
  • Intranet
  • It-sikkerhed
  • Kindle Fire
  • Multimedieskat
  • NemID
  • OS X Lion
  • Open source CMS
  • Projektledelse
  • Scrum
  • Sharepoint intranet
  • Storage
  • Ubuntu 11.10
  • Virtualisering
  • Windows 8
  • Windows Phone 7
  • iOS 5
  • iPhone 4S

Tjenester

  • Android-app
  • iPhone-app
  • RSS-feeds
Følg @version2dk
Få it-nyheder og blogs hver dag med Version2's nyhedsbrev.

Version2 udgives af

  • Mediehuset Ingeniøren A/S work Skelbækgade 4 1717 København V
  • Tlf. work 33265300