proc_pid_attr(5) File Formats Manual proc_pid_attr(5) NAZWA /proc/pid/attr/ - atrybuty zwiazane z bezpieczenstwem OPIS /proc/pid/attr/ Pliki w tym katalogu udostepniaja API do modulow bezpieczenstwa. Zawartoscia katalogu sa pliki, ktore moga byc odczytywane i zapisywane, aby ustawic atrybuty zwiazane z bezpieczenstwem. Ten katalog zostal dodany do obslugi SELinux, ale intencja bylo to, aby API bylo na tyle ogole, aby obslugiwac rowniez inne moduly bezpieczenstwa. Dla wyjasnienia, ponizej przedstawiono przyklady jak SELinux uzywa tych plikow. Obecne tylko, jesli jadro zostalo skonfigurowane z CONFIG_SECURITY. /proc/pid/attr/current (od Linuksa 2.6.0) Zawartosc tego pliku reprezentuje aktualne atrybuty bezpieczenstwa procesu. W SELinuksie plik ten sluzy do pozyskania kontekstu bezpieczenstwa procesu. Do Linuksa 2.6.11 plik nie mogl sluzyc do ustawienia kontekstu bezpieczenstwa (zapis byl zawsze zabroniony), poniewaz SELinux ograniczal przejscia bezpieczenstwa procesu do execve(2) (zob. opis /proc/pid/attr/exec, ponizej). Od Linuksa 2.6.11 SELinux poluzowal to ograniczenie i zaczal obslugiwac operacje ,,ustawiania" poprzez zapis do tego wezla, jesli jest on autoryzowany przez polityke, choc uzycie tej operacji jest odpowiednie jedynie dla aplikacji zaufanych do zarzadzania pozadana separacja pomiedzy starymi a nowymi kontekstami bezpieczenstwa. Do Linuksa 2.6.28 SELinux nie pozwalal watkom z wielowatkowych procesow na ustawienie ich kontekstu bezpieczenstwa poprzez ten wezel, jesli moglo to doprowadzic do niespojnosci wsrod kontekstow bezpieczenstwa watkow dzielacych ta sama przestrzen pamieci. Od Linuksa 2.6.28 SELinux poluzowal to ograniczenie i rozpoczal obslugiwanie operacji ,,ustawiania" dla watkow procesow wielowatkowych, jesli ich nowy kontekst bezpieczenstwa jest powiazana ze starym kontekstem bezpieczenstwa, gdzie relacja powiazania jest zdefiniowana w polityce i gwarantuje, ze nowy kontekst bezpieczenstwa ma podzbior uprawnien starego kontekstu bezpieczenstwa. Inne moduly bezpieczenstwa moga wybrac aby obslugiwac operacje ,,ustawiania" poprzez zapis do tego wezla. /proc/pid/attr/exec (od Linuksa 2.6.0) Ten plik reprezentuje atrybuty przypisane do procesu przez kolejne execve(2). W SELinuksie jest to potrzebne do obslugi przejsc roli/domeny, a execve(2) jest preferowanym punktem do takich przeksztalcen, poniewaz oferuje on lepsza kontrole nad inicjalizacja procesu w nowej etykiecie bezpieczenstwa i nienaruszalnosci stanu. W SELinuksie ten atrybut jest resetowany przy execve(2), tak wiec nowy program powraca do domyslnego zachowania przy kazdym wywolaniu execve(2) jakie moze utworzyc. W SELinuksie proces moze ustawic tylko swoj atrybut /proc/pid/attr/exec. /proc/pid/attr/fscreate (od Linuksa 2.6.0) Plik ten reprezentuje atrybuty do przypisania do plikow utworzone przez kolejne wywolania do open(2), mkdir(2), symlink(2) i mknod(2) SELinux wykorzystuje ten plik do obslugi tworzenia pliku (za pomoca wspomnianych wczesniej wywolan systemowych) w stanie bezpieczenstwa, co nie daje ryzyka niepoprawnego dostepu uzyskanego podczas tworzenia pliku i ustawiania atrybutow. W SELinuksie atrybut ten jest resetowany przy execve(2), tak wiec nowy program powraca do domyslnego zachowania przy kazdym wywolaniu tworzacym plik jakie moze on wykonac, ale atrybut jest zachowywany podczas wielu wywolan tworzacych plik przez jeden program, chyba ze jest jawnie resetowany. W SELinuksie proces moze ustawic tylko swoj atrybut /proc/pid/attr/fscreate. /proc/pid/attr/keycreate (od Linuksa 2.6.18) Jesli proces zapisuje kontekst bezpieczenstwa do tego pliku, wszystkie kolejno utworzone klucze (add_key(2)) beda oznaczone tym kontekstem. Wiecej informacji znajduje sie w pliku zrodel jadra Documentation/security/keys/core.rst (lub pliku Documentation/security/keys.txt pomiedzy Linuksem 3.0 a Linuksem 4.13 albo Documentation/keys.txt przed Linuksem 3.0). /proc/pid/attr/prev (od Linuksa 2.6.0) Plik ten zawiera kontekst bezpieczenstwa procesu przed ostatnim execve(2); tj. poprzednia wartosc /proc/pid/attr/current. /proc/pid/attr/socketcreate (od Linuksa 2.6.18) Jesli proces zapisuje kontekst bezpieczenstwa do tego pliku, wszystkie kolejno utworzone gniazda beda oznaczone tym kontekstem. ZOBACZ TAKZE proc(5) TLUMACZENIE Autorami polskiego tlumaczenia niniejszej strony podrecznika sa: Przemek Borys , Robert Luberda i Michal Kulach Niniejsze tlumaczenie jest wolna dokumentacja. Blizsze informacje o warunkach licencji mozna uzyskac zapoznajac sie z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje sie ZADNEJ ODPOWIEDZIALNOSCI. Bledy w tlumaczeniu strony podrecznika prosimy zglaszac na adres listy dyskusyjnej . Linux man-pages 6.9.1 2 maja 2024 r. proc_pid_attr(5)