Drop unneeded capabilities (by³o: Re: bind 8.2.2_P3)

Pawel Krawczyk kravietz w ceti.pl
Pon, 15 Lis 1999, 13:29:29 CET


[pi±tek, 12 listopad 1999], Tomasz K³oczko napisa³(a):

> Tak jeszcze apropo bind (trochê) poniewa¿ w³a¶nie z Paw³em popisali¶my
> sobie czy by nie dodaæ osobnego u¿ytkownika i grupy na to ¿eby uruchamiaæ
> binda. W piwerwszej chwili pomy¶la³em ¿e nie zaszkodzi. W dugiekj
> pomy¶la³em sobie o jakie¶ modyfikacji w kernelu która uniemozliwia³aby
> procesom o konkretnym uid/gid wykonywanie operacji plikowych, a potem
> Artur mnie poprawi³, ¿e wystarczy³oby ¿eby np. bind po starcie pozbywa³
> sie odpowiednich CAP* .. w takiej sytuacji bind móg³by chodziæ zdaje siê
> nawet na uid/gid=0.

Zrzucanie capów swoj± drog±, ale w przypadku takiej koby³y jak BIND to
niestety nie rozwi±¿e podstawowego problemu, a mianowicie zagro¿enia
atakami typu buffer overrun. Named w ca³ym okresie dzia³ania potrzebuje
praktycznie wszystkich capów, które umo¿liwi³yby równie¿ dzia³anie
exploitowi (stworzenie pliku, otwarcie gniazda itp). Je¶li ¼le piszê,
to proszê mnie poprawiæ - mog³em o czym¶ zapomnieæ.

BIND powinien chodziæ jako u¿ytkownik `named' i grupa `named' (opcje
-u named -g named), bo w ten sposób likwidujemy podstawowe zagro¿enie,
tj. mo¿liwo¶æ otwarcia zdalnego roota w przypadku wykrycia kolejnych
b³êdów w BINDzie. Takie zagro¿enie niestety ca³y czas istnieje,
szczególnie w ¶wietle b³êdów poprawionych w P3.

BTW jest ju¿ wersja P5.

BTW2 mo¿na te¿ siê zainteresowaæ alternatywami dla BIND - istnieje np.
taki demon Denst (www.dents.org). Jeszcze go nie testowa³em w warunkach
bojowych (800+ domen), ale nied³ugo to zrobiê.

> Niech mnie kto¶ w razie czego poprawi je¿eli co¶ pomiesza³em ale je¿eli
> dobrze koncypujê to tego typu poprawek mo¿e potrzebowaæ jeszcze ca³kiem
> spora ilo¶c innych programów (chodzi o procesy us³ug ¿eby po starcie
> pozbywa³y siê capabilities które nie s± im potrzebne). Do tej grupy
> kwalifikowa³yby sie zapewne rózne inet serwisy, a tak¿e same inet serwery
> (po co im mo¿liwo¶æ operowania na plikach czy mozliow¶æ wykonywanai chroot
> czy kilka innych).

Ja bym z tym poczeka³, a¿ capabilities wejd± do ELFa (ustawianie capów
konkretnym binariom, co¶ jak chattr). Z tym, ¿e lepiej ¿eby zaopiniowa³
to kto¶ kto bardziej siê tym tematem interesowa³.

> Ciekawe czy da³oby siê jako¶ logowaæ u¿ywanie capabilities kttórcych
> program juz nie posiada (mog³oby byæ to przydatne w diagnostyce b³edów
> jakie jeszcze s± w programach).

-- 
Pawel Krawczyk, CETI internet, Krakow. http://ceti.pl/~kravietz/



Wiêcej informacji o li¶cie dyskusyjnej pld-devel-pl