Wszyscy lubią darmowe upominki od Apple, zwłaszcza darmowe aktualizacje oprogramowania. Lepsze rzeczy za darmo — któż mógłby się kłócić? Jednak kiedy Apple wydało cztery aktualizacje oprogramowania w ciągu dwóch tygodni, od 15 listopada do listopada 29, nadchodzący po dużej iw dużej mierze nieudokumentowanej aktualizacji Mac OS X, wystarczyło, aby dać każdemu pauza.
Aby rzucić nieco światła na ostatnią rundę aktualizacji, przyjrzyjmy się temu Aktualizacja zabezpieczeń 2005-009, najbardziej znaczący i najbardziej odpowiedni z całej grupy.
Aktualizacja zabezpieczeń 2005-009
Mogłeś być jeszcze bardziej zdezorientowany wydaniem 29 listopada Aktualizacja zabezpieczeń 2005-009 niż zwykle, przynajmniej jeśli używasz systemu Mac OS X 10.3.9. W pierwszym dniu wydania linki na stronie pobierania Apple były zepsute i przekierowywały przeglądarkę do, no cóż, do niczego. Aktualizacja oprogramowania poprawnie przedstawiła i pobrała aktualizację zabezpieczeń 2005-009 w systemach Mac OS X 10.3.9, ale osoby, które chciały pobrać ją ręcznie z przeglądarki, musiały czekać do następnego dnia.
Po rozwiązaniu tego problemu dziewiąta aktualizacja zabezpieczeń Apple z 2005 roku była dostępna w czterech oczekiwanych konfiguracjach: dla Mac OS X 10.3.9, Mac OS X Serwer 10.3.9, Mac OS X 10.4.3 i Mac OS X Server 10.4.3. Wersje Tiger to 5MB i 6MB dla wersji zwykłej i serwerowej, odpowiednio; wersje Panther mają odpowiednio 20 MB i 33 MB. Są większe, ponieważ wersje Panther, w przeciwieństwie do wersji Tiger, zawierają poprawki z wcześniejszych aktualizacji, w tym pliki, które znaleźliśmy w aktualizacjach zabezpieczeń 2005-008 i 2005-007. Wersje Tiger nie zawierają starszych poprawek, ponieważ tego wymagają Mac OS X 10.4.3, który został wydany w Halloween i zawiera aktualizację zabezpieczeń 2005-008 oraz wcześniejsze poprawki.
Nawiasem mówiąc, nie oznacza to, że sam system Mac OS X 10.4.3 nie zawiera nowych poprawek bezpieczeństwa, których nie znaleziono wcześniej w żadnej aktualizacji zabezpieczeń. To robi. Pięć udokumentowanych luk w zabezpieczeniach zamkniętych w systemie Mac OS X 10.4.3 podsumowano w poniższej tabeli. Dwa z nich dotyczą wprowadzających w błąd lub opóźnionych zmian w członkostwie w grupie lub własności plików, inny dotyczy dostępu do pęku kluczy, który nie zasłania żadnych wyświetlanych hasła, gdy ich pęk kluczy zostanie zablokowany z powodu przekroczenia limitu czasu, a inny uniemożliwia anulowanie ignorowania oczekującej aktualizacji oprogramowania, chyba że pojawiła się nowa, niezignorowana aktualizacja przybył. (Gdyby to wszystko nie było wystarczająco mylące, numery luk zaczynają się teraz od „CVE” zamiast „CAN” dzięki decyzja o zmianie nazwy wprowadzone 19 października).
Poprawki bezpieczeństwa w systemie Mac OS X 10.4.3
Część | Wydanie | Identyfikator luki w zabezpieczeniach | 10.4.2 klient | 10.4.2 Serwer |
---|---|---|---|---|
Znalazca | Wyświetlane informacje o prawach własności do plików i grup mogą mieć niewiele wspólnego z faktycznymi informacjami o prawach własności | CVE-2005-2749 | X | X |
Aktualizacja oprogramowania | Oznaczenie wszystkich dostępnych aktualizacji jako „ignore” powodowało natychmiastowe zamknięcie aktualizacji oprogramowania bez możliwości zresetowania statusu którejkolwiek z wcześniej ignorowanych aktualizacji | CVE-2005-2750 | X | X |
Dostęp do pęku kluczy | Jeśli pęk kluczy blokuje się z powodu przekroczenia limitu czasu podczas wyświetlania hasła zapisanego w tym pęku kluczy, hasło pozostaje widoczne, a nie znika, gdy pęk kluczy jest zablokowany | CVE-2005-2739 | X | X |
członek | Demon, który stosuje zmiany w członkostwie w grupach, nie aktualizował list kontroli dostępu (ACL) wystarczająco szybko, umożliwiając użytkownikom, którzy zostali usunięci z grup, kontynuowanie dostępu do plików grupowych | CVE-2005-2751 | * | X |
Jądro Macha | Interfejsy jądra mogą zwracać dane z „niezainicjowanej” pamięci, która faktycznie była już używana i zwolniona przez jądro, potencjalnie zawierając resztki poufnych danych | CVE-2005-1126, CVE-2005-1406, CVE-2005-2752 | X | X |
X = Naprawiono w tej aktualizacji; * = Składnik lub funkcja, której dotyczy problem, nigdy nie występowała w tej wersji
Luka w jądrze naprawiona w systemie Mac OS X 10.4.3 zasługuje na chwilę wyjaśnienia. Programy żądają od systemu operacyjnego pamięci do wykorzystania do własnych celów i zwalniają ją z powrotem do systemu operacyjnego, gdy z nią skończą, więc system operacyjny może ponownie wykorzystać ją do innych żądań pamięci RAM. Jednak większość programów nie usuwa zawartości pamięci przed jej zwolnieniem, ponieważ wymaga to czasu i zwykle nie jest konieczne. System operacyjny nie usuwa zwolnionej pamięci z tego samego powodu.
Jądro powinno jednak wymazać pamięć To wydania. Jądro nigdy nie chce przekazywać wywołującym niezainicjowanej pamięci, ponieważ wywołujący mógłby wtedy zobaczyć część tego, co inny kod jądra przechowywał w tej pamięci RAM — bufor plików, hasło, pakiet sieciowy i tak dalej NA. Znaleziono Suresec dwa problemy który mógłby ujawnić pamięć jądra dzwoniącym w systemie Mac OS X (lub FreeBSD lub obu), a ludzie z FreeBSD znaleźli drugi. Mac OS X 10.4.3 naprawia wszystkie trzy, ale Apple nie ujawnił, czy Mac OS X 10.3.9 ma podobne wady.
Aktualizacja zabezpieczeń 2005-009 dodaje więcej poprawek do tego punktu odniesienia. Zostały one podsumowane poniżej, z dodatkowymi kolumnami dla czterech oddzielnych wersji aktualizacji. Jak widać w tabeli, wiele błędów to typowe i łatwe do naprawienia problemy z przepełnieniem bufora, które omówiliśmy w MWJ 2005.08.20. Inne typowe błędy występują podczas analizowania, takie jak błąd przeglądarki Safari, który powoduje, że przeglądarka pobiera pliki z rozszerzeniem „very długich” nazw plików do nieprzewidywalnie niewłaściwego katalogu lub silnika wyrażeń regularnych w JavaScriptCore Móc bufory przepełnienia ze złośliwym wyrazem.
Aktualizacja zabezpieczeń 2005-009 Poprawki
Część | Wydanie | Identyfikator luki w zabezpieczeniach | 10.3.9 | 10.3.9 Serwer | 10.4.3 | 10.4.3 Serwer |
---|---|---|---|---|---|---|
Apache 2 | Aktualizacja do wersji 2.0.55, naprawiająca luki, w tym problemy z cross-site scripting na niektórych serwerach pośrednich | CVE-2005-2088 | * | X | * | X |
apache_mod_ssl | Konfiguracje wykorzystujące dyrektywę SSLVerifyClient mogą umożliwiać pominięcie wymaganego uwierzytelniania klienta SSL | CVE-2005-2700 | X | X | X | X |
Podstawowa Fundacja | Złośliwie spreparowany adres URL może spowodować przepełnienie bufora podczas analizowania | CVE-2005-2757 | * | * | X | X |
Podstawowe usługi | Pakiet Update to Core Types dodaje pliki z rozszerzeniem nazwy pliku „.term” (pliki terminala) do listy „niebezpiecznych plików wykonywalnych” pobranych plików | Nie dotyczy | * | * | X | X |
kędzior | Używanie uwierzytelniania NLTM ze złośliwym serwerem HTTP może spowodować przepełnienie bufora i wykonanie dowolnego kodu | CVE-2005-3185 | * | * | X | X |
strony podręcznika | Zaktualizowana dokumentacja dla OpenSSH i PAM | Nie dotyczy | # | # | X | X |
Administrator ODBC | Wewnętrzny program iodbcadmintool mógł pozwolić na wykonanie dowolnego kodu z uprawnieniami roota | CVE-2005-3700 | X | X | X | X |
OpenSSL | Zaktualizowano do wersji 0.9.7i, aby zapobiec przejściu na SSLv2 (z SSLv3 lub TLS) w przypadku korzystania z opcji zgodności lub niemożności jawnego wyłączenia SSLv2 | CVE-2005-2969 | X | X | X | X |
Serwer haseł | Potencjalnie naruszone dane uwierzytelniające podczas tworzenia głównego serwera Open Directory mogą umożliwić nieuprzywilejowanym użytkownikom lokalnym uzyskanie podwyższonych uprawnień serwera | CVE-2005-3701 | * | X | * | X |
Szybkie losowanie | Nieokreślona poprawa w rysunkowych plikach „PICT”. | Nie dotyczy | X | X | # | # |
Safari | Długie nazwy plików sugerowane przez serwery do pobrania mogą sprawić, że Safari zapisuje pliki w nieprawidłowej lokalizacji, być może dostępnej dla innych użytkowników | CVE-2005-3702 | X | X | X | X |
Safari | Okna dialogowe utworzone za pomocą kodu JavaScript wyświetlają teraz nazwę witryny, której kod utworzył okno dialogowe | CVE-2005-3703 | X | X | X | X |
Safari | Niesprecyzowane usprawnienie obsługi „kodu zabezpieczającego kartę kredytową”. | Nie dotyczy | X | X | X | X |
Migracja serwera | Usuwa niepotrzebne uprawnienia, których narzędzie nie potrzebuje | Nie dotyczy | ? | ? | ? | ? |
Sudo | Zaktualizuj do wersji 1.6.8p9, aby uniemożliwić konfiguracjom niestandardowym zezwalanie na nieautoryzowany wzrost uprawnień | CVE-2005-1993 | X | X | X | X |
dziennik systemowy | Wiadomości dziennika ze znakami nowego wiersza mogą symulować nowe wiadomości dotyczące zdarzeń, które nie miały miejsca | CVE-2005-3704 | * | * | X | X |
Zestaw sieciowy | Silnik PCRE dla JavaScript ma potencjalnie możliwe do wykorzystania przepełnienie bufora, które może pozwolić na wykonanie dowolnego kodu | CVE-2005-2491 | X | X | X | X |
Zestaw sieciowy | Nieokreślone pobieranie treści może spowodować przepełnienie bufora i wykonanie dowolnego kodu | CVE-2005-3705 | X | X | X | X |
X = Naprawiono w tej aktualizacji; * = Składnik lub funkcja, której dotyczy problem, nigdy nie występowała w tej wersji; # = błąd nie występował w tej wersji przed tą aktualizacją;? = nieznany
Uwagi dotyczące aktualizacji Apple zawierają sekcję oznaczoną jako „dodatkowe informacje”, która opisuje zmiany, które np bez ujawnionego powodu, są uwzględnione w „Aktualizacji zabezpieczeń”, ale nie mają przypisanych numerów luk w zabezpieczeniach. Jednym z nich jest zmiana „Typów podstawowych w celu poprawy obsługi plików terminala” dla systemu Mac OS X 10.4.3. Jest to obsługiwane przez plik XML znajdujący się pod adresem
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/System. Jak omówiono wcześniej, ten plik zawiera pomysł systemu na to, jakie typy plików, typy MIME i rozszerzenia nazw plików reprezentują bezpieczne i „niebezpieczne” pliki do pobrania. Aktualizacja zabezpieczeń 2005-009 dodaje rozszerzenie nazwy pliku
.termindo kategorii „niebezpiecznych plików wykonywalnych”. Gdy pobierzesz taki plik w przeglądarce Safari lub innej aplikacji korzystającej z typów podstawowych, zostaniesz ostrzeżony, że może on zawierać kod wykonywalny. (Safari mówi, że „zawiera aplikację”). Tiger ma wbudowany sposób modyfikacji Podstawowe typy i dodaj własne typy lub zastąp domyślne ustawienia systemu, ale Apple nadal nie udokumentował To.
Ta „dodatkowa informacja” jest niepokojąca. Przez ostatnie kilka lat Apple starał się naprawiać problemy z bezpieczeństwem tylko w aktualizacjach zabezpieczeń. Błędy niezwiązane z bezpieczeństwem czekają na wersje systemu operacyjnego lub oddzielne instalacje, takie jak aktualizacja AirPort lub aktualizacja odtwarzacza DVD. Zmiany, takie jak aktualizacja podstawowych typów, aby ostrzec cię o plikach terminala, wyraźnie liczą się jako poprawki bezpieczeństwa, podobnie jak najwyraźniej aktualizacja Safari „w celu poprawy obsługi kodów bezpieczeństwa kart kredytowych”.
Ale jeśli są to problemy z bezpieczeństwem, dlaczego Apple nie uzyskało dla nich numerów CVE i nie udokumentowało ich normalnie? Co jest związane z bezpieczeństwem w ulepszaniu renderowania plików QuickDraw PICT? Jeśli aktualizacje zabezpieczeń zaczną zawierać regularne poprawki błędów, system, który jest już nieco zagmatwany, może stać się całkowicie nieprzenikniony. To nie przyniosłoby korzyści Apple ani jego klientom.
Magia aktualizacji
Funkcja aktualizacji oprogramowania OS X ma ułatwić zarządzanie systemem, ostrzegając o aktualizacjach których potrzebujesz, pobierając je w tle, jeśli są oznaczone jako pilne, i instalując je, gdy tego potrzebujesz gotowy. Wiemy jednak, że tak się nie dzieje, dzięki aktualizacji zabezpieczeń 2005-009 i innym aktualizacjom, ponieważ czytelnicy, przyjaciele i rodzina wciąż nam to powtarzają. Po prostu ignorują to, co wyświetla Aktualizacja oprogramowania, ponieważ nie mogą dowiedzieć się, co mają robić aktualizacje.
Firma Apple nigdy publicznie nie zobowiązała się do przestrzegania harmonogramów aktualizacji systemu Mac OS X ani aktualizacji zabezpieczeń, ale generalnie te pierwsze były dostarczane co kwartał, a drugie co miesiąc. Jest to praktyczna zasada, a nie prawo natury — w 2005 roku wydano dziewięć aktualizacji zabezpieczeń, a trzy aktualizacje systemu Mac OS X 10.4 w ciągu sześciu miesięcy, w których był on dostępny. Ale znowu intencja pomaga ludziom zrozumieć aktualizacje i czuć się pewnie podczas ich stosowania. Aktualizacje zabezpieczeń pojawiają się co cztery do sześciu tygodni i usuwają tylko luki w zabezpieczeniach, które mogą wykorzystać osoby atakujące. Aktualizacje systemu Mac OS X pojawiają się mniej więcej co kwartał i naprawiają zarówno błędy związane z bezpieczeństwem, jak i niezwiązane z bezpieczeństwem w systemie operacyjnym. W międzyczasie nadchodzą ważne aktualizacje dla docelowych komponentów, takich jak AirPort Extreme lub Java 2SE 5.0.
To jest łatwe, to jest przewidywalne, to jest rozsądne – o ile to się trzyma razem. Nie wystarczy osiągnąć 80 procent drogi do celu. Zdmuchnięcie ostatnich 20 procent sprawia, że wszyscy są zdziwieni aktualizacjami i sprawia, że pierwsze 80 procent komunikacji działa w dużej mierze bez znaczenia. To właśnie wydarzyło się w tym kwartale.
Mac OS X 10.4.3 jest nie mniej udokumentowany niż większość aktualizacji Mac OS X, jednak przydałoby się więcej informacji. Następnie otrzymaliśmy aktualizację zabezpieczeń, która może zawierać poprawki niezwiązane z bezpieczeństwem, aktualizację Javy ze świetnymi informacjami o wersji dla programistów, ale prawie bez wyjaśnień dla użytkowników, ledwie udokumentowany AirPort Aktualizacja o dwóch różnych nazwach (i jedna edycja z dwoma numerami wersji), tuner szerokopasmowy, który nie jest odpowiedni dla większości osób z dostępem szerokopasmowym, oraz aktualizacja oprogramowania układowego, która jest spóźniona o rok.
To niesamowicie frustrujące, ponieważ Apple jest tak blisko poprawnego działania aktualizacji. Zasady nie są skomplikowane.
Język aktualizacji Apple krzyczy na najwyższych obrotach: „Nie chcemy wam mówić zbyt wiele o tej aktualizacji, ponieważ jesteśmy zawstydzeni o tym." To szkodzi większości ludzi, którzy niechętnie instalują tajemnicze aktualizacje w działających systemach. Gdyby każda z listopadowych aktualizacji Apple została jasno nazwana, opisana i przedstawiona, każdy wiedziałby, czego się spodziewać. I wyobraź sobie, ile czasu świat mógłby poświęcić na bardziej owocne zajęcia, gdyby nikt nigdy nie musiał pytać, co robi aktualizacja Apple.
[ Fragment za zgodą z wydania MWJ z 10 grudnia, opublikowanego przez MacJournals.com. Prawa autorskie 2005, GCSF Incorporated. Aby uzyskać bezpłatną wersję próbną MWJ, odwiedź www.macjournals.com. ]