Portál AbcLinuxu, 7. května 2025 20:38

Lokální eskalace práv ve Firejailu

Ve Firejailu, nástroji pro sandboxování aplikací, bylo nalezeno a opraveno několik závažných bezpečnostních chyb. CVE-2017-5180 například umožňuje lokální eskalaci práv. Jednoduše spustit shell pod právy roota dovoluje další chyba CVE-2017-5207. Dle poznámek k vydání jsou chyby opraveny ve verzích Firejailu 0.9.38.8 a 0.9.44.4 [reddit]

10.1.2017 01:37 | Ladislav Hagara | Bezpečnostní upozornění


Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

11.1.2017 10:04 smrt
Rozbalit Rozbalit vše Re: Lokální eskalace práv ve Firejailu
Odpovědět | Sbalit | Link | Blokovat | Admin
Jen velice zbezne jsem mrknul na kod toho projektu a "obraty", ktere se zde pouzivaji, maji k bezpecnosti hodne daleko. A to nejsem zadnej bezpecnostni expert!

Treba toto:

https://github.com/netblue30/firejail/blob/master/src/firejail/util.c#L306

Kdiz lstat selze, soubor, dle teto logiky neni link. To je jen jeden z mnoha problemu.

Nasledne se pak bezne skolacka chyba:
if (!is_link(fname)) {
    int fd =  open(fname);
    write(fd, .....)
}
Nikoho nezajima, ze mezi is_link a open muze nekdo soubor "transformovat" na link. Ma to byt:
fd = open(fname)
if (fstat(fd, &st) == -1) error();
if (S_ISKNK(st)) {}
Ta binakrka se isnstaluje se suidem a je dost pravdepodobne, ze udelat exploit nebude pro zkuseneho "hackera" zadny problem. Pouzivat to doma na spousteni neduveryhodnych binarek je jiste ok, ale instalovat to na multi-user server a nechavat tomu ten suid je holy nerozum.

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.