Wyjaśnienie blokady bootloadera Galaxy S7: W końcu możesz nie dostać AOSP

Samsung Galaxy S7 i S7 Edge to jedne z najpotężniejszych urządzeń, jakie można teraz kupić. Ale nasi stali czytelnicy i mieszkańcy forum wiedzą, że urządzenia Samsung nie są najlepsze, jeśli chodzi o rozwój.

Wiele problemów z Samsungiem i rozwojem można prześledzić od Exynos i jego braku dokumentacji. Oczywiście, kiedy usłyszeliśmy wiadomość, że Samsung Galaxy S7 będzie dostępny w wariancie z Snapdragonem 820 Qualcomma zamiast własnego Exynos 8890 firmy Samsung, społeczność programistów trzymała kciuki i liczyła na to, co najlepsze. Czy może to być pierwszy flagowiec Samsunga w najnowszej pamięci, który będzie miał dobre wsparcie dla rozwoju opartego na AOSP? Czy rzeczywiście można całkowicie usunąć TouchWiz z flagowca Samsunga i cieszyć się doświadczeniem AOSP bez rozdęcia? Czy można oczekiwać najnowszej wersji Androida bez czekania miesięcy na przesłanie go przez Samsung do urządzenia?

Niestety, byłoby to myślenie życzeniowe. Droga zaczynała się od blokad na drodze. Na początek tylko urządzenia sprzedawane w USA byłyby dostarczane z Qualcomm Snapdragon 820. Urządzenia sprzedawane na całym świecie byłyby dostarczane z Exynos 8890, co oznaczało, że duża część świata byłaby pozbawiona prac społeczności na AOSP, tak jak poprzednie flagowce z Samsung. Było to jednak nieco oczekiwane i dlatego wiadomość ta nie była zaskakująca.

Potem są przewoźnicy. Amerykańscy przewoźnicy mają długą historię blokowania urządzeń, a Verizon i AT&T są najgorsze, jeśli chodzi o blokowanie bootloadera. Tak więc użytkownicy tych przewoźników mogliby się spodziewać, że w większości utkną w tym, co wyszło z pudełka. Aktualizacje systemu Android muszą być najpierw wdrożone w TouchWiz przez Samsung, a następnie muszą przejść przez operatora, aby dotrzeć do urządzenia, dodając kolejny krok w procesie wdrażania aktualizacji.

Więc po tym wszystkim, co zostało powiedziane i zrobione, użytkownicy Samsung Galaxy S7 i S7 Edge Sprint i T-Mobile byliby najszczęśliwsi z całej grupy, prawda? Mimo wszystko, mimo że operatorzy ci podejmują praktyki blokowania karty SIM na urządzeniach, tradycyjnie nie są tak sprecyzowani, jak inni operatorzy, jeśli chodzi o bootloadery Samsunga. Urządzenia wciąż nie porównują się do całkowicie odblokowanych urządzeń, ale coś jest lepsze niż nic, prawda? Dobrze?

Nie, nie bardzo. Samsung zrobił to ponownie.

Zaczęło się na naszych forach Samsung Galaxy S7 Edge firmy T-Mobile, na których został stworzony wątek przewidujący dyskusję na temat rootowania, mający na celu jak najszybsze zrootowanie się na urządzeniu, a następnie dystrybucję do innych użytkowników forum w łatwy sposób. Uznany programista Fenny dokonał szybkiej obserwacji, która zasygnalizowała, że ​​mimo wszystko wszystko może być nie tak:

Wygląda na to, że bootloader jest zablokowany, zarówno bezpieczny rozruch Qualcomm, jak i bezpieczne pobieranie włączone.

Ech, to nie wydaje się jednak takie złe. Odblokowanie OEM jest nadal obecne w ustawieniach programisty, więc może to wymaga przełączenia, zanim przejdziesz dalej. Fenny odpowiedział, że to zrobił, ale nadal pragnął innych metod, dzięki którym można uzyskać korzeń.

Uznany programista TEKHD wkomponował swoje obserwacje:

Właśnie dostałem moje urządzenie dzisiaj… po szybkim spojrzeniu nie widzę niczego zablokowanego. Jeśli masz na myśli:

QUALCOMM SECUREBOOT: WŁĄCZ

BEZPIECZNE POBIERANIE: WŁĄCZONE

to zupełnie normalne… nie ma się czym martwić…

Inni przyczynili się do dyskusji, ale stało się jasne, że Odin nie może sflashować niczego oprócz nietkniętych zdjęć.

Jak dotąd nie ma TWRP. Nie mogę nawet Odin jądra z całkowicie niezmienionym, ale przepakowanym initramfs. Pień obrazy błysk dobrze.

Na tym etapie Samsung wydał kody źródłowe jądra dla wariantów Exynos Galaxy S7 i S7 Edge. Ten kod źródłowy jądra nie może być mylony z niczym więcej niż absolutnym minimum wymaganym do zgodności z GPL, tylko pomoże w tworzeniu niestandardowych jąder dla wariantów Exynos. AOSP wciąż pozostaje marzeniem.

Zainspirowany kodem jądra, starszy członek jcadduono był w stanie obsłużyć międzynarodowych (Exynos) właścicieli Galaxy S7 i S7 Edge do wersji TWRP, otwierając świat możliwości dla bazy użytkowników. Ale co z wariantami Qualcomm? Właśnie w tym momencie zaczynają napływać złe wieści.

Jcadduono zadzwonił do działu inżynierii mobilnej Samsunga, gdzie powiedziano mu, że T-Mobile S7 ma bezpieczny bootloader z blokadą pamięci flash, podobny do poprzednich urządzeń Samsung Verizon. Wspomniał również, że w jądrze jest włączona funkcja dm-verity, co oznacza, że ​​nie będzie można flashować zmodyfikowanych partycji systemowych w bieżącym stanie, w taki sposób, w jaki niektóre zablokowane modele Galaxy S6 mają swój root.

Aby przyspieszyć rozwój i badania, jcadduono poprosił ludzi w wątku, aby sprawdzili, czy mogą sflashować TWRP, który zbudował dla tego urządzenia. W zależności od błędu wyświetlanego przez urządzenie, można dojść do wniosku. A potem wszystkie obawy zostały potwierdzone.

To nie był zwykły błąd zapisu. Błąd bezpiecznego sprawdzania, mówiąc prosto, oznacza zablokowany bootloader. Według mojej osobistej wiedzy i zrozumienia zapobiega to wykonywaniu jakichkolwiek operacji, chyba że podpis pliku jest zgodny z kluczem publicznym OEM przechowywanym na partycji rozruchowej urządzenia. Ogranicza to zasadniczo wszystkie działania do tych, które pochodzą bezpośrednio od OEM, Samsunga w tym przypadku. Nie można flashować niczego, nawet przepakowanych zdjęć bez żadnych innych modyfikacji.

Cytując uznanego programistę Fenny:

Bezpieczny boot Qualcomm nas skrępował niemal kuloodpornym łańcuchem zaufania.

Jcadduono potwierdził to samo w odpowiedzi:

P: Czy to możliwe, że uczynienie selinux permissive pomogłoby? Tak pamiętam, co musieliśmy zrobić na s6.

Odp .: Nie, obrazu przywracania nie można nawet sflashować. Problem nie polega na uruchomieniu go, ale na jego flashowaniu.

Program ładujący w trybie pobierania ładuje obraz wysłany z Odin do pamięci, a następnie uruchamia weryfikację sumy kontrolnej i podpisu na obrazie. Jeśli nie pasuje, jest po prostu wolny od pamięci i wcale nie zapisywany na urządzeniu.

Nic nie możemy zrobić, poza uzyskaniem naszych obrazów TWRP podpisanych przez T-Mobile.


Dlaczego T-Mobile miałby blokować programy ładujące coś, co może być jednym z najlepiej sprzedających się urządzeń Samsunga w 2016 roku? Oto spekulacje na temat tego, dlaczego zdecydują się to zrobić, mimo że były pobłażliwe dla kilku innych urządzeń w przeszłości:

Domyślam się, że Samsung właśnie postanowił włączyć bezpieczną weryfikację pamięci flash we wszystkich wariantach Snapdragon, ponieważ tego chcą wszyscy inni operatorzy.

T-Mobile unieważnia gwarancję na zrootowanie teraz zgodnie z ich przedstawicielem na Facebooku, więc może T-Mobile nie zawracał sobie głowy pytaniem o odblokowane urządzenia od Samsunga i postanowił dołączyć również do innych.

Wydanie źródeł nie robi różnicy. Nie możesz sflashować NIC do telefonu, chyba że jest on podpisany przez producenta OEM.

Dzięki temu Samsung skutecznie zablokował cały rozwój wersji Galaxy S7 i S7 Edge Snapdragon 820. Mimo że większość tej dyskusji istnieje na forach T-Mobile S7 Edge, scenariusz i konsekwencje dotyczą również wszystkich operatorów i S7 (SD-820). To, co od dawna miało być urządzeniem przyjaznym dla programistów firmy Samsung, stało się jeszcze bardziej zablokowane niż warianty Exynos. Jest to naprawdę frustrujące dla użytkowników, którzy specjalnie szukają opracowanego urządzenia Samsung, ponieważ byli bardziej skłonni do korzystania z wariantu Snapdragon 820 niż wariantu Exynos na podstawie wcześniejszych doświadczeń.

Czy wszystko zginęło? Czy urządzenie nigdy nie zostanie opracowane?

Sytuacja nie jest jeszcze w 100% katastrofą. Nadal istnieje bardzo mała szansa, że ​​root można uzyskać poprzez luki w zabezpieczeniach i exploity. Są to prymitywne sposoby uzyskania roota, ale można to zrobić, chociaż jeszcze nie znaleziono. Problemy z lukami i exploitami polegają na tym, że zostaną one załatane w przyszłych aktualizacjach. Użytkownik końcowy musi zdecydować, czy chce uzyskać najnowszą aktualizację, ale nie mieć roota, dopóki nie zostaną znalezione nowe exploity, lub pozostać na nieaktualnej aktualizacji i pozostać zadowolony z rootem. Aktualizujesz do najnowszej wersji i wracasz do punktu wyjścia.

Jcadduono miał do powiedzenia o stanie rozwoju urządzenia:

Obraz rozruchowy ma dm-verity, co oznacza, że ​​dostaniesz pętlę rozruchową, jeśli kiedykolwiek zrobisz cokolwiek, aby zamontować / zapisać na partycji systemowej. Korzenie na żywo będą jedynym sposobem.

Dobra wiadomość jest taka, że ​​powinieneś być w stanie utworzyć obraz urządzenia pętli na partycji danych i zamontować go z wykonywalnymi uprawnieniami, aby stworzyć własną rodzaj zapisywalnej nakładki mini-systemu, jeśli pojawi się exploit na żywo roota . Podobny do SuperSU bez systemu.

Jest to optymistyczne spojrzenie na przyszłość, głównie dlatego, że w dużej mierze opiera się na istnieniu, jak również na wykryciu exploita na żywo. Exploit może nie być obecny lub może być obecny, ale żaden nie może go znaleźć. To bardzo duży IF dołączony do scenariusza rozwoju Galaxy S7 i S7 Edge opartego na Snapdragon 820 na wszystkich amerykańskich przewoźnikach.

Czy naprawdę jesteśmy zaskoczeni? Osobiście się spodziewałem. Biorąc pod uwagę, że Samsung Pay stał się tak wielką sprawą, Samsung nie zamierzał łatwo pójść na kompromis w sprawie swojego rozwiązania do płatności mobilnych. Podczas gdy zamiary społeczności programistów są czyste, gdy patrzy się z szerokiego punktu widzenia, nie można zaprzeczyć, że root i rzeczy poza nim są wykorzystywane do nikczemnych działań. Akty rootowania i odblokowywania bootloadera otwierają urządzenie na świat możliwości, a ten świat ma zarówno zalety, jak i wady. Sytuacja stanie się poważna, jeśli weźmie się pod uwagę, że spora populacja będzie migrować informacje bankowe na te urządzenia i wykorzystywać je we wszystkich lokalnych terminalach płatniczych. Zmienne te są ogromne, a Samsung z pewnością nie zaryzykuje reputacji swoich urządzeń, a także Samsung Pay jako konkurentów dla bardziej „bezpiecznych” alternatyw, takich jak Apple i Apple Pay.

Ale czy to sprawia, że ​​blokowanie jest dopuszczalne? Nie. Przynajmniej wyłączenie odpowiedzialności powinno być przedstawione ogółowi społeczeństwa. Nie musi nawet być sprzedawany negatywnie. Samsung mógł bardzo dobrze wspomnieć o tych funkcjach bezpieczeństwa w swoim wydaniu, mówiąc, że te urządzenia mają dodatkowe warstwy zabezpieczeń dla Samsung Pay, co utrudnia ich zhackowanie i wykorzystanie. Naprawdę skorzystalibyśmy z podpowiedzi.

Samsung mógł również wprowadzić specjalny program do odblokowywania urządzeń, podobnie jak inne OEM, takie jak Sony. Jest to jedna z tych możliwości, które wciąż mogą być wykonalne, pozwalając na najlepsze z obu światów. Użytkownicy niebędący programistami otrzymują telefon, który jest bezpieczny zgodnie z najlepszymi obecnymi możliwościami Samsunga, podczas gdy społeczność programistów odblokowuje swoje bootloadery kosztem utraty Samsung Pay i innych funkcji zależnych od bezpieczeństwa.

Z pewnością był to rozczarowujący zwrot wydarzeń. To, co miało być najlepszą nadzieją AOSP w mrocznym świecie TouchWiz, zostało sparaliżowane nawet przez Exynosa. Chociaż nadal istnieje możliwość rootowania, niestandardowych jąder, odzyskiwania i pamięci ROM dla urządzeń Snapdragon 820 firmy Samsung, prawdopodobieństwo tego, że przyciągną duże prace programistyczne, pozostaje niewielkie po tym niszczycielskim uderzeniu.

Jakie są twoje przemyślenia na temat tego zwrotu wydarzeń? Daj nam znać w komentarzach poniżej!