r   e   k   l   a   m   a
r   e   k   l   a   m   a

Microsoft uszczelnia piaskownicę Edge. Powtórki z Pwn2Own nie będzie?

Strona główna AktualnościOPROGRAMOWANIE

Ostatni konkurs Pwn2Own pokazał, że w dziedzinie bezpieczeństwa przeglądarek Microsoft ma jeszcze wiele do nadrobienia – Edge zostało złamane pięć razy, na przeróżne sposoby. I nie jest tak, że Edge atakowano, bo konkurenci byli mało popularni. Wręcz przeciwnie, najpopularniejszą przeglądarkę świata, Google Chrome, atakowano wielokrotnie, ale bez skutku, nikomu w wyznaczonym czasie jej zabezpieczeń złamać się nie udało. Czy Microsoft jest w stanie coś z tym zrobić? Twórcy Edge zapewniają, że jak najbardziej, opisując na łamach swojego korporacyjnego bloga, jak to wzmacniają piaskownicę, w której procesy tej przeglądarki działają.

Chińczycy zarabiają na Microsoft Edge

Ludziom Microsoftu musiało być niewesoło podczas ostatniego Pwn2Own. W ciągu dwóch dni konkursu ich przeglądarka została złamana przez pięć niezależnych zespołów (z czego trzy pracowały dla chińskiej firmy Tencent Security). Team Ether już pierwszego dnia zdalnie uruchomił kod w Edge poprzez lukę w silniku JavaScriptu Chakra, a Team Lance i Team Sniper drugiego dnia uzyskały taki sam efekt za pomocą dwóch różnych luk use-after-free, także w silniku Chakra.

Także drugiego dnia swój kod w Edge uruchomił niezależny badacz Richard Zhu, wykorzystując kolejne luki use-after-free w Edge i kernelu Windowsa, a porażkę modelu bezpieczeństwa Microsoftu przypieczętowali ludzie z firmy Qihoo 360 – ich atak był najbardziej spektakularny, bo wykorzystując sekwencję luk przepełnienia sterty w Edge, błędnego rozpoznania typów w kernelu Windowsa i źle zainicjalizowanego bufora w hiperwizorze VMware, uciekli ze swoim kodem z przeglądarki w maszynie wirtualnej prosto do hosta. Brawo Chiny – setki tysięcy dolarów nagród trafiły do skośnookich hakerów.

r   e   k   l   a   m   a

Jak widać, nawet warstwowa, izolacyjna strategia bezpieczeństwa nie pozwoli spokojnie spać po nocach w tych czasach użytkownikom Microsoft Edge. Żeby jednak ich życie nie było takim życiem na krawędzi, deweloperzy Microsoftu wzięli się za wzmacnianie implementacji piaskownicy (sandboksu), mającej ograniczyć zasięg udanych ataków.

Pierwszym podejściem Microsoftu do izolacji procesów przeglądarki było wprowadzenie Protected Mode do Internet Explorera 7. Wraz z Windowsem 8 system doczekał się pierwszych kontenerów na aplikacje (te ze sklepu Windows). Na bazie tych kontenerów Internet Explorer 10 i 11 doczekały się opcjonalnej implementacji Enhanced Protected Mode – opcjonalnej, bo niekompatybilnej z technologią ActiveX, którą wykorzystywało przecież tyle serwisów korporacyjnych, szczególnie w intranetach.

Jako że jednak Edge nie wspiera już tego niewątpliwego potworka, jakim z perspektywy bezpieczeństwa i interoperacyjności jest ActiveX, Microsoft mógł sobie pozwolić na domyślnie wykorzystanie w Edge izolacji kontenerowej. Dziś mamy więc niezależny kontener na menedżera aplikacji, kontener na aplikacje internetowe, na aplikacje intranetowe, na rozszerzenia, na interfejs użytkownika specjalnych stron przeglądarki i na aplikacje Flash. Najważniejszy jest tu oczywiście kontener na aplikacje internetowe – to z niego złośliwy kod musi się wydostać, by zainfekować system.

Wysoce bezpieczna cegła

Windows 10 Creators Update ma przynieść znaczne uszczelnienie tego konteneru, za sprawą zmniejszenia powierzchni ataku. Normalnie procesom działającym wewnątrz kontenera odmawia się dostępu do jakichkolwiek zabezpieczonych obiektów, chyba że mają one wpis kontroli dostępu pozwalający im na taki kontakt z kontenerem. Normalnie zasoby sprzętowe dają aplikacjom z Windows Store (napisanym na platformę UWP) zielone światło.

W odniesieniu do kontenera aplikacji Edge tak to wszystko przeprojektowano, by domyślnie stracić dostęp do całego interfejsu programowania WinRT. W efekcie zmieniono przeglądarkę, w jak to ładnie określono, wysoce bezpieczną cegłę. Teraz wyzwaniem stało się uczynienie tej cegły ponownie użyteczną. Zrobiono to za pomocą mechanizmu możliwości (Capabilities): jeśli dany obiekt ma dany wpis z listy kontroli dostępu, a zgłaszający żądanie kontener ma w tokenie żądania wskazanie na ten obiekt, to wtedy i tylko wtedy dostanie dostęp. Na przykład, kamerka internetowa może zostać udostępniona tylko procesowi z Edge żądającemu w poprawny sposób dostępu do kamerki internetowej. Proces ten jednak w żaden sposób nie uzyska dostępu do innego niż kamerka zasobu.

W ten sposób, możliwość po możliwości, aplikacje webowe w Edge znów zaczęły działać z określonymi zasobami. To samo powtórzono dla kontenera Flash, a to wszystko nałożono telemetrię (a jakże) do wykrywania możliwych problemów z brakami dostępu do zasobów – i w takiej formie udostępniono członkom programu Windows Insider.

Nowe Edge to nie tylko zmniejszanie powierzchni ataku. Słabymi punktami każdej piaskownicy są brokery, tj. mechanizmy udostępniające zasoby zgodnie z założoną polityką (np. dostęp do systemu plików w trybie do odczytu dla aplikacji, która chce wgrać plik do sieci). Brokery działając poza piaskownicą stają się więc naturalnym celem dla ataków przeprowadzanych wewnątrz piaskownicy – jak to określono, niczym więzień atakujący strażnika więziennego, by przebrać się w jego mundur w celu ucieczki.

Uszczelnione Edge odcięło wiele zbytecznych brokerów, a te co pozostały (na czele z brokerami silnika JavaScriptu i środowiska Flash) zostały wzmocnione za pomocą różnych technik neutralizowania exploitów – w tym zamknięcia ich we własnych, mniej uprzywilejowanych kontenerach.

Edge ciasne, ale wciąż funkcjonalne

Z wewnętrznych testów Microsoftu wynika, że te prace przyniosły rezultaty. Edge jest „ciasne” jak nigdy dotąd. Uzyskano o 100% zmniejszenie dostępu do mutexów, już żaden proces nie zawiesi zasobu. O 90% zmniejszono dostęp do interfejsów WinRT i DCOM, o 70% dostęp do zdarzeń systemowych i linków symbolicznych, oraz o 40% dostęp do urządzeń.

Liczba okazji do zaatakowania Edge drastycznie więc zmalała. Czy to wystarczy, by utrudnić chińskim hakerom wygrywanie nagród na konkursie Pwn2Own?

© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.