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

Wstępniak na nowy tydzień. Dwa sposoby na bezpieczeństwo Flasha: wyłączyć albo naprawić

Strona główna AktualnościDOBREPROGRAMY

Zrobili to za nas. W imię bezpieczeństwa użytkowników Flash Player we wszystkich swoich wersjach tydzień temu został domyślnie zablokowany przez Mozillę – i pewnie te nowe, ładne exploity 0-day, które wyciekły z serwerów Hacked Teamu, coś z tym miały. Jak bowiem wiadomo, tylko w takich sytuacjach trzeba coś robić. Jako wierny użytkownik Firefoksa poddałem się tej decyzji, a nawet więcej, usunąłem z używanych systemów wtyczkę Adobe na dobre. Tyle że wbrew triumfalnym krzykom mediów zza oceanu wcale tak dobrze nie było.

Flasha grzebano już tyle razy, że dziś powinien być co najwyżej irytującym upiorem, jakimś tam odpowiednikiem Real Media w Sieci. Kiedy ostatni raz odtwarzaliście jakiś strumień rm/rmvb? Pewnie trochę czasu od tego minęło, pewnie też są tacy czytelnicy, co o rozwiązaniach Real Networks nawet nie słyszeli. Tymczasem od wyklęcia przez Steve'a Jobsa Flash Playera z Sieci, od rozpoczęcia tej całej przeglądarkowej „rewolucji multimedialnej”, aż tak wiele znowu się nie zmieniło, jak ten tydzień dobrze pokazał.

Tydzień bez Flasha w Internecie – faktycznie, przeżyć się dało. YouTube działało, choć w Firefoksie wideo było okrojone do rozdzielczości 720p, zaś o oglądaniu klipów 60 FPS można było zapomnieć. Vimeo? Owszem, działa, choć nierzadko odtwarzacz w HTML5 klatkował, a odtwarzanie wideo 1080p przez przeglądarkę obciążało procesor bardziej, niż odtwarzanie go przez Flash Playera. Podobnie wyglądała sytuacja w DailyMotion.

r   e   k   l   a   m   a

Gdy już wyjdziemy poza popularne serwisy wideo, robi się bardziej skomplikowanie. Ulubiony serwis z zajawkami gier – nie działa. „Do wyświetlenia treści tego typu konieczna jest wtyczka”. Serwis ze streamingiem muzyki z YouTube, z którego zacząłem jakiś czas temu korzystać niby działa, ale regularnie „sypie” błędami i trzeba go przeładowywać. Wideo z polskich serwisów? Bywa różnie, zależy od tego, co osadzą, ale generalnie problemem jest obciążenie procesora. Prosty klip z działu motoryzacyjnego Onetu sprawił, że uruchomiony na laptopowym Core i5 Firefox wziął sobie 57% obciążenia procesora. Nierzadko też po prostu nie zobaczymy niczego, albo np. przeczytamy komunikat o błędzie związanym z blokowaniem reklam (mimo że adblocki były wyłączone). Podobnie źle wyglądała sytuacja ze streamingiem z serwisów pornograficznych. Co zaś najbardziej mnie zaskoczyło, to stan wideo udostępnianego przez Facebooka. Bez Flasha zobaczysz co najwyżej taki komunikat:

To że bez Flasha nie ma tych wszystkich fajnych przeglądarkowych gierek, nie powinno nikogo dziwić. Pomimo rozmaitych opowieści o HTML5 jako świetnym środowisku dla gier, z jakiegoś tajemniczego powodu niewiele ich powstało. Czyżby brak dobrych narzędzi deweloperskich? Rzeźbienie w JavaScripcie, Canvas i CSS nawet dzisiaj wydaje się niezbyt przyjemną zabawą (nawet z aplikacjami typu Tumult Hype) w porównaniu do tego, co oferuje środowisko Adobe dla grafików, animatorów i gamedevów. Zdziwiło mnie jednak, że wciąż trafić można na tyle webowych aplikacji, które bez Flasha nie ruszą. Z braku tej wtyczki musiałem zmienić usługę do udostępniania dużych plików, odpadły liczne czaty oraz kilka edukacyjnych programików, z których korzystałem.

Zgoda Mozillo, bez Flasha można żyć. Tak samo można żyć bez wielu innych przydatnych rzeczy w życiu, ale czy to oznacza, że warto? Oferowanie użytkownikom wykastrowanej wersji WWW w imię bezpieczeństwa nie jest moim zdaniem sposobem na sukces. A jak robią to ci, którzy osiągnęli sukces? Przyjrzyjmy się Google, które od kilku już lat oferuje w Chrome wtyczkę Flash, zintegrowaną z przeglądarką poprzez znacznie lepszy interfejs PPAPI. I w Mountain View odkrycia nowych luk we Flashu wywołały poruszenie. Zamiast jednak domyślnie blokować wtyczkę Adobe, zrobiono coś innego. Zajęto się ulepszaniem infrastruktury software'owej, w kontekście której Flash Player działa, tak by ewentualne luki we wtyczce nie szkodziły przeglądarce i systemowi operacyjnemu. Eksperci z projektu Google Project Zero i inżynierowie Adobe przygotowali dwie kluczowe zmiany.

Pierwszą z nich jest nowy układ partycji na stercie, pozwalający izolować różne typy zawartości pamięci od siebie, tak by nie miały na siebie żadnego wpływu. To oczywiście nic nowego, Chrome takie partycjonowanie stosuje od lat – ale teraz staje się ono także mechanizmem obronnym samego Flasha. Już dziś wiadomo, że gdyby mechanizm taki działał wcześniej, to exploity przygotowane przez Hacking Team albo w ogóle by nie zadziałały, albo miały poważne problemy. Według ekspertów, niemożliwy staje się atak typu use-after-free, a zwykłe przepełnienie bufora na stercie staje się znacznie trudniejsze – obiektu nie ma tam, gdzie się napastnik mógł go spodziewać. Druga zmiana to mechanizm uwierzytelniania, przez który kod napastnika musi teraz przejść, by wprowadzić zmiany do obiektów w pamięci. Pozwala to dodatkowo zabezpieczyć użytkowników 32-bitowych wersji przeglądarki, nie dysponujących przecież dużą liczbą adresów pamięci.

To nie koniec, ludzie z projektu Zero ogłosili, że wspólnie z Adobe będą dalej ulepszać zabezpieczenia Flasha, jak również wprowadzać nowe mechanizmy obronne do samego Chrome. A co w tym czasie robi Mozilla? Owszem, podjęto prace nad izolacją wtyczek w piaskownicy, ale postępują bardzo powoli – możecie się o tym przekonać na wiki Firefoksa. Być może po prostu nie starcza zasobów – Mozilla przecież zajmuje się tyloma ważniejszymi sprawami od bezpieczeństwa wtyczek w swojej przeglądarce…

Dlatego coraz poważniej zastanawiam się nad przejściem na Chromium. Dzisiaj to najbezpieczniejsza przeglądarka, jaką można sobie wyobrazić, szczególnie na Linuksie, gdzie wykorzystuje rozszerzenia jądra seccomp-bpf, drastycznie zmniejszając powierzchnię ataku. To Chromium jest kompilowane z makro FORTIFY_SOURCE, w Chromium wykorzystywana jest flaga -fstack-protector-strong i mechanizmy randomizacji przestrzeni adresowej kernela (KASLR), obmyślone notabene przez twórców Chromium. I co istotne, nie próbuje rozwiązywać problemów z bezpieczeństwem poprzez wyłączanie przydatnych wtyczek… tak, wiem o Javie, ale to nie jest do końca to samo, jeśli twórcy Javy czy IcedTea stworzą wtyczkę zgodną z PPAPI, będzie ona działać w Chromium/Chrome bez ograniczeń.

A teraz kilka naszych, redakcyjnych rzeczy. Wielu z Was zwraca uwagę na to, że chcecie więcej gier PC na weekend. Przyjęte do wiadomości, postaramy się, by gier takich było więcej. Zgodnie z Waszymi sugestiami, pojawi się też więcej porad i przewodników, ale to już po wakacjach. Natomiast już w tym tygodniu zrobimy pewien eksperyment z formą niektórych newsów – ocenicie, czy jest on dla Was atrakcyjny. Obiecany konkurs, w którym będzie można wygrać wiele warte licencje na oprogramowanie już niebawem, czeka na decyzje naszego partnera. Ja zaś, w to upalne lato zapraszam Was na chwilę do komputera i lekturę naszego portalu. Jak wiadomo, nadmiar słońca też nie jest dla skóry zbyt zdrowy :).

© 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.