W jaki sposób przeciętny użytkownik może łatwo zweryfikować integralność oprogramowania układowego swojego komputera Mac?


9

W jaki sposób przeciętny użytkownik może łatwo zweryfikować integralność oprogramowania układowego swojego komputera Mac?

Przed głosowaniem na to pytanie lub wykładem na temat tego, jak jestem paranoikiem i nikt nigdy nie powinien tego robić, przeczytaj poniżej.

W lipcu 2015 r. CVE-2015-3692 ujawnił, że zdalne oprogramowanie atakujące może zhakować oprogramowanie EFI komputera Mac. (Wektory dostępne w tym celu znajdują się w innych wersjach CVE, ale hipotetycznie mogą to być dowolne elementy, w tym złośliwe fałszywe instalatory aktualizacji Flash).

Luka ta została upubliczniona co najmniej cztery tygodnie przed tym, jak Apple załatała ją 30 lipca dla OS X 10.8, 10.9 i 10.10 z aktualizacją EFI Firmware Security Update 2015-001 .

Ten sam badacz ds. Bezpieczeństwa, który ogłosił tę lukę, twierdzi również, że widział podczas konferencji hakowanie oprogramowania układowego, którego nie można usunąć ani zastąpić.

Dlatego po uzyskaniu własności EFI komputera Mac, jeśli osoba atakująca zrobi to poprawnie, jedynym sposobem na przeflashowanie EFI przy użyciu prawidłowego oprogramowania układowego Apple byłoby podłączenie reflasera bezpośrednio do układu EFI na płycie głównej ( nie próbuj to w domu).

Artykuły prasowe, które zgłosiły tę lukę, pomniejszały ją, mówiąc, że większość użytkowników nie powinna się martwić, a wszystko, co musisz zrobić, aby się zabezpieczyć, to nigdy nie pozwolić komputerowi Mac przejść w tryb uśpienia i albo wyłączyć użytkownika root, ani nigdy nie uwierzytelnić niczego nie ufaj w 100%. Wątki komentarzy do tych artykułów podsumowały to w następujący sposób: jeśli wszystkie Twoje aplikacje pochodzą z zaufanych źródeł, takich jak oficjalny App Store, i nigdy nie uruchamiasz niczego, co nie jest podpisane kodem przez programistę znanego Apple, to nie powinieneś się martwić.

Ale potem we wrześniu 2015 roku dowiedzieliśmy się o exploicie XCodeGhost , o którym wiadomo, że w oficjalnym iOS App Store pojawiło się wiele aplikacji zainfekowanych złośliwym oprogramowaniem - ale co z aplikacjami OS X? W powiązanym artykule Malwarebytes napisał:

Wardle zwrócił uwagę w marcu, że Xcode jest podatny na tego typu rzeczy, ale przerażająco wskazał również na wiele innych aplikacji OS X. Każda z tych aplikacji może być narażona na podobne ataki.

Napisali także: „przeciętny użytkownik nie powinien panikować” - ta sama mantra, którą często widzę papugowaną na forach wsparcia Apple i gdziekolwiek indziej, gdy użytkownik opublikuje wątek na temat mnóstwa dziwnych problemów, które ma. „Po prostu sformatuj ponownie dysk i wykonaj czystą instalację systemu. Problemem jest prawdopodobnie modyfikacja systemu innej firmy”, powiedziano nam. Kiedy to nie rozwiązuje problemu, mówi się, że musi to być problem sprzętowy, taki jak awaria dysku twardego, awaria procesora graficznego lub zła pamięć RAM. Widziałem wątki, w których ludzie zastępowali dosłownie każdy element komputera Mac, a problem zawsze wracał.

Teraz wiemy, że hipotetycznie możliwe jest włamanie się do oprogramowania EFI użytkowników - więc nawet jeśli płyta główna zostanie wymieniona, to po ponownym zainstalowaniu aplikacji oprogramowanie to może zostać ponownie przywrócone przez złośliwe oprogramowanie! A jeśli płyta główna nie zostanie wymieniona, zostaną one schowane bez względu na wszystko.

To sprowadza mnie z powrotem do głównego pytania.

W jaki sposób przeciętny użytkownik może łatwo zweryfikować integralność oprogramowania układowego swojego komputera Mac? Tj. Jak możesz sprawdzić, aby upewnić się, że oprogramowanie układowe komputera Mac nigdy nie zostało naruszone przez złośliwe oprogramowanie? Nie mogłem znaleźć żadnej metody zgodnej z El Capitan, która nie wymagałaby wyłączenia SIP. W przypadku wcześniejszych wersji systemu operacyjnego dostępne jest skomplikowane narzędzie innej firmy o nazwie DarwinDumper, które może zrzucić zawartość EFI do pliku tekstowego, ale nadal musisz mieć prawidłowe oprogramowanie układowe Apple, aby porównać je - nie jest to metoda, którą przeciętny użytkownik jest w stanie zrobić.

Mówienie ludziom, aby nie martwili się o coś, co bardzo dobrze może być ofiarą, i nie mają możliwości sprawdzenia, czy są, jest tym, co umożliwia tego rodzaju exploity opłacalnym dla hakerów, którzy polegają na samozadowoleniu i braku czujności na część użytkowników.

==

EDYCJA: Znalazłem najnowszy oficjalny instalator oprogramowania układowego Apple na stronie wsparcia Apple . Dziwnie, instalator nie działa 10.10 lub 10.11. Za pomocą Pacifist wyodrębniłem plik .scap dla mojego Macbooka Pro 9,1. Porównałem plik binarny w HexFiend z biosdumpem, który ściągnąłem za pomocą DarwinDump po ponownym uruchomieniu w trybie odzyskiwania i uruchomieniu csrutil disablena terminalu, aby wyłączyć rootowanie i umożliwić uruchamianie niepodpisanych kextów. Odzyskałem ten nagłówek BIOS:

   $IBIOSI$   MBP91.88Z.00D3.B0B.1506081214Copyright (c) 2005-2015 Apple Inc.  All rights reserved.ˇˇˆ´5µ}ñÚC¥î°Îé!¢é_i@Ÿ¯¡Apple ROM Version
   BIOS ID:      MBP91
   Built by:     root@saumon
   Date:         Mon Jun  8 12:14:35 PDT 2015
   Revision:     svn 39254 (B&I)
   Buildcave ID: 6
   ROM Version:  00D3_B0B

Oficjalny BIOS z nagłówka Apple:

   $IBIOSI$   MBP91.88Z.00D3.B0B.1506081214Copyright (c) 2005-2015 Apple Inc.  All rights reserved.ˇˇˆ´5µ}ñÚC¥î°Îé!¢é_i@Ÿ¯¡Apple ROM Version
   BIOS ID:      MBP91
   Built by:     root@saumon
   Date:         Mon Jun  8 12:14:35 PDT 2015
   Revision:     svn 39254 (B&I)
   Buildcave ID: 6
   ROM Version:  00D3_B0B

Poza tym pliki wyglądają inaczej, ale domyślam się, że plik .scap ma pewną kompresję. Przynajmniej mówi mi to, że mam zainstalowane najnowsze oprogramowanie, które zostało wydane po ogłoszeniu włamań. Jestem bardzo dobry. Byłoby miło móc potwierdzić, że jestem dobry, poprzez jakąś weryfikację sumy kontrolnej! Patrzę na ciebie, Apple!


2
Czy to (raczej dobrze zbadane) pytanie czy prośba o nową funkcję? Jeśli jest to pytanie, czy możesz je nieco rozebrać, aby bardziej skoncentrować się na tym, czego szukasz („jak użytkownik końcowy może zweryfikować integralność oprogramowania układowego”)?
nohillside

Pytanie. Część, której szukam, jest pogrubiona i jest powtarzana dwukrotnie i jest tytułem. Liczę na to, że czytelnicy zainstalują więcej pamięci RAM w swoich mózgach lub wezmą ritalin, jeśli dodatkowe informacje są „problemem”.
CommaToast,

2
Niemniej jednak możesz poprawić sytuację, zmieniając swoją edycję (na końcu pytania) w pierwszą odpowiedź (z pewnymi dodatkowymi szczegółami na temat tego, jak zwykły użytkownik może wykonać niezbędne kroki). Również jeśli chcesz, aby Apple nasłuchiwał (i myślę, że powinni), prośba o udostępnienie funkcji jest wciąż lepszym sposobem :-)
nohillside

Nie chcę, żeby Apple „słuchało” ... Chcę, żeby były inną firmą niż są, i to się nigdy nie stanie, chyba że zatrudni mnie jako „wspaniałego gwaranta”
CommaToast

Odpowiedzi:


2

Aby sprawdzić oprogramowanie układowe systemu Intel UEFI, takiego jak Mactel, uruchom Intel LUV (Linux UEFI Validation) distro, luv-live, uruchom Intel CHIPSEC. Sprawdza większość powszechnie znanych luk w oprogramowaniu układowym. Powinieneś uruchomić CHIPSEC, kiedy pierwszy raz dostaniesz pudełko, zapisz ROM, a następnie od czasu do czasu uruchom ponownie CHIPSEC i porównaj ROMy pod kątem zmian. Możesz użyć UEFItool, CHIPSEC lub UEFI-Firmware-Parser lub kilku innych narzędzi do badania ROM ROM.

Aby uzyskać więcej informacji na ten temat i związane z nimi narzędzia, zobacz moje slajdy prezentacji, którą niedawno przedstawiłem.


Istnieje również projekt o nazwie Firmware Vault, który gromadzi ROMy Apple, co może być również przydatne w badaniu.
Lee Fisher

2

Tytuł „jak przeciętny użytkownik” jest trochę niebezpieczną strefą, ponieważ nie uważam nikogo, kto używa średniej terminala - nie osądza, tylko że publiczność jest powyżej średniej, aby wiedzieć, że powinni sprawdzić oprogramowanie wewnętrzne . Mam nadzieję, że nie brzmi zbyt pretensjonalnie z tym krótkim podsumowaniem tego, co moim zdaniem powinien zrobić przeciętny użytkownik komputera Mac:

Instalator macOS aktualizuje oprogramowanie układowe podczas instalacji / ponownej instalacji systemu operacyjnego, więc po prostu uruchamiając system w celu odzyskania i ponownej instalacji bieżącej wersji systemu macOS, nie stracisz żadnych programów, ustawień, danych i nie będziesz mieć szansy na sprawdzenie, czy oprogramowanie układowe jest aktualne. Nawet jeśli zainstalowałeś system operacyjny kilka miesięcy temu - jeśli w pobliżu znajduje się nowsze oprogramowanie, gdy instalator sprawdza, przygotowując się do instalacji, otrzymasz tę aktualizację w ramach ćwiczenia.


Jeśli nie możesz lub nie chcesz po prostu uruchomić instalacji, znacznie trudniej jest zgłosić / sprawdzić, czy naprawdę jesteś na bieżąco. Przypuszczam, że to zależy od tego, dlaczego uważasz, że nie dostałeś aktualizacji w ramach normalnego procesu aktualizacji / aktualizacji. Ponieważ nie ma ogólnej kontroli całego oprogramowania, powiedziałbym, że przeciętny użytkownik nie może zweryfikować oprogramowania, a nawet wyjątkowi użytkownicy mają trudności z przeprowadzeniem wymaganego poziomu analizy. Przeciętny użytkownik ma problem z różnicą między uwierzytelnianiem a autoryzacją . Doświadczeni użytkownicy uważają za żmudną weryfikację sum kontrolnych i kryptograficznych łańcuchów zaufania i ludzkiej natury, ponieważ nie wykonujemy tych czynności dobrze, nawet w dobrze zaprojektowanych, dobrze zmotywowanych i dobrze wspieranych środowiskach.

Otworzyłem bilet wsparcia dla Apple dla każdego wystąpienia, w którym chciałem zweryfikować oprogramowanie wewnętrzne i wziąć udział w oficjalnej liście mailingowej Powiadomień bezpieczeństwa Apple , abyś był na bieżąco, gdy coś się zmieni.

Przepraszam, jeśli nie jest to odpowiedź, której chciałeś, ale czułem również, że to był mój mały wpis w odpowiedź dla wszystkich, którzy widzą twoje pytanie i zastanawiają się, jak zacząć uczyć się. Gdy więcej użytkowników prosi Apple o wsparcie, w końcu zostaną napisane artykuły z bazy wiedzy. W pewnym punkcie krytycznym zostaną dodane środki finansowe, a problem zostanie opracowany tak, aby pasował do poziomu wykształcenia użytkowników. Jesteśmy dopiero we wczesnych dniach, od których widzę różne rzeczy.


0

Podobnie jak aktualizacja, macOS 10.13 High Sierra będzie automatycznie weryfikować integralność oprogramowania Macintosha raz w tygodniu. Jeśli zostanie znaleziony problem z oprogramowaniem układowym, komputer Mac zaoferuje wysłanie raportu do Apple. Post The Eclectic Light Company mówi o raportach;

Jeśli używasz prawdziwego komputera Mac, a nie „hackintosha”, Kovah prosi o zgodę na wysłanie raportu. Umożliwi to eficheck wysyłanie danych binarnych z oprogramowania układowego EFI, chroniąc Twoją prywatność, wykluczając dane przechowywane w pamięci NVRAM. Apple będzie wtedy w stanie przeanalizować dane w celu ustalenia, czy zostały zmienione przez złośliwe oprogramowanie lub coś innego.

AppleInsider też to mówi;

Raport przesłany do Apple wyklucza dane przechowywane w NVRAM. Apple sprawdzi następnie przesłane dane, aby ocenić, czy nastąpił atak złośliwego oprogramowania

Sprawdź tutaj, aby dowiedzieć się więcej na temat tej nowej funkcji: macOS High Sierra automatycznie wykonuje kontrolę bezpieczeństwa oprogramowania układowego EFI co tydzień


0

Tylko aktualizacja tego pytania, ponieważ dostępny jest nowy program.

To się nazywa eficheck. Znajduje się w katalogu / usr / libexec / firmwarecheckers / eficheck, prawdopodobnie nie na twojej ścieżce, więc jest trochę bardziej skomplikowany niż niektóre inne, ale jest strona man, która dokumentuje jego użycie.

Ważne jest, aby wziąć pod uwagę, że wszystko, co jest wystarczająco wyrafinowane, aby dostać się do twojego EFI, prawdopodobnie będzie w stanie uniknąć wykrycia. To wiele powodów, dla których kontrole antywirusowe są bezużyteczne, chociaż ludzie, którzy zwracają uwagę „kontrole antywirusowe są śmieciami”, nie mają pojęcia, dlaczego i powtarzają wniosek, który wyciągnął ktoś mądrzejszy od nich, a mianowicie, że firmy antywirusowe zwykle nie wiedzą, że mają taką możliwość. aby poprawnie przeanalizować złośliwe oprogramowanie dla komputerów Mac, aby nie dodawały unikalnej wartości skrótu pliku do swojej bazy danych, aby komputer mógł obliczyć skróty własnych plików w porównaniu z bazą danych znanych skrótów złośliwego oprogramowania. Prawie wszystkie skany wirusów nic więcej nie robią i nie szukają złośliwych zachowań.

Ostatecznie EFI firmy Apple to UEFI Intela, więc ufasz, że Apple zrobi coś poprawnie, naprawdę złożonego i technicznego. Apple nie może nawet wymyślić własnej infrastruktury PKI i czy widziałeś kiedyś podręcznik programisty procesora Intel? To tysiące stron starożytnej Grecji. Mam na myśli, że nie myślałeś, że Apple jest ładna i mądra, prawda?

Bezpieczna lista mailingowa to proste powiadomienie o wydaniu aktualizacji i nic więcej. Będziesz na bieżąco z nowymi łatami do długo zidentyfikowanych i łatwych do wykorzystania problemów z identyfikacją CVE, wpływających na najnowszy system operacyjny i starsze, zwane też tymi, które są w użyciu. Nie ma nic, co zapobiegłoby przyszłym exploitom w aktualizacjach ... przynajmniej, że będą o tym wspominać ze względu na swoją politykę, aby nie mówić o takich rzeczach. Jedynymi poruszonymi kwestiami bezpieczeństwa będzie stwierdzenie, że aktualizacja naprawiła bardzo konkretny problem.

Gdyby zidentyfikowali „atak złośliwego oprogramowania” (nie utrzymywał się po tym?), Naruszenie ich zasad byłoby potwierdzeniem i zgłoszenie się do użytkownika, a także złej decyzji biznesowej od wielu ich klienci nadal nie wierzą w złośliwe oprogramowanie. Zauważ, że nie mówi nic o kontakcie z użytkownikiem lub rozwiązaniu problemu. Widzimy teraz nagłówki. Cała zła prasa ostatnio naprawdę siniaczy swoje ego i wydaje się, że zbliża się do punktu krytycznego.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.