Centrala Androida

Z Google na Twój telefon: Życie aktualizacji zabezpieczeń Androida

protection click fraud

Na początku każdego miesiąca Google publikuje miesięcznik Biuletyn dotyczący bezpieczeństwa Androida i zaczyna wysyłać aktualizacje do telefonów Pixel. To wspaniałe, że firma jest przejrzysta, jeśli chodzi o to, co się dzieje i jak coś jest naprawiane, nawet jeśli nie jesteś typem osoby, która lubi czytać kod źródłowy.

Dużo pracy trzeba włożyć w te poprawki, zanim zostaną upublicznione, a jeszcze więcej pracy trzeba włożyć, zanim dojdzie do innych telefonów — jeśli w ogóle się pojawi. Przyjrzyjmy się, jak powstaje kiełbasa, i spróbujmy lepiej zrozumieć, dlaczego oś czasu dla łatek bezpieczeństwa jest trochę rozmyta.

Najpierw napraw Androida

Android to skomplikowana bestia. Istnieje ponad 5 milionów linii kodu, aby pomóc firmom, które tworzą produkty mobilne, w uruchomieniu kompletnej platformy aplikacji, w tym dostępu do Google Play i innych usług. To nie jest coś, czego można używać tak, jak jest; firmy te spędzają dużo czasu próbując dostosować Androida do łączenia z innym oprogramowaniem, którego mogą używać do stworzenia ładnego, homogenizowanego systemu operacyjnego.

Google ma pewne zasady dotyczące tego, jak należy to zrobić, jeśli firma chce uwzględnić swoje usługi, ale producenci mają długą smycz w kwestii tego, jak zbudowany jest produkt końcowy.

Ten kod jest miejscem, w którym ożywa łatka bezpieczeństwa. Ktoś, czy to badacz bezpieczeństwa, czy po prostu przeciętny Joe, znajduje lukę w telefonie, którą można wykorzystać do zmniejszenia warstwy bezpieczeństwa urządzenia. Jeśli ta wada nie została stworzona przez producenta OEM, zespół Androida ma za zadanie dowiedzieć się, co się dzieje, dlaczego tak się dzieje i jak to naprawić w najmniej uciążliwy sposób.

Jeśli zostanie znaleziona luka w zabezpieczeniach, która jest częścią podstawowego kodu Androida, Google musi ją naprawić, a następnie wysłać do wszystkich innych.

Często wada nie jest czymś, co Google może naprawić. Podobnie jak my, Google nie ma dostępu do oprogramowania sprzętowego firm, które produkują podobny sprzęt Qualcomm Lub LG. Jeśli usterka musi zostać usunięta na poziomie sprzętowym, istnieje duża szansa, że ​​firma dostarczająca niektóre z użytych komponentów będzie musiała najpierw wprowadzić zmiany. W takim przypadku zmiany te są przekazywane do Google, aby mógł zobaczyć, co należy zrobić, aby uwzględnić je w kodzie Androida.

Zmiany te wymagają czasu, zwłaszcza jeśli zaangażowany jest dostawca sprzętu. Jest łatanie i testowanie, i więcej łatania, i więcej testowania dla każdego błędu, który został naprawiony w łatce. Gdy Google ma pewność, że ma prawidłową poprawkę na lukę w zabezpieczeniach, każda firma produkująca Androida telefony otrzymują wczesny dostęp (co najmniej 30 dni przed upublicznieniem poprawki przez Google), aby mogli się do niej dostać praca.

Faza druga

To tutaj wykonywana jest większość prac. Google może pisać i utrzymywać samego Androida, ale większość urządzeń, które go używają, nie jest wyprodukowana przez Google. Te, które są — telefony Pixel — są również tutaj uwzględnione. Sprzęt Google jest klientem Androida w ten sam sposób SAMSUNG Lub Motorola Jest.

Samsungi i LG z branży mobilnej, które wprowadzają wiele zmian w Androidzie, mają dużo pracy, gdy trzeba połączyć łatkę.

Wszystkie te firmy zabierają się do pracy nad kilkoma rzeczami, gdy tylko otrzymają nowy kod od Google. Pierwszą — i być może najważniejszą — częścią jest określenie, która część poprawki nie jest potrzebna. W każdej łatce jest mnóstwo rzeczy, które pojedyncza firma może swobodnie zignorować.

Na przykład, jeśli NVIDIA musiał wprowadzić zmiany, które zostały przeniesione z powrotem do Androida, żadne telefony Samsung nie będą potrzebować tej części łatki. Bardziej ekstremalnym przykładem byłyby zmiany wprowadzone przez BlackBerry lub Samsung, które już rozwiązują problem w inny sposób. Ustalenie, co jest potrzebne, a co nie, może być czasochłonne, zwłaszcza gdy firma wprowadza duże zmiany w niektórych częściach systemu operacyjnego. Google zbadało zarzuty, że producenci OEM wysyłali poprawki bezpieczeństwa, które nie dotyczyły niektórych rzeczy, które powinni mieć, i właśnie to znalazło.

Nie każda część poprawki jest potrzebna na każdym telefonie.

Gdy to nastąpi, reszta łatki musi zostać włączona do niestandardowego kodu Androida dostawcy, a następnie zbudowana i przetestowana. Część „zbudowana i przetestowana” może stać się dużym bólem głowy, jeśli łatki nie można po prostu zastosować, ponieważ dotyka plików, których używa niestandardowy kod lub od których zależy. To też często widzimy. Ilekroć Bluetooth lub Wi-Fi zostanie załatany, niezależnie od tego, czy będzie to sprzęt, czy oprogramowanie, które za nimi stoi, tak się stanie kod dotykowy, który został zmieniony przez dużego producenta OEM, który tworzy bardziej wyszukany system operacyjny niż „standardowy” Android. Istnieje wiele części Androida, których producent OEM może dotknąć.

Gdy inżynierowie z firmy Samsung lub innego dostawcy otrzymają system operacyjny, który uruchamia się i działa, należy go przetestować. I przetestowałem trochę więcej. Testy mogą obejmować zaangażowanie inżynierów sieci z różnych operatorów, a także ponowne włączenie Google i/lub producenta dowolnego komponentu. To musi być właściwe. Łatka wysłana do tysięcy telefonów może potencjalnie sparaliżować sieć operatora, pochłonąć limit danych każdego użytkownika, a nawet spowodować, że sam telefon przestanie działać. Coś takiego jest niedopuszczalne i ma znaleźć, zanim opuści budynek.

Wdrożenie

Firma, która stworzyła Twój telefon, Google i być może Twój operator współpracują, aby przygotować masową aktualizację bezprzewodową. Jeśli kiedykolwiek widziałeś adres URL, który jest używany do pobierania łatki, zauważysz, że ma on „Google” w adresie internetowym. Dzieje się tak, ponieważ mechanizm w telefonie, który może pobrać i przetworzyć aktualizację OTA, szuka łatki w bardzo określonym miejscu. Musi wiedzieć, że łatka jest w 100% poprawna i podpisana odpowiednim podpisem cyfrowym. Sprawdzi to ponownie, gdy łatka zostanie w pełni pobrana.

Jeśli kupiłeś telefon od operatora, ma on mnóstwo danych wejściowych przez cały okres użytkowania łatki.

Twój operator może mieć pewne zasady dotyczące tego, kiedy i kto może pobrać poprawkę po jej uruchomieniu, jeśli jego imię i nazwisko jest na telefonie. Firmy takie jak Samsung czy LG tworzą niestandardowe wersje swoich najpopularniejszych modeli dla każdego operatora, co ma duży wpływ na to, jak to się robi. Powinien, ponieważ jego nazwa jest na pudełku. To może być frustrujące, ale ma sens. Jeśli wszyscy w Pittsburghu (na przykład), którzy mają telefon Samsung Galaxy S8, spróbują pobrać poprawkę 800 MB w tym samym czasie, sieć rozpadnie się w miejscach. Twój operator zrobi wszystko, co konieczne, aby utrzymać sieć przy życiu.

Google również w pewnym sensie blokuje wdrażanie OTA. Określona liczba użytkowników otrzyma łatkę, a po określonym czasie Google określa, czy ci użytkownicy mieli dobre, czy złe wrażenia. Jeśli wszystko pójdzie dobrze, większa liczba użytkowników otrzyma łatkę w drugiej fali. Powtarza się to kilka razy, zanim wrota zostaną otwarte. Użytkownicy, którzy nie chcą czekać na ostateczne testy, mogą ręcznie pobrać łatkę w ustawieniach swojego urządzenia.

Kiedy nadejdzie Twoja kolej i dałeś swojemu telefonowi zielone światło, aby pobrać ten plik, jest on pobierany, a następnie telefon przejmuje kontrolę.

W Twoich rękach

Łatka jest pobierana na Twój telefon i weryfikowana jako właściwa. Starsze wersje Androida mają dedykowaną pamięć podręczną, która jest sekcją pamięci, która została podzielona na takie rzeczy, jak plik aktualizacji; rzeczy, które są tylko tymczasowo w telefonie. Telefony, które używają Bezproblemowa funkcja aktualizacji Androida (co powinno być większością sprzedawanych telefonów z systemem Android Nougat) „wsuwaj” pobrane pliki do tak zwanych gniazd. W obu przypadkach musisz mieć wystarczająco dużo miejsca na wyodrębnienie pliku OTA i pracę nad nim.

Telefony ze starszymi wersjami Androida mogą mieć dedykowaną partycję pamięci podręcznej, która jest używana podczas aktualizacji. Musi być 2,5 razy większy niż pobrany plik OTA.

Oprogramowanie OTA Updater w Twoim telefonie jest częścią systemu Android. Skrypt w pobranym pliku mówi mu, jak znaleźć pliki, które wymagają zmiany, i kopiuje te pliki do pamięci podręcznej urządzenia lub do wyznaczonego gniazda. Następnie porównuje oryginalne pliki w telefonie z plikami pobranymi. Niektóre mogą być prostą zamianą — weź plik X z telefonu i usuń go, a następnie zastąp go plikiem X z pobranego OTA. Inne nie są pełnymi plikami i zawierają tylko niewielkie, określone zmiany. Aktualizator i oprogramowanie instalacyjne w telefonie wiedzą, co tu zrobić.

Wiele plików w systemie Android, zwłaszcza aplikacje i biblioteki oprogramowania, to tak naprawdę wiele plików skompresowanych w specjalnym archiwum. Możesz wziąć plik APK i zmienić go na plik .zip i otworzyć go w systemie Windows. Czasami te archiwa muszą zostać otwarte, a ich fragmenty muszą zostać zamienione z nowymi wersjami pobranymi dla poprawki bezpieczeństwa. Właśnie dlatego potrzebujesz tej przestrzeni roboczej na partycji pamięci podręcznej — tam są wyodrębniane te pliki.

Wiele plików w telefonie to tak naprawdę archiwa zawierające wiele plików — w tym inne archiwa plików. To skomplikowane.

Po przetworzeniu każdego pliku w aktualizacji OTA i wprowadzeniu zmian w kopiach plików systemowych nadszedł czas, aby uruchomić z nimi system. Dzieje się tak, gdy telefon prosi o ponowne uruchomienie po przetworzeniu otrzymanego OTA, ponieważ często istnieją pliki, które wymagają poprawki, ale są używane podczas działania telefonu. Możesz zobaczyć ekran pokazujący, że podczas ponownego uruchamiania trwają prace lub możesz zobaczyć tylko logo Androida. W obu przypadkach pliki są sprawdzane, przenoszone na miejsce i ponownie sprawdzane. Stare pliki są przechowywane w pamięci podręcznej na wypadek problemów i braku możliwości uruchomienia z nowymi plikami.

Pozostało Ci tylko upewnić się, że wszystko nadal jest tak, jak lubisz, i masz nowszą datę wersji Security Patch w ustawieniach swojego telefonu. Teraz jesteś gotowy na następną aktualizację!

instagram story viewer