Windows 7: Chcesz mieć poprawki? To wciąż wykonalne
Choć Windows 7 utracił niedawno rozszerzone wsparcie techniczne, trzynaście lat po swojej premierze, wciąż ma wiernych użytkowników. Projekt 0patch umożliwia łatanie systemu mimo porzucenia przez Microsoft, jeszcze przez dwa lata. Odpłatnie.
30.01.2023 | aktual.: 30.01.2023 09:38
0patch to projekt prowadzony przez firmę ACROS Security, stosującą koncepcję o nazwie "micropatching". Termin ten pozwala domyślić się, że publikowane poprawki są małymi łatkami, a nie wielkimi kumulatywnymi aktualizacjami, ale niespecjalnie wyjaśnia, w jaki sposób są one tworzone. Aby się tego dowiedzieć, konieczne jest zapoznanie się z artykułami publikowanymi w ramach bloga 0patch. Podejście stosowane przez firmę polega na inżynierii wstecznej.
Mikro-łatki
ACROS bada wydawane przez Microsoft aktualizacje i odtwarza zmiany wprowadzane przez nie. Lecz w ten sposób odtwarzane są jedynie zmiany dotyczące krytycznego podzbioru krytycznych luk w zabezpieczeniach, a nie cała delta wprowadzana przez nową paczkę kumulatywną z Redmond. Oznacza to, że 0patch zawsze oferuje mniej aktualizacji niż Microsoft. Oficjalna metoda łatania Windowsów od kilku lat polega wyłącznie na modelu "wszystko albo nic": możemy zainstalować wszystkie poprawki naraz - albo nie instalować żadnej.
W ramach analizy porównywane są pliki binarne w wersjach przed i po aktualizacji i na tej podstawie identyfikowana jest sekcja podatnego kodu, którą załatano. Następnie, ta sama sekcja identyfikowana jest, jeżeli istnieje, w poprzednich/nieobsługiwanych wersjach systemu. 0patch dostarcza binarną łatkę poprawiającą tylko tę sekcję. Dlatego poprawki z 0patch nazywają się "micro": są malutkimi łatkami na pliki binarne.
Dalsza część artykułu pod materiałem wideo
Różne wersje Windowsów mają wspólnego przodka i nie ulegają radykalnym rewolucjom na tyle, by identyfikacja podatności w czysto binarny sposób była niemożliwa. Niemniej, istnieją oczywiście pewne różnice, przez co ACROS koncentruje się wyłącznie na znajdowaniu remediów na najważniejsze problemy. Poprawki dotyczą tylko krytycznych podatności - a i tak wtedy wybierane są tylko te dziury, które stanowią prawdziwe zagrożenie. Koszt naprawy wszystkich dziur byłby zbyt wysoki i nie wywindowałby cenę takiej usługi ponad przyzwoitość.
Większy (jakikolwiek?) wybór
Metoda stosowana w 0patch ma więcej zalet niż tylko naprawa systemów w wersjach porzuconych przez producenta. Alternatywna droga łatania systemów pozwala, z rzadka, otrzymywać poprawki na zidentyfikowane ale jeszcze niepoprawione przez autorów oprogramowania dziury. Takie sytuacje miewają miejsce - firmy wydają wtedy poradniki (advisories) informujące jak obejść problem lub wyłączyć wadliwą funkcję do czasu nadejścia nowej wersji.
Poza tym, 0patch oferuje coś, czego Microsoft zaprzestał: dedykowane, osobne poprawki dla każdej dziury zamiast jednego wielkiego pakietu. Windowsy otrzymywały aktualizacje w taki sposób mniej więcej do roku 2015, gdy Windows 10, a następnie obsługiwane wtedy jeszcze Windows Vista, 7 i 8.1 przełączyły się na model aktualizacji kumulatywnych. Microsoft zrobił to między innymi dlatego, żeby uniknąć problemu który miał miejsce z Windows XP (który aż do końca, w 2019, otrzymywał pojedyncze, a nie kumulatywne poprawki).
Dawniej bowiem Windows, na każdą znalezioną dziurę, otrzymywał dedykowaną aktualizację. Co miesiąc Windows Update oferowało kilka, a czasem nawet kilkanaście małych paczek z poprawkami. Gdy system był obecny na rynku przez kilka lat, skanowanie w poszukiwaniu aktualizacji musiało sprawdzać, które paczki są zainstalowane, a które nie - i na tej podstawie wybierać podzbiór tych pasujących. Operacji nie dało się podzielić na części, raz rozpoczęta musiała dotrzeć do końca - i często kolejne wyszukiwanie wcale nie było krótsze.
W rezultacie, skanowanie w poszukiwaniu aktualizacji na niektórych komputerach trwało nawet dwa tygodnie nieprzerwanej pracy jednego rdzenia procesora, na którym walczył SVCHOST. Microsoft uznał, że nie warto sprawdzać, które składniki użytkownik ma załatane, a które nie - i po prostu zaczął wydawać jedną wielką paczkę co miesiąc. Rozwiązało to problem z Windows Update i ułatwiło pracę pomocy technicznej: od teraz każdy użytkownik miał ten sam zbiór poprawek.
Niestety, gdy poprawka jednego błędu coś u kogoś popsuła, w takim trybie nie jest już możliwe "odznaczenie jej" i instalacja pozostałych: trzeba zrezygnować z aktualizacji w ogóle wszystkich dziur i liczyć na to, że za miesiąc nowsza poprawka rozwiąże problem. Jeżeli tak nie będzie - cóż, przyjdzie uchylać się od aktualizacji. A 0patch nie jest tu rozwiązaniem: łata on tylko kilka rzeczy, podczas gdy Microsoft w swoich poprawkach naprawia dziesiątki problemów i to właśnie Windows Update powinien być używany do serwisowania systemu, a nie zewnętrzne narzędzia.
Nie ma nic za darmo
0patch oferuje wariant darmowy, ale zapewnia on mniej, niż wielu by chciało. Tryb Free nie zawiera poprawek dla Windows 7, oferuje wyłącznie pulę łatek rozprowadzanych przez ACROS w trybie ogólnodostępnym i jest odpowiedni tylko dla użytkowników indywidualnych. To może być niewystarczające dla wielu weteranów Siódemki. Dlatego oferta 0patch jest celowana głównie dla firm zawierających wiele starych systemów lub dla biznesów niemogących aktualizować dedykowanych stacji roboczych ze względu na zgodność.
Czy tworzenie poprawek dla Windows 7 jest dziś zatem opłacalne? Być może - choć warto pamiętać, że 0patch opracowuje także łatki dla wydań serwerowych Windows, a to już biznes obracający niemałymi pieniędzmi. Active Directory pozostaje sercem wielu przedsiębiorstw i minie wiele lat zanim stan ten ulegnie zmianie.
Kamil J. Dudek, współpracownik redakcji dobreprogramy.pl