Wyniki badania, które to wykazało, zostaną zaprezentowane w listopadzie na konferencji ACM Conference on Computer and Communications Security w Hadze. Jego autorami są naukowcy z Graz University of Technology (Austria). Przeanalizowali oni systemy powiadomień o plikach, wykorzystywane przez najpopularniejsze systemy operacyjne.

Jak wyjaśnili, takie mechanizmy pozwalają aplikacjom i różnym elementom systemu na bieżąco wykrywać, że plik został utworzony, usunięty, otwarty, zamknięty albo zmodyfikowany. Dzięki temu program może natychmiast zareagować na zmianę, bez ciągłego sprawdzania całej zawartości dysku.

Czytaj więcej

Centra danych mogą zostać kołem zamachowym polskiej gospodarki. To początek boomu

Badacze wykazali jednak, że informacje te mogą być wykorzystywane do ataków typu side-channel (ataki bocznego kanału) i stać się źródłem danych o działaniach użytkownika. W określonych sytuacjach dostęp do takich powiadomień może uzyskać inna aplikacja albo inny użytkownik, nawet bez uprawnień administratora. Nie oznacza to, że napastnik jest w stanie po prostu odczytać zawartość chronionych plików. Może jednak zobaczyć ich nazwy oraz szczegółowe informacje o tym, kiedy są tworzone, zmieniane lub otwierane. Zdaniem autorów to wystarcza, by wyciągać wnioski o zachowaniu użytkownika.

Google, Microsoft i Linux z groźnymi błędami w systemach operacyjnych

Na przykładzie Windowsa naukowcy pokazali, że ograniczenia dostępu do konkretnych folderów (katalogów) można częściowo ominąć, obserwując powiadomienia z folderu znajdującego się poziom wyżej w strukturze plików. Czyli monitorując główny katalog C:, mogli śledzić zdarzenia zachodzące także w jego podfolderach, w tym nazwy plików.

Ma to znaczenie w przypadku przeglądarek internetowych, np. Firefoxa, który tworzy osobne foldery dla niektórych odwiedzanych stron, oznaczając je nazwą danej witryny. Dzięki temu badacze mogli na bieżąco sprawdzać, jakie strony odwiedzał użytkownik.

Z kolei na Linuksie wykorzystali system powiadomień o plikach zwany inotify. Najpierw próbowali za jego pomocą monitorować chroniony plik, ale okazało się to niemożliwe. Plik znajdował się jednak w katalogu, do którego mieli dostęp. Dzięki temu mogli go obserwować i wykrywać każde naciśnięcie klawisza.

Czytaj więcej

Ameryka stawia setki miliardów na AI. Pierwsze rysy na wielkiej inwestycyjnej machinie

Choć nie widzieli, o które konkretnie klawisze chodziło, mogli mierzyć odstępy czasu między kolejnymi uderzeniami w klawiaturę. Jak napisali w publikacji, takie informacje również są cenne, ponieważ od lat istnieją techniki pozwalające na podstawie rytmu pisania wyciągać wnioski o tworzonej treści.

Jeszcze poważniejszą lukę naukowcy wykryli w KDE Plasma, czyli jednym ze środowisk graficznych Linuksa. Monitorowali tam aktywność programu odpowiedzialnego za sprawdzanie uprawnień (polkit). Gdy system wyświetlał prawdziwe okno z prośbą o podanie hasła, badacze byli w stanie niemal natychmiast nałożyć na nie własne, bardzo podobne okno. Gdy użytkownik wprowadzał do niego hasło, było ono automatycznie przekazywane napastnikowi. 

Podobny atak był możliwy również przy użyciu Waylanda, stosowanego w Linuksie nowoczesnego systemu obsługującego wyświetlanie okien i komunikację między aplikacjami.

Problem wykryto także w urządzeniach opartych na Androidzie. System ten korzysta z mechanizmu FUSE, który ma izolować poszczególne aplikacje, uniemożliwiając im wzajemny dostęp do swoich danych i folderów. Badacze pokazali jednak, że nawet program bez specjalnych uprawnień może, korzystając z powiadomień o plikach, śledzić zmiany zachodzące w zasobach należących do innej aplikacji. Np. w przypadku WhatsAppa byli w stanie stwierdzić, kiedy pojawiały się, były wysyłane lub usuwane zdjęcia, filmy i inne pliki.

Spośród przeanalizowanych systemów najmniej informacji ujawniał macOS. Nie stwierdzono w nim wycieku żadnych prywatnych danych. Jednak naukowcy wykazali, że także za pomocą interfejsu FSEvents, informującego o zmianach w systemie plików, można w ograniczonym zakresie śledzić część aktywności użytkownika.

Jeszcze przed opublikowaniem badania autorzy poinformowali o swoich ustaleniach twórców Linuksa, KDE, Androida, Windowsa i macOS. We współpracy z zespołem bezpieczeństwa Linuksa przygotowano już poprawki usuwające część wykrytych problemów.