/ Forside / Teknologi / Internet / Sikkerhed / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Sikkerhed
#NavnPoint
stl_s 37026
arlet 26827
miritdk 20260
o.v.n. 12167
als 8951
refi 8694
tedd 8272
BjarneD 7338
Klaudi 7257
10  molokyle 6481
Kør nye programmer i "sandkasse"?
Fra : Peter


Dato : 24-01-02 22:58

I et indlæg fra Kasper Dupont stod der:

Og kør så vidt muligt nye programmer i en "sandkasse".

Hvad vil det sige?

Mvh., Peter




 
 
Christian Hemmingsen (24-01-2002)
Kommentar
Fra : Christian Hemmingsen


Dato : 24-01-02 22:59

"Peter" <peter@ishoejby.dk> writes:

> I et indlæg fra Kasper Dupont stod der:
>
> Og kør så vidt muligt nye programmer i en "sandkasse".

På et unix(agtigt) system vil du nok typisk oprette en ny bruger og så
køre programmet som denne.
På den måde undgår du at ødelægge andet end hvad den bruger ejer.

--
Christian Hemmingsen

Christian E. Lysel (24-01-2002)
Kommentar
Fra : Christian E. Lysel


Dato : 24-01-02 23:12

Christian Hemmingsen wrote:

>>I et indlæg fra Kasper Dupont stod der:
>>Og kør så vidt muligt nye programmer i en "sandkasse".
> På et unix(agtigt) system vil du nok typisk oprette en ny bruger og så
> køre programmet som denne.
> På den måde undgår du at ødelægge andet end hvad den bruger ejer.


Endvidere kan det også kører i en chroot (også kaldet en jail-root :)

På windows (og linux) kan du kører vmware. se www.vmware.com


Peter (25-01-2002)
Kommentar
Fra : Peter


Dato : 25-01-02 00:04

"Christian E. Lysel" <chlyshoswmdatapunktumcom@example.net> skrev i en
meddelelse news:3C5086A4.3070409@example.net...
> Christian Hemmingsen wrote:

> > På et unix(agtigt) system vil du nok typisk oprette en ny bruger og så
> > køre programmet som denne.
> > På den måde undgår du at ødelægge andet end hvad den bruger ejer.
>
>
> Endvidere kan det også kører i en chroot (også kaldet en jail-root :)
>
> På windows (og linux) kan du kører vmware. se www.vmware.com

- - - - - - - -

Tak for svarene - så blev jeg det klogere.

Mvh., Peter



Michael Knudsen (29-01-2002)
Kommentar
Fra : Michael Knudsen


Dato : 29-01-02 01:45

Hej Christian

> Endvidere kan det også kører i en chroot (også kaldet en jail-root :)

Pas på med at lade jail-roots lyde alt for sikkert. Man kan - under
visse omstændigheder - godt slippe ud af et jail-root, så det bidrager
kun til sikkerheden, det er ikke en ultimativ løsning. Dermed heller
ikke forstået således, at det er uanvendeligt. Det er meget anvendeligt
i mange forbindelser.

Mvh. Michael
--
Rumour is information distilled so finely that it can filter through
anything.
-- (Terry Pratchett, Feet of Clay)

Kasper Dupont (29-01-2002)
Kommentar
Fra : Kasper Dupont


Dato : 29-01-02 12:39

Michael Knudsen wrote:
>
> Hej Christian
>
> > Endvidere kan det også kører i en chroot (også kaldet en jail-root :)
>
> Pas på med at lade jail-roots lyde alt for sikkert. Man kan - under
> visse omstændigheder - godt slippe ud af et jail-root, så det bidrager
> kun til sikkerheden, det er ikke en ultimativ løsning. Dermed heller
> ikke forstået således, at det er uanvendeligt. Det er meget anvendeligt
> i mange forbindelser.

En jail-root er kun en hjælp, hvis det kombineres med, at lade
programmet køre som en anden bruger. Hvis man har root
permitions er det meget nemt at slippe ud af en jail-root.

Hvis kombinationen anvendes kan man i høj grad sikre sig mod
angreb, der involverer kald af suid programmer. Hvis dit
jail-root hieraki er helt fri for suid programmer, er du
meget bedre sikret. Det ville f.eks. have garderet mod det
root exploit, der blev fundet i Linux kernen sidste år.

--
Kasper Dupont
For sending spam use mailto:razor-report@daimi.au.dk

Christian E. Lysel (29-01-2002)
Kommentar
Fra : Christian E. Lysel


Dato : 29-01-02 22:36

Kasper Dupont wrote:

> Hvis kombinationen anvendes kan man i høj grad sikre sig mod
> angreb, der involverer kald af suid programmer. Hvis dit
> jail-root hieraki er helt fri for suid programmer, er du
> meget bedre sikret. Det ville f.eks. have garderet mod det
> root exploit, der blev fundet i Linux kernen sidste år.


Et andet problem kan være adgang til localhost, og evt. daemoner det
lytter på localhost.

Der eksitere nogle kernel patchet til Linux, således at man kan bygge en
virtuel maskine, hvor en process ikke kan se andre processor, eller
socks, ectetera. HP har også lavet noget ligende.




Kasper Dupont (30-01-2002)
Kommentar
Fra : Kasper Dupont


Dato : 30-01-02 13:27

"Christian E. Lysel" wrote:
>
> Kasper Dupont wrote:
>
> > Hvis kombinationen anvendes kan man i høj grad sikre sig mod
> > angreb, der involverer kald af suid programmer. Hvis dit
> > jail-root hieraki er helt fri for suid programmer, er du
> > meget bedre sikret. Det ville f.eks. have garderet mod det
> > root exploit, der blev fundet i Linux kernen sidste år.
>
> Et andet problem kan være adgang til localhost, og evt. daemoner det
> lytter på localhost.

Korrekt, det problem kunne muligvis løses med en firewall,
der nægter det anvendte UID enhver netværks kommunikation.

>
> Der eksitere nogle kernel patchet til Linux, således at man kan bygge en
> virtuel maskine, hvor en process ikke kan se andre processor, eller
> socks, ectetera. HP har også lavet noget ligende.

Man kunne muligvis også anvende User Mode Linux, men den
har jeg ikke selv nogen erfaringer med.

--
Kasper Dupont
For sending spam use mailto:razor-report@daimi.au.dk

Christian Laursen (31-01-2002)
Kommentar
Fra : Christian Laursen


Dato : 31-01-02 00:17

Kasper Dupont <kasperd@daimi.au.dk> writes:

> > Der eksitere nogle kernel patchet til Linux, således at man kan bygge en
> > virtuel maskine, hvor en process ikke kan se andre processor, eller
> > socks, ectetera. HP har også lavet noget ligende.
>
> Man kunne muligvis også anvende User Mode Linux, men den
> har jeg ikke selv nogen erfaringer med.

User Mode Linux nærmer sig efterhånden version 1.0, hvor man
burde kunne forvente en stabilitet, der kan bruges i produktion.

Jeg har arbejdet en del med den, og den virker såmænd som en ganske
almindelig linux, så den er også perfekt at teste potentielt farlige
ting på (Nye filsystemer fx).

Hvis man kører den som en upriviligeret bruger og i øvrigt chrooted,
burde man være relativt sikker, selv hvis nogen skulle finde en bug
i den, som muliggør at man kan bryde ud.

At man ikke skal patche det underliggende system er IMHO også et
pænt stort plus.

--
Med venlig hilsen
Christian Laursen

Christian E. Lysel (29-01-2002)
Kommentar
Fra : Christian E. Lysel


Dato : 29-01-02 22:32

Michael Knudsen wrote:

> Pas på med at lade jail-roots lyde alt for sikkert. Man kan - under
> visse omstændigheder - godt slippe ud af et jail-root, så det bidrager


Hvis current directory peger på et katalog ude for jail-root'en kan man
nemt komme ud. Dette løses ved at skifte current directory til jail-root'en.

Dette er rettet i de fleste chroot kald.

> kun til sikkerheden, det er ikke en ultimativ løsning. Dermed heller
> ikke forstået således, at det er uanvendeligt. Det er meget anvendeligt
> i mange forbindelser.


root kan alt, derfor vil en bruger der tilegner sig root rettigheder i
en jail-root, nemt kunne bryde ud af denne. Dog vil fordelen typisk være
at det rod-katalog han befinder sig i er strippet for alt, og simple
angreb vil således ikke kunne lykkes.


Kasper Dupont (30-01-2002)
Kommentar
Fra : Kasper Dupont


Dato : 30-01-02 13:29

"Christian E. Lysel" wrote:
>
> Hvis current directory peger på et katalog ude for jail-root'en kan man
> nemt komme ud. Dette løses ved at skifte current directory til jail-root'en.
>
> Dette er rettet i de fleste chroot kald.

Hvad mener du helt præcist med det?

Man kan være interesseret i, at kunne have sit
working directory udenfor chroot. Ellers kan
man blot starte med:
chroot(whatever);
chdir("/");

>
> root kan alt, derfor vil en bruger der tilegner sig root rettigheder i
> en jail-root, nemt kunne bryde ud af denne. Dog vil fordelen typisk være
> at det rod-katalog han befinder sig i er strippet for alt, og simple
> angreb vil således ikke kunne lykkes.

Nemlig.

--
Kasper Dupont
For sending spam use mailto:razor-report@daimi.au.dk

Christian E. Lysel (31-01-2002)
Kommentar
Fra : Christian E. Lysel


Dato : 31-01-02 23:49

Kasper Dupont wrote:

> Hvad mener du helt præcist med det?
>
> Man kan være interesseret i, at kunne have sit
> working directory udenfor chroot. Ellers kan


Nix, hvis dette er tilfældet har du forbindelse ud af chroot'en og kan
derved slippe ud.

I hvilken sammenhæng vil det være interessant har have working director
udenfor chroot?

> man blot starte med:
> chroot(whatever);
> chdir("/");


Nej chdir skal udføres relativt, da rod'en peger på chroot'en.

dvs.

chdir("/")
chroot("/her-ligger-jailen")
chdir("../bin/");



Kasper Dupont (01-02-2002)
Kommentar
Fra : Kasper Dupont


Dato : 01-02-02 09:23

"Christian E. Lysel" wrote:
>
> Kasper Dupont wrote:
>
> > Hvad mener du helt præcist med det?
> >
> > Man kan være interesseret i, at kunne have sit
> > working directory udenfor chroot. Ellers kan
>
> Nix, hvis dette er tilfældet har du forbindelse ud af chroot'en og kan
> derved slippe ud.

Ja, det kan man også have brug for.

>
> I hvilken sammenhæng vil det være interessant har have working director
> udenfor chroot?

Rpm gør faktisk brug af det. Jeg prøvede at køre strace på
rpm for at se hvad den faktisk gør, den gør sådan:

chdir("/");
chroot(whatever);
....
chroot(".");

>
> > man blot starte med:
> > chroot(whatever);
> > chdir("/");
>
> Nej chdir skal udføres relativt, da rod'en peger på chroot'en.

Ovenstående var et eksempel på, hvordan man fik sit current
directory indenfor chroot.

>
> dvs.
>
> chdir("/")
> chroot("/her-ligger-jailen")
> chdir("../bin/");

Jeg kan ikke gennemskue hvad du vil med de tre linier. Så
vidt jeg kan se, gør de det samme som:

chdir("/")
chroot("/her-ligger-jailen")
chdir("/bin");

Medmindre du allerede har udført en chroot tidligere. Hvis
der har været udført en chroot tidligere kan man slippe ud
ved at udføre chroot til et nyt directory og derefter
bruge chdir("..") indtil man når ud hvor man ønsker, og
der kan man så lave en chroot(".");

--
Kasper Dupont
For sending spam use mailto:razor-report@daimi.au.dk

Christian E. Lysel (01-02-2002)
Kommentar
Fra : Christian E. Lysel


Dato : 01-02-02 13:04

Kasper Dupont wrote:


>>chdir("/")
>>chroot("/her-ligger-jailen")
>>chdir("../bin/");


resultatet er: /her-ligger-jailen/../bin/, hvilket svarer til /bin/

> chdir("/")
> chroot("/her-ligger-jailen")
> chdir("/bin");

resultatet er: /her-ligger-jailen/bin/


Kasper Dupont (01-02-2002)
Kommentar
Fra : Kasper Dupont


Dato : 01-02-02 16:41

"Christian E. Lysel" wrote:
>
> Kasper Dupont wrote:
>
> >>chdir("/")
> >>chroot("/her-ligger-jailen")
> >>chdir("../bin/");
>
> resultatet er: /her-ligger-jailen/../bin/, hvilket svarer til /bin/

På hvilket system sker det? Jeg prøvede på Linux 2.4.17,
og det sidste chdir kald fejler med ENOENT. Jeg kan ikke
helt gennemskue hvad .. rent faktisk gør, det virker
lidt inkonsistent. Hvis jeg bruger cd .. fra en shell
vil jeg før eller siden havne indenfor chroot, men det
kunne tyde på, at shellen gør noget mere end blot et
chdir kald.

>
> > chdir("/")
> > chroot("/her-ligger-jailen")
> > chdir("/bin");
>
> resultatet er: /her-ligger-jailen/bin/

Ja.

--
Kasper Dupont
For sending spam use mailto:razor-report@daimi.au.dk

Christian E. Lysel (01-02-2002)
Kommentar
Fra : Christian E. Lysel


Dato : 01-02-02 16:58

Kasper Dupont wrote:

> "Christian E. Lysel" wrote:
>
>>Kasper Dupont wrote:
>>
>>
>>>>chdir("/")
>>>>chroot("/her-ligger-jailen")
>>>>chdir("../bin/");
>>>>
>>resultatet er: /her-ligger-jailen/../bin/, hvilket svarer til /bin/
>>
>
> På hvilket system sker det? Jeg prøvede på Linux 2.4.17,
> og det sidste chdir kald fejler med ENOENT. Jeg kan ikke
> helt gennemskue hvad .. rent faktisk gør, det virker
> lidt inkonsistent. Hvis jeg bruger cd .. fra en shell
> vil jeg før eller siden havne indenfor chroot, men det
> kunne tyde på, at shellen gør noget mere end blot et
> chdir kald.


nyere linux'er, dvs. mindre end 1-2 år gamle, laver automatisk en chdir
til jail-rooten ved kald af funtionskaldet chroot.



Kasper Dupont (01-02-2002)
Kommentar
Fra : Kasper Dupont


Dato : 01-02-02 17:45

"Christian E. Lysel" wrote:
>
> nyere linux'er, dvs. mindre end 1-2 år gamle, laver automatisk en chdir
> til jail-rooten ved kald af funtionskaldet chroot.

Nej. Hvis det var tilfældet, ville nedenstående program ikke virke.

#include <unistd.h>
int main() {
chdir("/");
chroot("tmp");
chroot(".");
execl("/bin/sh","/bin/sh",NULL);
return 1;
}

--
Kasper Dupont
For sending spam use mailto:razor-report@daimi.au.dk

Christian E. Lysel (01-02-2002)
Kommentar
Fra : Christian E. Lysel


Dato : 01-02-02 17:57

Kasper Dupont wrote:

> "Christian E. Lysel" wrote:
>
>>nyere linux'er, dvs. mindre end 1-2 år gamle, laver automatisk en chdir
>>til jail-rooten ved kald af funtionskaldet chroot.
> Nej. Hvis det var tilfældet, ville nedenstående program ikke virke.

Sorry, jeg mente at chroot(1) kommandoen, laver en chdir("/") efter den
kalder chroot funktionen.

"strace chroot /tmp/":

[snip]
chroot("/tmp/") = 0
chdir("/")             = 0


Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste