Problem roku 2038: druga pluskwa millenijna już nadchodzi
19 stycznia 2038 roku o 3:14:07 w nocy czasu UTC licznik czasu w wielu starszych systemach komputerowych po prostu się przekręci. To nie science fiction, lecz matematyczna pewność wynikająca ze sposobu, w jaki komputery liczą czas od 1970 roku. Problem roku 2038, zwany też Y2K38, jest mniej znany niż pluskwa milenijna, ale może okazać się znacznie trudniejszy do naprawienia.
Czym dokładnie jest problem roku 2038
Większość systemów komputerowych mierzy czas jako liczbę sekund, które upłynęły od tak zwanego Unix epoch, czyli północy 1 stycznia 1970 roku. W wielu starszych systemach ta liczba jest zapisywana jako 32-bitowa liczba całkowita ze znakiem, co oznacza, że może pomieścić maksymalnie 2 147 483 647 sekund.
Kiedy ten limit zostanie przekroczony, licznik nie zatrzyma się - przekręci się do wartości ujemnej, co komputer odczyta jako powrót do 13 grudnia 1901 roku. Dokładny moment tej awarii to 19 stycznia 2038 roku, godzina 3:14:07 UTC. Systemy, które wciąż używają 32-bitowego zapisu czasu, mogą wtedy błędnie liczyć daty, generować nieprawidłowe raporty, blokować transakcje albo w skrajnych przypadkach przestać działać.
Skąd wzięła się ta pułapka
Decyzję o 32-bitowym formacie czasu podjęto w latach 70. XX wieku, gdy pamięć operacyjna była drogim i rzadkim zasobem. Programiści UNIX-a nie mieli powodu myśleć o roku 2038 - dla nich to była odległa, teoretyczna przyszłość, podobnie jak dla twórców systemów z lat 60. i 70. rok 2000 wydawał się abstrakcją.
Standard ten, znany jako time_t, trafił później do niezliczonej liczby systemów operacyjnych, baz danych, języków programowania i urządzeń wbudowanych. Przez dekady był traktowany jako coś oczywistego i niekwestionowanego - dokładnie tak samo, jak dwucyfrowy zapis roku przed Y2K. Różnica polega na tym, że problem roku 2000 dotyczył głównie systemów biznesowych, a Y2K38 sięga znacznie głębiej, w sam fundament informatyki.
Dlaczego to poważniejszy problem niż Y2K
Pluskwa milenijna dotyczyła głównie aplikacji biznesowych i baz danych, które dało się stosunkowo łatwo zidentyfikować i poprawić. Problem roku 2038 jest trudniejszy z kilku powodów:
- Ukryty zasięg - 32-bitowy licznik czasu działa w systemach wbudowanych, sterownikach przemysłowych, routerach, kamerach IP i innych urządzeniach, o których istnieniu firma często zapomina.
- Długi cykl życia sprzętu - urządzenia przemysłowe i infrastrukturalne bywają eksploatowane 15-20 lat bez wymiany, więc sprzęt kupowany dziś może dożyć 2038 roku.
- Brak jednego właściciela problemu - w przeciwieństwie do Y2K, gdzie firmy miały jasno zdefiniowane systemy IT do przeglądu, dziś zagrożone komponenty są rozproszone w chmurze, w firmware i w kodzie open source, którego nikt aktywnie nie utrzymuje.
Część nowoczesnych systemów, w tym większość 64-bitowych wersji Linuksa i Windowsa, już dawno rozwiązała ten problem, przechodząc na 64-bitowy zapis czasu, który wystarczy na miliardy lat. Zagrożenie dotyczy głównie starszego, 32-bitowego sprzętu i oprogramowania.
Kogo problem może dotknąć najbardziej
Dla przeciętnej małej firmy rok 2038 może wydawać się odległą abstrakcją, ale warto pamiętać, że zagrożone są konkretne kategorie sprzętu i oprogramowania wciąż obecne w wielu biurach i zakładach:
- starsze systemy kontroli dostępu i rejestratory czasu pracy
- przemysłowe sterowniki PLC i systemy automatyki budynkowej
- starsze routery, switche i urządzenia sieciowe z firmware sprzed lat
- systemy księgowe i bazy danych liczące odsetki, harmonogramy spłat czy certyfikaty z długim horyzontem czasowym
- urządzenia IoT i kamery monitoringu z zamkniętym, rzadko aktualizowanym oprogramowaniem
Problem może ujawnić się wcześniej niż w 2038 roku - systemy liczące daty w przyszłość, na przykład harmonogramy kredytów czy certyfikaty ważne kilkanaście lat, mogą zacząć błędnie działać znacznie wcześniej.
Co może zrobić Twoja firma już dziś
Do 2038 roku jest jeszcze sporo czasu, ale doświadczenie z Y2K pokazało, że przygotowania warto zacząć z dużym wyprzedzeniem, zanim presja czasu zmieni się w kosztowny chaos. Dobra wiadomość jest taka, że działania te pokrywają się z ogólną higieną bezpieczeństwa IT, którą i tak warto stosować:
- prowadzić aktualną inwentaryzację sprzętu i oprogramowania, ze szczególnym uwzględnieniem urządzeń wbudowanych i przemysłowych
- regularnie aktualizować systemy operacyjne do wersji 64-bitowych, które nie mają tego ograniczenia
- przy zakupie nowego sprzętu sieciowego i przemysłowego pytać dostawcę o wsparcie dla dat po 2038 roku
- uwzględnić temat w cyklicznych audytach infrastruktury IT, zamiast czekać na ostatnią chwilę
To dokładnie ten rodzaj długoterminowego ryzyka, które łatwo przeoczyć w codziennym zarządzaniu firmą, a który warto ująć w planach modernizacji infrastruktury.
Sprawdź, czy Twoja infrastruktura jest gotowa na przyszłość
NovaSys pomaga małym i średnim firmom we Wrocławiu przeprowadzać audyty IT, które wykrywają nie tylko bieżące luki bezpieczeństwa, ale też długoterminowe ryzyka związane ze starzejącym się sprzętem i oprogramowaniem.