Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

brak czasu życia tokenów

Termin Definicja
brak czasu życia tokenów

Brak czasu życia tokenów to luka bezpieczeństwa, w której dane uwierzytelniające pozostają ważne bezterminowo.

Na czym polega brak czasu życia tokenów

Token uwierzytelniający jest wartością wydawaną po poprawnym zalogowaniu lub potwierdzeniu uprawnień. Może mieć postać ciągu znaków przechowywanego w ciasteczku przeglądarki, nagłówku żądania HTTP albo pamięci aplikacji. Serwer wykorzystuje token do rozpoznania sesji i ustalenia, czy kolejne żądanie pochodzi od już uwierzytelnionego użytkownika. Czas życia tokenu określa, jak długo taka wartość pozostaje akceptowana. Po upływie tego okresu token powinien zostać odrzucony, nawet jeśli jego zapis nie został zmieniony.

Brak czasu życia tokenów oznacza, że mechanizm uwierzytelniania nie określa terminu wygaśnięcia albo nie sprawdza go podczas obsługi żądania. W praktyce token może pozostać ważny do chwili ręcznego wylogowania, usunięcia konta, unieważnienia sesji lub zmiany innych danych po stronie serwera. Jeżeli nie występuje żaden z tych mechanizmów, ważność może być faktycznie bezterminowa. Nie jest to to samo co długi, ale jasno określony czas sesji: w tym przypadku problemem jest brak wymuszonej granicy obowiązywania poświadczenia.

Dlaczego nieograniczona ważność zwiększa ryzyko

Token działa jak tymczasowy dowód uwierzytelnienia. Jeżeli zostanie skopiowany przez złośliwe oprogramowanie, niebezpieczne rozszerzenie przeglądarki, błąd aplikacji, niewłaściwie chroniony komputer albo osobę mającą dostęp do urządzenia, napastnik może próbować użyć go bez znajomości hasła. Gdy token wygasa po krótkim, uzasadnionym czasie, okno możliwego wykorzystania jest ograniczone. Przy braku czasu życia skopiowana wartość może być używana znacznie dłużej, a samo wykrycie incydentu nie powoduje automatycznego zakończenia jej ważności.

Ryzyko zależy od rodzaju tokenu, zakresu przyznanych uprawnień oraz sposobu jego przechowywania. Token pozwalający jedynie odczytać pojedynczy zasób ma mniejsze konsekwencje niż token umożliwiający zmianę ustawień konta, dostęp do dokumentów lub wykonywanie operacji administracyjnych. Szczególnie istotne jest rozróżnienie tokenu dostępowego od tokenu odświeżającego. Token dostępowy powinien zwykle mieć krótszy okres użycia, natomiast token odświeżający wymaga oddzielnych zasad unieważniania, rotacji i ochrony, ponieważ może służyć do uzyskiwania kolejnych tokenów dostępowych.

Jak rozpoznać problem w działaniu aplikacji

Diagnoza wymaga ustalenia, gdzie token jest tworzony, jakie informacje opisują jego ważność i w którym miejscu serwer podejmuje decyzję o akceptacji. W tokenie typu JWT można sprawdzić między innymi roszczenia iat, wskazujące moment wydania, oraz exp, określające moment wygaśnięcia. Samo istnienie pola exp nie wystarcza, jeżeli serwer nie weryfikuje jego wartości. W przypadku sesji przechowywanej po stronie serwera termin może znajdować się w bazie danych lub w magazynie sesji, a klient może otrzymywać wyłącznie identyfikator bez jawnej daty wygaśnięcia.

Podczas sprawdzania należy porównać zachowanie aplikacji przed upływem terminu, po jego upływie oraz po unieważnieniu sesji. Warto zweryfikować, czy wylogowanie usuwa token po stronie klienta, czy serwer przestaje go akceptować, czy zmiana hasła unieważnia wcześniejsze sesje oraz czy rotacja tokenu odświeżającego blokuje jego poprzednią wartość. Logi mogą ujawnić wielokrotne użycie tego samego tokenu, żądania z nietypowych adresów lub korzystanie z sesji długo po zakończeniu pracy. W testach nie należy ujawniać rzeczywistych tokenów; bezpieczniej używać kont testowych i wartości przeznaczonych wyłącznie do kontroli.

Ograniczenie ważności i kontrola sesji

Naprawa polega na wprowadzeniu jawnego czasu życia odpowiedniego dla rodzaju tokenu oraz konsekwentnym sprawdzaniu tego czasu przy każdym żądaniu wymagającym uwierzytelnienia. Po wygaśnięciu serwer powinien zwrócić odpowiedź oznaczającą brak ważnego uwierzytelnienia, a aplikacja kliencka powinna przeprowadzić kontrolowane odnowienie sesji albo poprosić o ponowne logowanie. Czas bezczynności można ustawić niezależnie od maksymalnego czasu sesji, aby zakończyć dostęp po przerwie w korzystaniu z programu. Dodatkową warstwę stanowi unieważnianie sesji po wylogowaniu, zmianie hasła lub stwierdzeniu podejrzanej aktywności.

Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i ich podzespołów, dlatego przy podejrzeniu przejęcia sesji można zlecić sprawdzenie komputera pod kątem szkodliwego oprogramowania, nieprawidłowych rozszerzeń przeglądarki oraz innych przyczyn, które mogły ułatwić ujawnienie tokenu. Sama naprawa urządzenia nie zastępuje unieważnienia aktywnych tokenów po stronie aplikacji. Po zakończeniu diagnostyki należy więc osobno zakończyć podejrzane sesje, zmienić hasło zgodnie z procedurą danego systemu i ponownie uwierzytelnić tylko zaufane urządzenia.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę