SecureHome - ochrona home użytkownika pod Linux

SecureHome - ochrona home użytkownika pod Linux
NI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 45
0

Jakiś czas temu rozpocząłem tworzenie narzędzia chroniącego $HOME pod GNU/Linux. Niektórym może przychodzić na myśl UAC, ale to nie to samo. Jakiś czas temu coś podobnego zrobiło Canonical, ale dotyczy to w ich przypadku, tylko aplikacji uruchomionych przez snapd. Aktualnie ma wiele problemów, także testować tylko pod VM.


https://sourceforge.net/projects/secure-home/

Projekt korzysta z libfuse3 i libgreattao. Postaram się go rozwijać, w miarę chęci i wolnego czasu.

hzmzp
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 755
2

Czy możesz przedstawić szerzej zamysł tego projektu, nie bardzo rozumiem o co w nim chodzi.

NI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 45
0
hzmzp napisał(a):

Czy możesz przedstawić szerzej zamysł tego projektu, nie bardzo rozumiem o co w nim chodzi.

Tak. To nie jest może UAC (o UAC mało wiem, więc wolę nie porównywać), ale chodzi o monity dotyczące prośby potwierdzenia operacji dokonywanych przez programy. Jest to system plików w przestrzeni użytkownika i dla GNU/Linux, który wyświetla wspomniane komunikaty lub zezwala na operację, jeżeli jest odpowiednio skonfigurowany. Jeżeli w bazie SQLite3 pojawi się definicja dostępu do pliku przez aplikację, to postępuje zgodnie z tym, co narzuca informacja w DB. Może to być odmowa operacji, akceptacja operacji lub zapytanie. Jeżeli nie ma rekordu w DB, to wyświetla zapytanie.

Na filmiku pokazałem, jak chronić profil Firefoksa, np. przed odczytaniem ciasteczek. Ponieważ niekiedy możliwość odczytanie ciasteczka jest pożądana, to użytkownik może wyrazić zgodę na taką operację. Inną ochroną jest możliwość ograniczenia dostępu do ~/.local/bin, by np. złośliwy skrypt nie zapisał skrypto-owijko dla sudo.

Może też ograniczyć dostęp do całego ~, czego nie zalecam na obecnym etapie prac. Uniemożliwi to np. zapis do ~/.profile, więc kolejna ochrona przed niszczycielskim oprogramowaniem.

Generalnie, to projekt już umożliwia ochronę pewnych istotnych elementów, a to dopiero początek. Niestety - trapią go pewne problemy, jak np. błędy: konieczność wyłączenia SeLinux (inaczej pojawia się błąd, podczas logowania i ochrony całego home, więc pam nie przechodzi do katalogu domowego).

NI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 45
1

Opublikowałem na sourceforge.net nowe paczki. Poprawiłem parę bardzo irytujących błędów. Wortal musi jeszcze przeskanować pliki, by je ostatecznie udostępnić. Chodzi o wersję 0.0.4 .

NI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 45
0

Opublikowałem nowe paczki: SecurewHome,Libgreattao. Obecnie częściowo działa sesja Plasma6/Kwin_Wayland pod najnowszym OpenSUSE Tumbleweed. Na Youtubie jest nowy film: . Za jakąś godzinę film powinien być.

NI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 45
0

Nowa wersja na sourceforge.net.

Poprawiłem parę istotnych błędów, jak nie zamykanie niekiedy deskryptora pliku, dostęp do chronionych plików przez narzędzia dodatkowe, wywrotki narzędzi konfiguracji, itd.

NI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 45
0

Dochodzę do wniosku, że nikt tego na poważnie nie testował.
W sposobie budowy paczki libgreattao był błąd, powodujący brak możliwości uruchomienia programów, co korzystały z tej biblioteki.
Wiem, że to ja powinienem przede wszystkim testować, a korzystanie z tego samego środowiska do testów cały czas jest błędem.

Mam nadzieję, że ktoś się tym projektem zainteresuje.

Wibowit
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: XML Hills
0

jak ktoś chce mieć porządną izolację między programami na pececie to jednym z działających i sprawdzonych w boju rozwiązań jest https://www.qubes-os.org/

NI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 45
0
Wibowit napisał(a):

jak ktoś chce mieć porządną izolację między programami na pececie to jednym z działających i sprawdzonych w boju rozwiązań jest https://www.qubes-os.org/

Dzięki. O Qubes-OS czytałem dawno temu. Plusem jest to, że jest tworzone przez Polkę. Wydaje mi się jednak, że ograniczona/utrudniona w nim jest interakcja z programami. Czy przypadkiem nie trzeba wejść z jednej VM do drugiej, by np. otworzyć plik konfiguracyjny w edytorze tekstu? Jest na to jakieś polecenie?

Wibowit
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: XML Hills
0
nintyfan napisał(a):

(...) Wydaje mi się jednak, że ograniczona/utrudniona w nim jest interakcja z programami. Czy przypadkiem nie trzeba wejść z jednej VM do drugiej, by np. otworzyć plik konfiguracyjny w edytorze tekstu? Jest na to jakieś polecenie?

nie korzystałem jeszcze z qubes os, ale trochę czytałem i oglądałem. vmki robocze zwykle mają gui, więc możesz otworzyć w nich pliki tekstowe jak w każdym systemie, o ile dana vmka ma zainstalowany edytor tekstu. jeśli nie ma to i tak możesz otworzyć ten plik w osobnej vmce (tak jak napisałeś) i są do tego specyficzne dla qubes os mechanizmy, typu odpal plik w tymczasowej vmce. wszystko zależy od rodzaju vmki, który sobie ustawiłeś i template na którym jest oparta (np. minimal template ma mało zainstalowanych programów). ogólnie jednak centralną koncepcją qubes os jest izolacja między programami oraz redukcja wektora ataku, więc dużo rzeczy robi się przez podział zadań między vmki (z czego większość w praktyce jest tymczasowych). jednak jeśli chcesz to możesz w qubes os zrobić i 'normalną' vmkę, tzn. taką gdzie wszystko jest zainstalowane, wszystko jest utrwalane, masz gpu passthrough i resztę urządzeń też dostępną, itp itd, ale wtedy to średnio ma sens, bo pozbywasz się mechanizmów bezpieczeństwa.

centralną częścią qubes os jest https://doc.qubes-os.org/en/latest/developer/services/qrexec.html i za pomocą tego jest np. zaimplementowane przeglądanie (oraz edytowanie, przetwarzanie, etc) plików w oddzielnych vmkach, by zredukować wektory ataku dla pojedynczej vmki. polecenia można podpiąć pod menu kontekstowe i mieć wygodne odpalanie tych poleceń. dla przykładu edycja, przeglądanie, konwertowanie (na bezpieczną postać) plików pdf w osobnych vmkach:
r4.3-domU-filemanager-disp-pdfviewer.png
(obrazek z https://doc.qubes-os.org/en/latest/user/how-to-guides/how-to-use-disposables.html)

w sumie to żeby poczuć 'klimat' qubes os najlepiej byłoby zainstalować qubes os i przeklikać się przez system na spokojnie. może kiedyś to zrobię :)

NI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 45
0

Mimo wszystko - nadal to będę rozwijać, ale zrobię sobie małą przerwę dla Freeciv, V2BlankBrowser lub Libgreattao.

Właśnie udostępniłem nową wersję: .

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.