Mateusz Sojda 41 Zgłoś post Napisano Grudzień 21, 2008 Nałożyłem na jądro łatkę grsecurity, ale niestety nie wyszło, korzystałem z tego tutoriala: http://www.grsecurity.net/quickstart.pdf System sypie dziwnymi błędami, a nawet uruchomienie 'wget' rozpoznaje jako Untrusted Exec... Które z włączonych przeze mnie opcji mogą zakłócać pracę systemu? Udostępnij ten post Link to postu Udostępnij na innych stronach
p 3 Zgłoś post Napisano Grudzień 21, 2008 TPE. Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 21, 2008 Akurat TPE potrzebuje, gdyż ma on możliwość ustawienia "trusted group". Jak użytkownik nie był w tej grupie to przy wykonaniu jakiegokolwiek pliku z prawami usera: "Brak dostępu" Natomiast gdy dodałem go do tej grupy: "cannot execute binary file". Czyli musi to być coś innego. Udostępnij ten post Link to postu Udostępnij na innych stronach
p 3 Zgłoś post Napisano Grudzień 21, 2008 Akurat TPE potrzebuje, gdyż ma on możliwość ustawienia "trusted group". Jak użytkownik nie był w tej grupie to przy wykonaniu jakiegokolwiek pliku z prawami usera: "Brak dostępu" Natomiast gdy dodałem go do tej grupy: "cannot execute binary file". Czyli musi to być coś innego. TPE to Trusted Path Execution, które definiuje zaufane katalogi, z których możesz uruchamiać programy. Nie wiem jak wygląda implementacja TPE w grsecurity, być może obejmuje też 'trusted group', o którym wspominałeś. Nie mniej jednak nadal uważam, że błąd polega na nieskonfigurowanym TPE i napisanie przez Ciebie, że tak nie jest, wcale tego nie zmienia Udostępnij ten post Link to postu Udostępnij na innych stronach
beliq 442 Zgłoś post Napisano Grudzień 21, 2008 TPE - umożliwia wykonywanie binarek tylko z katalogów do których jedyną osobą mającą prawa zapisu jest root; to tak per default. Pokaż no config swojego kernela. ( vide: wrzuć gdzieś na serwer www plik txt ) Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 21, 2008 Pokaż no config swojego kernela. ( vide: wrzuć gdzieś na serwer www plik txt ) http://matte.pl/pub/config.txt Proszę Nie mniej jednak nadal uważam, że błąd polega na nieskonfigurowanym TPE i napisanie przez Ciebie, że tak nie jest, wcale tego nie zmienia Tu się z Tobą zgodzę Gdyby był skonfiurowany odpowiednio, nie prosiłbym o pomoc Udostępnij ten post Link to postu Udostępnij na innych stronach
p 3 Zgłoś post Napisano Grudzień 21, 2008 Gdyby był skonfiurowany odpowiednio, nie prosiłbym o pomoc Nie prosiłeś o pomoc, tylko o wskazanie opcji, która może 'zakłócać' pracę Twojego systemu Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 21, 2008 Nie prosiłeś o pomoc, tylko o wskazanie opcji, która może 'zakłócać' pracę Twojego systemu Jak zwał tak zwał wg. mnie to jednoznaczne Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 21, 2008 Proszę zerknąć: http://matte.pl/pub/tpe.png Czy ta opcja, tak skonfigurowana, nie oznacza, że członkowie grupy o GID 1005 są użytkownikami zaufanymi i mogą uruchamiać własne binarki? Udostępnij ten post Link to postu Udostępnij na innych stronach
beliq 442 Zgłoś post Napisano Grudzień 21, 2008 odznacz w konfiguracji kernela opcje: "partially..." i powinno być tak jak chcesz Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 21, 2008 odznacz w konfiguracji kernela opcje: "partially..." i powinno być tak jak chcesz Spójrz na screena powyżej... Jest odznaczone i nadal nie przyniosło rezultatu Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 22, 2008 Wiem, ze to jest forum i tutaj nikt nie musi mi pomagac, jednak bardzo zalezy mi na konfiguracji tej funkcjonalnosci i moze jednak ktos by sie zlitowal Udostępnij ten post Link to postu Udostępnij na innych stronach
p 3 Zgłoś post Napisano Grudzień 23, 2008 Wiem, ze to jest forum i tutaj nikt nie musi mi pomagac, jednak bardzo zalezy mi na konfiguracji tej funkcjonalnosci i moze jednak ktos by sie zlitowal To napisz coś konkretnego (w tym przypadku: czy tylko doinstalowane aplikacje się nie uruchamiają czy wszystkie? a może sh się jednak uruchamia? jakie są prawa do katalogu z aplikacją, która się nie uruchamia? itp., itd.), bo na pytania typu 'bla, bla, bla coś mi nie działa' naprawdę nikomu się nie chce odpisywać.Generalnie odnoszę wrażenie, że nie wiesz jak działa TPE i próbujesz naprawić coś co działa, ale to już inna kwestia Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 23, 2008 To napisz coś konkretnego (w tym przypadku: czy tylko doinstalowane aplikacje się nie uruchamiają czy wszystkie? a może sh się jednak uruchamia? jakie są prawa do katalogu z aplikacją, która się nie uruchamia? itp., itd.), bo na pytania typu 'bla, bla, bla coś mi nie działa' naprawdę nikomu się nie chce odpisywać.Generalnie odnoszę wrażenie, że nie wiesz jak działa TPE i próbujesz naprawić coś co działa, ale to już inna kwestia TPE z włączoną opcją Partially restrict non-root users pozwala na uruchamianie plików z własnych katalogów, jeśli nie mają one prawa zapisu dla wszystkich lub dla grupy. I coś takiego działa. Jednak działa tylko taka możliwość, że mam grupę o danym GID i w tej grupie trzymam użytkowników 'untrusted', którzy nie mogą uruchamiać nic. Do funkcjonalności, którą chcę osiągnąć służy opcja Invert GID Option, która ma odwracać działanie powyższego i sprawiać, że tylko użytkownicy grupy o podanym GID mogą wykonywać własne pliki. I tutaj pojawia się problem, bo gdy zaznaczę tę opcję to TPE w ogóle wariuje i nie można uruchomić żadnego pliku, nawet gdy użytkownik jest w grupie o podanym wcześniej GID. Znalazłem coś takiego na ten temat - http://bugs.gentoo.org/show_bug.cgi?id=216908 Udostępnij ten post Link to postu Udostępnij na innych stronach
p 3 Zgłoś post Napisano Grudzień 23, 2008 TPE z włączoną opcją Partially restrict non-root users pozwala na uruchamianie plików z własnych katalogów, jeśli nie mają one prawa zapisu dla wszystkich lub dla grupy. I coś takiego działa. Jednak działa tylko taka możliwość, że mam grupę o danym GID i w tej grupie trzymam użytkowników 'untrusted', którzy nie mogą uruchamiać nic. Ta opcja pozwala na uruchamianie plików tylko z własnego katalogu (bez prawa zapisu dla reszty). Jeżeli jej nie zaznaczysz, to każdy kto nie będzie w grupie untrusted i tak będzie mógł uruchamiać te pliki, a także wszystkie pozostałe (do których oczywiście ma prawo dostępu). Do funkcjonalności, którą chcę osiągnąć służy opcja Invert GID Option, która ma odwracać działanie powyższego i sprawiać, że tylko użytkownicy grupy o podanym GID mogą wykonywać własne pliki. I tutaj pojawia się problem, bo gdy zaznaczę tę opcję to TPE w ogóle wariuje i nie można uruchomić żadnego pliku, nawet gdy użytkownik jest w grupie o podanym wcześniej GID. Nie prawda. TPE w grsecurity nie oferuje w ogóle takiej funkcjonalności, a opcja Invert GID option dotyczy wyłącznie zezwalania na uruchamianie plików jedynie z katalogu należącego do root'a (bez prawa zapisu dla pozostałych). Jak to dokładnie działa możesz sprawdzić w funkcji odpowiedzialnej za TPE w grsecurity: klik. Znalazłem coś takiego na ten temat - http://bugs.gentoo.org/show_bug.cgi?id=216908 Jak już znalazłeś bug report, to mogłbyś:1) Przeczytać go do końca, 2) Nauczyć się w jakiej formie należy opisywać błędy, aby było to użyteczne Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 23, 2008 Co nie zmienia faktu, ze sprawdzalem i nie dziala Udostępnij ten post Link to postu Udostępnij na innych stronach
p 3 Zgłoś post Napisano Grudzień 23, 2008 Co nie zmienia faktu, ze sprawdzalem i nie dziala Co znowu sprawdzałeś (najlepiej napisz od razu jak) i co niby nie działa? Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 23, 2008 Co znowu sprawdzałeś (najlepiej napisz od razu jak) i co niby nie działa? Obsługę TPE. Zwykly user nie moze wykonywac zadnego pliku, obojetnie czy jest w grupie o podanym GID czy tez nie Udostępnij ten post Link to postu Udostępnij na innych stronach
p 3 Zgłoś post Napisano Grudzień 23, 2008 Obsługę TPE. Zwykly user nie moze wykonywac zadnego pliku, obojetnie czy jest w grupie o podanym GID czy tez nieNie przeczytałeś tego co napisałem, prawda? Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 23, 2008 Nie przeczytałeś tego co napisałem, prawda? Przeczytałem. Może i masz rację. W takim razie co pozwala na zablokowanie niektórym userom możliwości uruchamiania plików? Wykluczając noexec na partycji Udostępnij ten post Link to postu Udostępnij na innych stronach
p 3 Zgłoś post Napisano Grudzień 23, 2008 Przeczytałem. Może i masz rację.Nie może, tylko mam W takim razie co pozwala na zablokowanie niektórym userom możliwości uruchamiania plików? Wykluczając noexec na partycji 1) jail / chroot,2) zmodyfikowany grsecurity, 3) inna implementacja TPE dla Linuxa (nie pytaj jaka, bo sam nie wiem czy takie w ogóle istnieją ), 4) własna modyfikacja kernela. Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 23, 2008 2) zmodyfikowany grsecurity,4) własna modyfikacja kernela. Rozwiń Udostępnij ten post Link to postu Udostępnij na innych stronach
p 3 Zgłoś post Napisano Grudzień 24, 2008 2) Wystarczy zmodyfikować funkcję gr_tpe_allow (o której zresztą już wcześniej wspominałem), tak aby spełniała Twoje założenia funkcjonalne. Jest to dosyć prosta funkcja i jej modyfikacja nie powinna przysporzyć żadnych problemów, nawet średnio inteligentnemu programiście 4) Jądro systemu operacyjnego to nie czarna skrzynka. Wystarczy dopisać kod odpowiedzialny za sprawdzanie praw dostępu przed wykonaniem pliku w funkcjach: - compat_do_execve (w /fs/compat.c), - do_execve (w /fs/exec.c), a także w funkcjach odpowiedzialnych za odwzorowywanie plików do pamięci operacyjnej (w ramach ochrony przed bardziej zaawansowanymi użytkownikami): - do_mmap_pgoff (w /mm/mmap.c), - sys_mprotect (w /mm/mprotect.c). Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 24, 2008 2) Wystarczy zmodyfikować funkcję gr_tpe_allow (o której zresztą już wcześniej wspominałem), tak aby spełniała Twoje założenia funkcjonalne. Jest to dosyć prosta funkcja i jej modyfikacja nie powinna przysporzyć żadnych problemów, nawet średnio inteligentnemu programiście 4) Jądro systemu operacyjnego to nie czarna skrzynka. Wystarczy dopisać kod odpowiedzialny za sprawdzanie praw dostępu przed wykonaniem pliku w funkcjach: - compat_do_execve (w /fs/compat.c), - do_execve (w /fs/exec.c), a także w funkcjach odpowiedzialnych za odwzorowywanie plików do pamięci operacyjnej (w ramach ochrony przed bardziej zaawansowanymi użytkownikami): - do_mmap_pgoff (w /mm/mmap.c), - sys_mprotect (w /mm/mprotect.c). Dzięki. Nie jestem programista, ale może coś się da zrobić Udostępnij ten post Link to postu Udostępnij na innych stronach
Mateusz Sojda 41 Zgłoś post Napisano Grudzień 24, 2008 Teraz to ja już nie wiem co jest grane. Wyłączyłem TPE i ustawiłem security level na Medium. Dalej nikt nie może nic uruchomić. Nawet root: v164:~# ./test -bash: ./test: cannot execute binary file Sprawdziłem uruchamiając system korzystając z wcześniej skompilowanego kernela z TPE i również to samo. Z czego to wynika? Z jakichś opcji Grsecurity? Z mojej nieumiejętnej konfiguracji kernela? Udostępnij ten post Link to postu Udostępnij na innych stronach