Aktualizacja Firefox przynosi zupełnie nowy rodzaj piaskownicy bezpieczeństwa

Uwaga – poziomy większe niż bieżące domyślne dla określonego rodzaju procesu nie są wdrażane.

Przegląd

Sandboxing bezpieczeństwa wykorzystuje procesy dziecięce jako granicę bezpieczeństwa. Model procesu, i.mi. To, jak Firefox jest podzielony na różne procesy i sposób, w jaki procesy te oddziałują między sobą, jest wspólne dla wszystkich platform. Aby uzyskać więcej informacji, zobacz stronę wiki elektrolizy i jej następcę, rozszczepienie projektu. Aspekty bezpieczeństwa procesu dzieci z piaskownicą są wdrażane na podstawie platformy. Więcej informacji można znaleźć w sekcji Platform.

Dokumenty techniczne

  • Specyfika platformy
  • Ograniczenia plików Badania błędów
  • Zestaw reguł filtra OSX
  • Badania za stwardnienie
  • Model procesu

Aktualny stan

Sandbox Pień Beta Uwolnienie
Poziom Poziom Wersja Poziom Wersja
Windows (treść) Poziom 6 Poziom 6 FX76 Poziom 6 FX76
Windows (kompozytor) Poziom 0 [1]
Windows (GMP) włączony włączony włączony
Windows (gniazdo) Poziom 1 Poziom 1 FX75 Poziom 1 FX75
Windows 64bit (wtyczka NPAPI) włączony włączony włączony
OSX (treść) Poziom 3 Poziom 3 FX56 Poziom 3 FX56
OSX (GMP) włączony włączony włączony
OSX (RDD) włączony włączony włączony
OSX (gniazdo) włączony wyłączony wyłączony
OSX (flash npapi) Poziom 1 Poziom 1 Poziom 1
Linux (treść) Poziom 4 Poziom 4 FX60 Poziom 4 FX60
Linux (GMP) włączony włączony włączony

Wartość „poziomu” odzwierciedla unikalne ustawienia bezpieczeństwa piaskownicy dla każdej platformy i procesu. Większość procesów ma tylko dwa „aktywne” poziomy, aktualne ustawienie i niższe (poprzednie uwolnione) ustawienie. Ustawienia poziomu inne niż te dwie wartości nie mają gwarancji zmiany zachowania bezpieczeństwa, ustawienia poziomu są przede wszystkim funkcją debugowania wdrażania wersji.

[1] Poziom 1 dostępny, ale wyłączony z powodu różnych regresji z przewijaniem, patrz błąd 1347710.

Okna

Treść

Ustawienia związane z bezpieczeństwem piaskownicy są zgrupowane i powiązane z poziomem bezpieczeństwa. Wartości niższego poziomu wskazują mniej restrykcyjną piaskownicę.

Mitigation_bottom_up_aslr
Mitigation_Heap_terminate
Mitigation_sehop
Mitigation_Dep_NO_ATL_THUNK
Mitigation_Dep
Mitigation_Extension_Point_Disable
Mitigation_image_load_no_remote
Mitigation_image_load_no_low_label
Mitigation_image_load_prefer_sys32

Mitigation_bottom_up_aslr
Mitigation_Heap_terminate
Mitigation_sehop
Mitigation_Dep_NO_ATL_THUNK
Mitigation_Dep
Mitigation_Extension_Point_Disable
Mitigation_image_load_no_remote
Mitigation_image_load_no_low_label
Mitigation_image_load_prefer_sys32
Zablokowany domyślnie DACL

Wtyczka gecko (GMP)

Mitigation_bottom_up_aslr
Mitigation_Heap_terminate
Mitigation_sehop
Mitigation_Extension_Point_Disable
Mitigation_Dep_NO_ATL_THUNK
Mitigation_Dep
Zablokowany domyślnie DACL

[1] zależy od wtyczki multimedialnej

Zdalny dekoder danych (RDD)

Mitigation_bottom_up_aslr
Mitigation_Heap_terminate
Mitigation_sehop
Mitigation_Extension_Point_Disable
Mitigation_Dep_NO_ATL_THUNK
Mitigation_Dep
Mitigation_image_load_prefer_sys32
Mitigation_Win32k_Disable
Zablokowany domyślnie DACL

Aktualizacja Firefox przynosi zupełnie nowy rodzaj piaskownicy bezpieczeństwa

Uwaga – poziomy większe niż bieżące domyślne dla określonego rodzaju procesu nie są wdrażane.

Przegląd

Sandboxing bezpieczeństwa wykorzystuje procesy dziecięce jako granicę bezpieczeństwa. Model procesu, i.mi. To, jak Firefox jest podzielony na różne procesy i sposób, w jaki procesy te oddziałują między sobą, jest wspólne dla wszystkich platform. Aby uzyskać więcej informacji, zobacz stronę Wiki Electroliys i jej fussor, rozszczepienie projektu. Aspekty bezpieczeństwa procesu dzieci z piaskownicą są wdrażane na podstawie platformy. Więcej informacji można znaleźć w sekcji Platform.

Dokumenty techniczne

  • Specyfika platformy
  • Ograniczenia plików Badania błędów
  • Zestaw reguł filtra OSX
  • Badania za stwardnienie
  • Model procesu

Aktualny stan

Sandbox Pień Beta Uwolnienie
Poziom Poziom Wersja Poziom Wersja
Windows (treść) Poziom 6 Poziom 6 FX76 Poziom 6 FX76
Windows (kompozytor) Poziom 0 [1]
Windows (GMP) włączony włączony włączony
Windows (gniazdo) Poziom 1 Poziom 1 FX75 Poziom 1 FX75
Windows 64bit (wtyczka NPAPI) włączony włączony włączony
OSX (treść) Poziom 3 Poziom 3 FX56 Poziom 3 FX56
OSX (GMP) włączony włączony włączony
OSX (RDD) włączony włączony włączony
OSX (gniazdo) włączony wyłączony wyłączony
OSX (flash npapi) Poziom 1 Poziom 1 Poziom 1
Linux (treść) Poziom 4 Poziom 4 FX60 Poziom 4 FX60
Linux (GMP) włączony włączony włączony

Wartość „poziomu” odzwierciedla unikalne ustawienia bezpieczeństwa piaskownicy dla każdej platformy i procesu. Większość procesów ma tylko dwa „aktywne” poziomy, aktualne ustawienie i niższe (poprzednie uwolnione) ustawienie. Ustawienia poziomu inne niż te dwie wartości nie mają gwarancji zmiany zachowania bezpieczeństwa, ustawienia poziomu są przede wszystkim funkcją debugowania wdrażania wersji.

[1] Poziom 1 dostępny, ale wyłączony z powodu różnych regresji z przewijaniem, patrz błąd 1347710.

Okna

Treść

Ustawienie związane z bezpieczeństwem piaskownicy są zgrupowane i powiązane z poziomem bezpieczeństwa. Wartości niższego poziomu wskazują mniej restrykcyjną piaskownicę.

Mitigation_bottom_up_aslr
Mitigation_Heap_terminate
Mitigation_sehop
Mitigation_Dep_NO_ATL_THUNK
Mitigation_Dep
Mitigation_Extension_Point_Disable
Mitigation_image_load_no_remote
Mitigation_image_load_no_low_label
Mitigation_image_load_prefer_sys32

Mitigation_bottom_up_aslr
Mitigation_Heap_terminate
Mitigation_sehop
Mitigation_Dep_NO_ATL_THUNK
Mitigation_Dep
Mitigation_Extension_Point_Disable
Mitigation_image_load_no_remote
Mitigation_image_load_no_low_label
Mitigation_image_load_prefer_sys32
Zablokowany domyślnie DACL

Wtyczka gecko (GMP)

Mitigation_bottom_up_aslr
Mitigation_Heap_terminate
Mitigation_sehop
Mitigation_Extension_Point_Disable
Mitigation_Dep_NO_ATL_THUNK
Mitigation_Dep
Zablokowany domyślnie DACL

[1] zależy od wtyczki multimedialnej

Zdalny dekoder danych (RDD)

Mitigation_bottom_up_aslr
Mitigation_Heap_terminate
Mitigation_sehop
Mitigation_Extension_Point_Disable
Mitigation_Dep_NO_ATL_THUNK
Mitigation_Dep
Mitigation_image_load_prefer_sys32
Mitigation_Win32k_Disable
Zablokowany domyślnie DACL

Mitigation_Strict_Handle_Checks
Mitigation_Dynamic_Code_Disable
Mitigation_dll_search_order
Mitigation_force_ms_signed_bins

64-bitowa wtyczka

Mitigation_bottom_up_aslr
Mitigation_Heap_terminate
Mitigation_sehop
Mitigation_Dep_NO_ATL_THUNK
Mitigation_Dep
Zablokowany domyślnie DACL

  • Strona Firefox/Win64 Wiki
  • Ogłoszenie wydania
  • Windows 64-bitowe kompilacje

OSX

Poziomy treści dla procesów treści sieciowych i plików

Procesy zawartości komputerów Mac Użyj poziomu piaskownicy 3. Procesy zawartości pliku (dla pliku: /// pochodzenia) również użyj poziomu 3 z dodatkowymi regułami, aby umożliwić dostęp do systemu plików. Poziomy 1 i 2 mogą być nadal włączone w około: config, ale nie są one obsługiwane, a używanie ich nie jest zalecane. Do testowania i debugowania podczas wdrażania funkcji piaskownictwa MAC zastosowano różne poziomy piaskownicy, ale teraz planowane są usunięcie. Mac Sandboxing korzysta z zasad białej listy dla wszystkich typów procesów. Każda polityka zaczyna się od oświadczenia, aby odmówić całego dostępu do zasobów systemowych, a następnie określa dozwolone zasoby. Sandbox poziomu 3 umożliwia odczyt systemu metadanych z pełnym dostępem do odczytu dla określonych katalogów systemowych i niektórych katalogów użytkowników, dostęp do mikrofonu, dostęp do różnych usług systemowych, Windowserver, o nazwie Sysctls i Iokit Properties oraz innych różnych elementów. Trwają prace w celu usunięcia dostępu do mikrofonu, Windowserver i innych usług systemowych w miarę możliwości. Sandbox blokuje dostęp do wszystkich systemów plików, odczyt dostępu do katalogu profilu (oprócz podwodników Chrome and Extensions, odczyt dostępu do katalogu domowego, sieci INBOUND/OUTBOUND I/O. Starsze poziomy piaskownicy 1 i 2 są mniej restrykcyjne. Głównie poziom 2 umożliwia odczytanie pliku dostęp do wszystkich systemów plików, z wyjątkiem katalogu ~/biblioteki. Poziom 1 umożliwia wszystkie dostęp do czytania plików. Ograniczenia poziomu 1 są podzbiorem poziomu 2. Ograniczenia poziomu 2 są podzbiorem poziomu 3.

Polityka zawartości sieci i plików jest zdefiniowana w SandboxPoliceContent.H

Procesy wtyczek multimediów gecko

Polityka Gecko Media Plugins (GMP) jest zdefiniowana w SandboxPolicygmp.H.

Procesy zdalnego dekodera danych

Polityka zdalnego dekodera danych (RDD) jest zdefiniowana w piaskownicy.H.

Proces gniazda

Polityka procesu gniazda jest zdefiniowana w SandboxPolicySocket.H. W tym czasie (maj 2020 r.) Projektowanie gniazda jest używane tylko na kanale nocnym i tylko do sieci WEBRTC.

Proces flash NPAPI

Włączone w Firefox, zaczynając od kompilacji 62. Sandbox Mac Flash jest włączony na poziomie 1. Na niektóre funkcje mają wpływ piaskownica, a są one udokumentowane w „Zmianach wpływających na Adobe Flash na Firefox dla Maca” na obsługę.Mozilla.org. Polityka Flash jest zdefiniowana w SandboxPolicyflash.H.

Linux

Poziomy treści

  • Wiele syscallów, w tym tworzenie procesu
  • Wszystko od poziomu 1
  • Zapisz dostęp do systemu plików
    • Wyklucza udostępnioną pamięć, tempdir, sprzęt wideo
    • Wszystko od poziomu 1-2
    • Przeczytaj dostęp do większości systemu plików
      • Wyklucza motywy/konfiguracja GTK, czcionki, udostępnione dane i biblioteki
      • Wszystko od poziomu 1-3
      • Dostęp do sieci, w tym lokalne gniazda
        • Wyłącza gniazdo x11
        • Chyba że fgxlrx lub VirtualGL jest używany

        Zasady treści

        Wtyczka gecko multimede

        Ustawienia dostosowywania

        Sandbox Linux umożliwia pewną kontrolę nad zasadami piaskownicy za pośrednictwem różnych ustawień o: konfiguracji. Mają one umożliwić, że bardziej niestandardowe konfiguracje i rozkłady egzotyczne pozostają w pracy – bez kompilacji niestandardowych wersji Firefox – nawet jeśli nie można ich bezpośrednio obsługiwać przez domyślną konfigurację.

        Zobacz rejestrowanie aktywności, aby uzyskać informacje na temat debugowania tych scenariuszy.

        • Zobacz poziomy zawartości powyżej. Zmniejszenie tego może pomóc zidentyfikować piaskownicę jako przyczynę problemu, ale lepiej jest wypróbować bardziej drobne uprawnienia.
        • Oddzielona przecinkami lista dodatkowych ścieżek, z których proces treści może odczytać lub zapisywać odpowiednio. Aby umożliwić dostęp do całego drzewa katalogu (a nie tylko do samego katalogu), uwzględnij spółkę / postać.
        • Wydzielona przecinkami lista dodatkowych numerów połączeń systemowych, które powinny być dozwolone w procesie treści. Wpływają one na filtr SecComp-BPF.

        Preferencje

        Typ procesu Typ preferencji Pierwszeństwo
        Treść liczbowy bezpieczeństwo.Sandbox.treść.poziom
        Wtyczka Windows NPAPI liczbowy Dom.IPC.wtyczki.poziom piaskownicy.domyślny
        Dom.IPC.wtyczki.poziom piaskownicy.
        Wtyczka OS X NPAPI liczbowy Dom.IPC.wtyczki.poziom piaskownicy.domyślny
        Dom.IPC.wtyczki.poziom piaskownicy.błysk
        Składacz liczbowy bezpieczeństwo.Sandbox.GPU.poziom
        Głoska bezdźwięczna Osadzony Nie dotyczy

        Uwaga – poziomy większe niż bieżące domyślne dla określonego rodzaju procesu nie są wdrażane.

        Ograniczenia systemu plików

        Sandboxing Wymusza ograniczenia systemu plików zapisu i odczytu dla treści dodatkowych opartych na XUL (ramka i proces). Aby uniknąć problemów, ponieważ funkcje piaskownicy wprowadzają dodatkowe autorzy powinni dziś zaktualizować swój starszy kod dodatkowy, aby skrypty treści nie próbują już czytać ani pisać z ograniczonych lokalizacji. Zwróć uwagę na te ograniczenia nie wpływają na skrypt treści WebExtension lub skrypt dodatkowy XUL działający w procesie przeglądarki.

        Reguły dostępu do systemu plików dla procesów treści, odwrotne pierwszeństwo:

        Lokalizacja Typ dostępu Ograniczenie
        system plików Przeczytaj/zapisz Domyślnie odmów
        instalacja lokalizacji pisać zaprzeczyć
        instalacja lokalizacji Czytać umożliwić
        Lokalizacje bibliotek systemowych pisać zaprzeczyć
        Lokalizacje bibliotek systemowych Czytać umożliwić
        profil/* Przeczytaj/zapisz Domyślnie odmów
        Profil/rozszerzenia pisać zaprzeczyć
        Profil/rozszerzenia Czytać umożliwić

        Funkcje debugowania

        Rejestrowanie aktywności

        Poniższe prefyjne rejestrowanie piaskownicy sterują. W systemie Windows wyjście jest wysyłane do konsoli przeglądarki, gdy jest dostępna, oraz do konsoli programistów podłączonej do procesu działającego przeglądarki. W OSX, po włączeniu, wpisy dziennika naruszenia są widoczne w konsoli.App (/aplikacje/narzędzia/konsola.aplikacja). W Linux, po włączeniu, wpisy dziennika naruszenia są rejestrowane na konsoli wiersza poleceń.

        bezpieczeństwo.Sandbox.Logowanie.Włączone (boolean) 
        bezpieczeństwo.Sandbox.okna.dziennik.StackTriCedepth (liczba całkowita, specyficzna dla systemu Windows)

        Następujące zmienne środowiskowe wyzwala również wyjście rejestrowania piaskownicy:

        Moz_Sandbox_Logging = 1

        Logowanie piaskownicy specyficzne dla OSX

        Na MAC rejestrowanie naruszenia piaskownicy jest domyślnie wyłączone. Aby włączyć rejestrowanie,

        1. Uruchom aplikację konsoli OS X (/aplikacje/narzędzia/konsola.aplikacja) i filtruj „wtyczki-container”.
        2. Albo ustaw pref bezpieczeństwo.Sandbox.Logowanie.włączone = true i uruchom ponownie przeglądarkę lub uruchom przeglądarkę z Moz_Sandbox_Logging Zestaw zmiennej środowiska. Po prostu ustawianie zmiennej środowiska Moz_Sandbox_Mac_flash_logging umożliwia rejestrowanie tylko dla piaskownicy wtyczki Flash OS X NPAPI, gdy jest włączona.
        • Jeśli konsola.Aplikacja nie działa jeszcze w momencie naruszenia piaskownicy, naruszenie nie jest wiarygodnie zarejestrowane.
        • Od kompilacji 56, gdzie ograniczenia dostępu do odczytu systemu plików zostały zaostrzone, uruchamianie Firefox zawsze wyzwala naruszenia piaskownicy i zostaną one zalogowane. Na przykład wtyczki próby dostępu do /aplikacji i /użytkowników (błąd 1378968). Chcemy zająć się nimi, jeśli to możliwe, ale niektóre naruszenia są skomplikowane, aby uniknąć lub są uruchamiane przez kod biblioteki OS X, którego nie można jeszcze uniknąć.

        Linuksowe rejestrowanie piaskownicy specyficzne

        Następująca zmienna środowiskowa wyzwala dodatkowe wyniki debugowania piaskownicy:

        Moz_Sandbox_Logging = 1

        Zmienne środowiska

        ZMIENNA ŚRODOWISKOWA OPIS PLATFORMA
        Moz_Disable_Content_Sandbox Wyłącza piaskownicę procesów treści do celów debugowania. Wszystko
        Moz_disable_gmp_sandbox Wyłącz piaskownicę wtyczki multimedialnej do celów debugowania Wszystko
        Moz_disable_npapi_sandbox Wyłącz 64-bitową piaskownicę NPAPI Windows i Mac
        Moz_disable_gpu_sandbox Wyłącz piaskownicę procesu GPU Okna
        Moz_disable_rdd_sandbox Wyłącz piaskownicę Dekodera Dekodera Dekodera Wszystko
        Moz_disable_socket_process_sandbox Wyłącz Sandbox Process Process Process Wszystko

        Ustawienie niestandardowego środowiska w systemie Windows

        1) Zamknij Firefox
        2) Przeglądarka do lokalizacji instalacji Firefox za pomocą Explorer
        3) Shift + kliknij prawym przyciskiem myszy w oknie folderu, w którym Firefox.EXE znajduje się, wybierz „Otwórz okno polecenia tutaj”
        4) Dodaj zmienne środowiskowe, które chcesz ustawić w oknie polecenia –

        Ustaw Moz_Disable_NPAPI_Sandbox = 1 (Return)

        5) Wejdź do Firefox.exe i naciśnij Enter, aby uruchomić Firefox z niestandardowym środowiskiem

        Opcje kompilacji lokalnej

        Aby wyłączyć budowę piaskownicy całkowicie zbudować z tym w Mozconfig:

        Aby wyłączyć tylko części piaskownicy treści:

        Listy błędów

        Priorytety

        Listy piaskownicy bezpieczeństwa/procesu

        Listy triage

        • Lista seanfingu: https: // jest.GD/GHROW8
          • Wymienia błędy komponentu z piaskownicą, które nie są śledzone przez kamień milowy
          • Ignoruje wcześniej roztargnięte w SB- lub SB+
          • Ignoruje meta i robaki z potrzebującymi
          • Wymienia dowolny błąd w bazie danych z SB?
          • Ignoruje błędy z potrzebującymi
          • Wcześniej triafikowane błędy, które nie mają kamienia milowego i nie ma priorytetu
          • SB śledzenie + „WebRTC”

          Mapa drogowa

          2020 H1 – główny skupienie

          • Zdalne operacje rysowania płótna,
            • Warunek Win32k.SYS LOCKDOWN.
            • Warunek Win32k.SYS LOCKDOWN.
            • Kontynuacje w Błysku za domyślnie
            • Zobacz także kompozycję WebGL z przetwarzania.
            • Kontynuacje w Make It Shippable Bug.
            • Utknięte w niereproduktowych problemach terenowych.
            • Warunek Win32k.SYS LOCKDOWN.
            • Wygrana w zakresie bezpieczeństwa i pamięci.
            • Wygrana wydajność i rozwiązuje wiele problemów z osobami napotykowymi z domyślnymi konfiguracją Docker/Kubernetes, które dają tylko niewielką ilość wspólnej pamięci.

            2020 H2 – główne skupienie pracy

            • Przeniesienie Win32k.Wymagania wstępne SYS Lockdown z 2020 r.
            • Przeniesienie utkniętego piaskownicy GPU.
            • Pozostałe Win32k.Blokery SYS.
            • Włącz Cig w RDD.
              • Zbadaj/eksperymentuj z wykonalności wysyłki CIG w treści.

              Komunikacja

              • Serwer: Czat.Mozilla.org
              • Kanał: #Hardening

              Ludzie

              • Gian-Carlo Pascutto (GCP)
              • Nie dotyczy
              • Nie dotyczy
              • Haik Aftandilian (Haik)
              • JED DAVIS (JLD)
              • Chris Martin (Cmartin)
              • Bob Owen (Bobowen)
              • David Parks (Handyman)
              • Stephen Pohl (Spohl)
              • Toshihito Kikuchi (Toshi)
              • Gian-Carlo Pascutto (GCP)

              Własność modułu repo

              Spinki do mankietów

              • Elektroliza strona wiki (wiele dodatkowych linków zasobów)
              • Security/Sandbox/macos_release – Opis, co zrobić, gdy pojawia się nowa wersja macOS, aby dowiedzieć się, jakie aktualizacje dokonały piaskownicy.
              • Pasownica chromu
              • Przewodnik piaskownicy Apple
              • „Wprowadzenie piaskownicy Linux nowej generacji Chrome” (związany z SECComp-BPF)
              • Native Klient na Wikipedii (linki do dokumentów na temat projektowania i używania SFI przez klienta natywnego, a także dokumenty na temat samego SFI.)
              • Funkcje trybu chronionego w Internet Explorer

              Archiwum B2G

              • Strona bezpieczeństwa systemu systemu Firefox OS na MDN
              • Sandboxing na przeglądzie B2G
              • SECComp B2G Filtr Dane perf

              B2G zawsze było “Sandboxed” do pewnego stopnia; Każda aplikacja/zakładka otrzymuje własny proces treści, który korzysta z modelu bezpieczeństwa Androida: osobny UID na proces, brak członkostwa w grupie i łatki jądra, które wymagają członkostwa w grupie dla takich rzeczy, jak dostęp do sieci. Ale eskalacja przywilejów za pośrednictwem luk w jądrach jest stosunkowo powszechna, dlatego również używamy filtra wywoławczego systemu SECComp-BPF, aby zmniejszyć powierzchnię ataku, do którego może uzyskać dostęp do kompromisowego procesu treści.

              Aktualizacja Firefox przynosi zupełnie nowy rodzaj piaskownicy bezpieczeństwa

              Dzisiaj’S Firefox we wtorek, kiedy najnowsza wersja Mozilli’Przeglądarka S pojawia się wraz ze wszystkimi aktualizacjami bezpieczeństwa, które zostały połączone z produktem od czasu poprzedniego wydania.

              Dzwoniliśmy do nich Czterdziestwos, Ponieważ Mozilla podążyła za sześciotygodniowym cyklem kodowania, zamiast miesięcznie jak Microsoft, lub kwartalnie jak Oracle, a siedem dni pomnożone przez sześć tygodni dało ci istotny numer 42.

              W dzisiejszych czasach Mozilla przeważnie czterotygodniowe cykle, dzięki.

              Ta aktualizacja przenosi wersję głównego nurtu do 95.0, i zawiera kilka poprawek bezpieczeństwa, wymienionych w Mozilla Foundation Security Advisory MFSA-2011-52, w tym luki prowadzące do:

              • Liczne wypadki To może potencjalnie rozwinąć się w wykorzystywane dziury.
              • WebExtensions, które mogą Zostaw niechciane komponenty Po oficjalnej odinstalowaniu.
              • Sztuczki umożliwiające zdalne strony Dowiedz się niektórych aplikacji Zainstalowane na komputerze.
              • Obejmowanie piaskownicy To mogło pozwolić niezaufaty scenariusze zrobić więcej niż zamierzone.
              • Sztuczki, aby umieścić kursor w niewłaściwym miejscu, potencjalnie ukrywanie ryzykownych kliknięć.

              24/7 polowania na zagrożenie, wykrywanie i odpowiedź dostarczane przez zespół ekspertów jako usługa w pełni zarządzana.

              Ucz się więcej

              Zupełnie nowa piaskownica

              Wielka zmiana w Firefox 95.0 jednak wprowadza nowy system piaskownicy, opracowany w środowisku akademickim i znany jako RLBox. (Musimy przyznać, że możemy’t nie znajdź oficjalnego wyjaśnienia listów Rl W RLBOX, Więc my’Zakładając, że stanowią Biblioteka środowiska wykonawczego, zamiast oznaczać inicjały osoby, która zainicjowała projekt.On. Domyślnie procesy mogą’T’Pamięć, tak że zdalne wykonanie kodu wywołanego przez witrynę nastawioną na przestępstwo, taką jak podejrzana.Przykład’t automatycznie zdobądź możliwość szpiegowania na zawartość zakładki’s zalogowany na serwerze e -mail lub podłączony do konta sieci społecznościowych. Ale nie wszystkie części przeglądarki’Funkcjonalność renderowania jest łatwa do podziału na osobne procesy, w szczególności, jeśli istniejący proces ładuje się co’jest znany jako Udostępniona biblioteka – Zazwyczaj .Plik DLL w systemie Windows, .Więc na Unix i Linux i .Dylib na macOS. Udostępnione biblioteki, na przykład renderowanie określonej czcionki lub odtwarzanie określonego rodzaju pliku dźwiękowego, są zaprojektowane do uruchomienia “w trakcie”. To znaczy one’ponownie załadowany do przestrzeni pamięci bieżącego procesu, prawie tak, jakby’D został skompilowany do aplikacji od samego początku. Innymi słowy, strona internetowa, którą można oszukać, aby załadować czcionkę uwięzioną w kolorze booby, zazwyczaj przetwarza ryzykowny plik czcionki tuż w tym samym procesie’S Obsługa reszty strony. Ty’D uzyskaj lepszą ochronę, jeśli renderer internetowy i obsługa czcionki mogłyby działać osobno i zrobili to’mają dostęp do siebie’ pamięć i dane, ale to’jest trudny do zrobienia w świecie, w którym ty’już używa wspólnych bibliotek do zapewnienia dodatkowych funkcji na proces. Ty’D musi wrócić do tablicy kreślarskiej i ponownie wdrożyć wszystkie funkcje obecnie zaimplementowane za pośrednictwem wspólnych bibliotek (co, jak sama nazwa wskazuje, udostępnij pamięć i inne zasoby w czasie wykonywania z procesem nadrzędnym) w inny sposób).

              Gallia est omnis divisa w partes tres

              RLBOX to sposób na uproszczenie procesu podziału procesów na osobne części, aby Twój kod się nie’T potrzebuję pełnego przepisania. Niemniej jednak RLBox wzywa się do wspólnych bibliotek przechodzących przez “warstwa separacji” To rozdziela wewnętrzne funkcjonowanie głównego programu i przynajmniej niektórych z jego bibliotek. Twój kod wciąż wymaga zmiany, aby umożliwić interweniowanie RLBox w sposób przekazywania danych między główną aplikacją a jej współdzielonymi podprogramami, ale ilość wstrząsów w dodaniu tych kontroli bezpieczeństwa wynosi, przynajmniej jeśli zespół RLBox i deweloperzy Firefox są uważani, stosunkowo skromne i łatwe do uzyskania prawidłowego. Według zespołu RLBox:

              Zamiast migrować aplikację do korzystania z RLBox […] w jednym ujęciu, pozwala RLBox ‘Migracja przyrostowa’ […] Migrację istniejącego kodu do korzystania z interfejsów API RLBox można wykonać jeden [operacja] na raz. Po każdej takiej migracji możesz kontynuować budowę, uruchomić [i] testować program z pełną funkcjonalnością, aby upewnić się, że krok migracji jest prawidłowy.”

              Niestety niewiele z Firefox’funkcje renderowania zostały jeszcze przełączone na RLbox. Najwyraźniej tylko kilka specjalnych operacji kształtowania czcionek, sprawdzanie pisowni i kod gry multimedii dla plików OGG zostały przeniesione do tego trybu bezpieczniejszego. Pliki OGG to te, które często znajdziesz na Wikipedii i gorliwych stronach wolnych i otwartych, ponieważ kodeki OGG nigdy nie były obciążone przez patenty, w przeciwieństwie do wielu innych formatów audio i wideo. (Kodek Isn’tak, tak przy okazji, tak zaawansowane technologicznie słowo’jest krótki po prostu dla Coder and-Decoder, w ten sam sposób, w jaki modem jest sygnałem modulator i demodulator.)

              Co następne?

              Jeśli wszystko pójdzie dobrze, obsługa plików XML i czcionek WOFF (obecnie format pliku dla wbudowanych czcionek) będzie następować w Firefox 96.0. Przypuszczalnie, jeśli to wszystko pójdzie dobrze, zespół Mozilla będzie nadal dzielić i podbić kod przeglądarki, aby stworzyć coraz bardziej małe “Strefy kompromisu” powiązane z każdą biblioteką programowania (z której typowa sesja przeglądarki może wymagać setek), która jest potrzebna do przetwarzania niezaufanych treści z zewnątrz. Oczywiście, jeśli to nie’t pracuj, tam’s zawsze Lynx, jak omawialiśmy w niedawnym podcastie Naked Security. Lynx to przeglądarka tak oldschoolowa i tak rozebrana, że ​​nie ma’T DO FONTS, JavaScript, a nawet grafika: tylko 100% przeglądanie trybu tekstu w stylu terminali z minimalnym poleganiem na wspólnych bibliotekach…

              ŚWIAT’S Browser: Słuchaj teraz Kliknij i przeciągnij fale dźwiękowe, aby się poruszać. Sekcja Lynx zaczyna się od 2’10”.
              Możesz także słuchać bezpośrednio na SoundCloud.

              • Podążać @NedSecurity na Twitterze Najnowsze wiadomości z zakresu bezpieczeństwa komputerowego.
              • Podążać @NedSecurity na Instagramie W przypadku ekskluzywnych zdjęć, gifów, filmów i lolów!