SELinux

Support HackTricks

SELinux w kontenerach

Wprowadzenie i przykład z dokumentacji redhat

SELinux to system etykietowania. Każdy proces i każdy obiekt systemu plików ma swoją etykietę. Polityki SELinux definiują zasady dotyczące tego, co etykieta procesu może robić z innymi etykietami w systemie.

Silniki kontenerów uruchamiają procesy kontenerowe z jedną ograniczoną etykietą SELinux, zazwyczaj container_t, a następnie ustawiają etykietę container_file_t dla plików wewnątrz kontenera. Zasady polityki SELinux zasadniczo mówią, że procesy container_t mogą tylko odczytywać/zapisywać/wykonywać pliki oznaczone etykietą container_file_t. Jeśli proces kontenerowy wydostanie się z kontenera i spróbuje zapisać zawartość na hoście, jądro Linuxa odmawia dostępu i pozwala procesowi kontenerowemu tylko na zapis do zawartości oznaczonej etykietą container_file_t.

$ podman run -d fedora sleep 100
d4194babf6b877c7100e79de92cd6717166f7302113018686cea650ea40bd7cb
$ podman top -l label
LABEL
system_u:system_r:container_t:s0:c647,c780

Użytkownicy SELinux

Istnieją użytkownicy SELinux oprócz zwykłych użytkowników Linuxa. Użytkownicy SELinux są częścią polityki SELinux. Każdy użytkownik Linuxa jest mapowany na użytkownika SELinux jako część polityki. Umożliwia to użytkownikom Linuxa dziedziczenie ograniczeń oraz zasad i mechanizmów bezpieczeństwa nałożonych na użytkowników SELinux.

Wsparcie dla HackTricks

Last updated