-
hidepid, czyli ukrywanie procesów użytkowników
Pewnie niewiele osób zna sposób na ukrywanie procesów innych użytkowników, np. aby Pan Stanisław nie widział jakie aplikacje ma uruchomiona Pani Zdzisia. Takie i inne funkcjonalności daje grsecurity, czyli specjalna łatka poprawiająca bezpieczeństwo kernela. Dla wspomnianej sytuacji, nie musimy jej jednak stosować. Wystarczy dodanie opcji montowania dla „/proc”. Mam tu namyśli
hidepid=1
Ukrywane są procesy innych użytkowników np. w programie top, htop. Możliwy jest jednak podgląd procesów bezpośrednio w katalogu /proc.
hidepid=2
Ukrywane są procesy innych użytkowników np. w programie top, htop. Niemożliwy jest podgląd procesów bezpośrednio w katalogu /proc.
Teoretycznie powinno wystarczyć dopisanie dodatkowej opcji w pliku „/etc/fstab”. W praktyce wygląda to jednak inaczej. Po restarcie faktycznie „/proc” wskazuje, że jest podmontowany z dodatkowymi parametrami, ale nie są one egzekwowane przez system. Należy wtedy wykonać następujące polecenie:mount /proc -o remount,hidepid=1
Sposobem na ominięcie tego bugu w systemie, jest dodanie do pliku „/etc/rc.sysinit” następującego wpisu:
mount /proc -o remount,hidepid=1
bezpośrednio po wpisie:
if [ ! -e /proc/mounts ]; then
mount -n -t proc /proc /proc
mount -n -t sysfs /sys /sys >/dev/null 2>&1
fi
Po restarcie w opcjach montowania dla „/proc” nie widać wprowadzonych zmian, ale są za to egzekwowane przez nasz system.Inną opcją zaproponowaną w komentarzach jest dodanie „mount /proc -o remount,hidepid=1” do pliku „/etc/rc.local”. W tym przypadku po restarcie, nowe opcje montowania będą widoczne po wydaniu polecenia
mount
Istnieje możliwość „whitelistowania” grup użytkowników, których ograniczenie podglądania nieswoich procesów, ma nie dotyczyć. Służy do tego opcja montowania „gid=numer_grupy”. Jej aplikowanie jest identyczne jak „hidepid”. Opisywane funkcjonalności dostępne są w wersji 5.9 oraz od 6.3 w górę.
Wszystko fajnie, tylko że modyfikowanie rc.sysinit to taki sobie pomysł. Przy okazji updatu initscripts będą jaja, nic wielkiego ale po co sobie robić dodatkowy problem.
Do dopisywania takich rzeczy to jest rc.local, ewentualnie można zrobić zrobić skrypt do /etc/init.d/.
Dziękuję za cenną wskazówkę RTFM. Dodałem jedną z Twoich sugestii do mojego tekstu.
Super sprawa… Długo męczyłem się z grsecurity dla tej właśnie opcji. Jakby ktoś był ciekaw, pod Ubuntu także działa to wyśmienicie. „mount /proc -o remount,hidepid=1” podaje w rc.init ( wykonywanym na samym koncu bootowania systemu ) i wszystko śmiga. Pozdrawiam i dzięki serdeczne 🙂