| Termin | Definicja |
|---|---|
| niezaszyfrowany token w żądaniu | Niezaszyfrowany token w żądaniu to przesyłanie klucza dostępu kanałem, z którego można go odczytać. Mechanika transmisji jawnych identyfikatorów sesjiW architekturze aplikacji sieciowych token pełni funkcję cyfrowego klucza dostępu, który jednoznacznie identyfikuje użytkownika lub określa jego uprawnienia po pomyślnym zakończeniu procesu uwierzytelniania. Może przyjmować formę ciągów znaków generowanych losowo (tak zwane tokeny referencyjne, w tym klasyczne identyfikatory sesji) lub struktur zawierających zakodowane dane i kryptograficzne podpisy, takich jak JSON Web Token (JWT). Przesyłanie tego elementu w postaci niezaszyfrowanej oznacza, że ciąg znaków wędruje przez sieć jako zwykły tekst, co najczęściej jest wynikiem użycia protokołu komunikacyjnego pozbawionego warstwy szyfrującej, na przykład HTTP, FTP lub Telnet. Z punktu widzenia modelu OSI, brak szyfrowania w warstwie prezentacji lub transportowej (jak ma to miejsce w przypadku braku protokołu TLS - Transport Layer Security) powoduje, że każdy węzeł pośredniczący w transmisji ma wgląd w zawartość pakietów danych. Należą do nich routery, przełączniki, serwery proxy, punkty dostępowe Wi-Fi oraz urządzenia dostawców usług internetowych. Warto zaznaczyć, że przesyłanie tokenu kanałem, z którego można go odczytać, dotyczy nie tylko braku TLS. Błędem implementacyjnym o podobnych skutkach jest umieszczanie kluczy dostępu bezpośrednio w parametrach adresu URL (w tak zwanym query string), na przykład w postaci http://api.domena.pl/dane?token=abc123xyz. W takiej sytuacji, nawet przy zastosowaniu protokołu HTTPS, token pozostaje widoczny przed zaszyfrowaniem połączenia w pasku adresu przeglądarki, jest zapisywany w lokalnej historii odwiedzanych stron, a ponadto trafia w jawnej formie do logów serwerów HTTP (takich jak Apache, Nginx) oraz systemów analitycznych. Kodowanie tokenu algorytmami takimi jak Base64 nie stanowi formy szyfrowania; jest to standaryzacja formatu danych, która nie zapewnia poufności, ponieważ proces dekodowania nie wymaga znajomości klucza kryptograficznego i odbywa się bez ograniczeń autoryzacyjnych. Z technicznego punktu widzenia, poprawnym sposobem transmisji tokenów jest umieszczanie ich w nagłówkach żądania (na przykład nagłówek Authorization: Bearer ) lub w ciele żądania (POST payload), zawsze z użyciem kanału zabezpieczonego kryptograficznie (HTTPS/TLS). Analiza wektorów ataku i skutków przechwycenia danych uwierzytelniającychNiezaszyfrowana transmisja tokenów otwiera drogę do szeregu wektorów ataku, z których częstym jest atak typu Man-in-the-Middle (MitM). Intruz, znajdujący się w tej samej domenie kolizyjnej lub segmencie sieci lokalnej, może użyć technik takich jak ARP Spoofing (fałszowanie tablic Address Resolution Protocol), aby przekierować ruch sieciowy ofiary przez własne urządzenie. Następnie, korzystając z analizatorów protokołów sieciowych, potocznie nazywanych snifferami (na przykład Wireshark, tcpdump), odczytuje pakiety zawierające jawne żądania. Ponieważ token wędruje w postaci czystego tekstu, jego przechwycenie nie wymaga łamania zabezpieczeń kryptograficznych ani stosowania inżynierii odwrotnej. W środowiskach sieci bezprzewodowych ryzyko rośnie w przypadku korzystania z otwartych, niezabezpieczonych hasłem punktów dostępowych, gdzie ruch może być nasłuchiwany przez osobę w zasięgu sygnału radiowego, wyposażoną w kartę sieciową działającą w trybie monitora. Przechwycenie tokenu prowadzi wprost do kradzieży sesji (Session Hijacking). Posiadacz ważnego tokenu jest traktowany przez serwer docelowy jako autoryzowany użytkownik. Atakujący kopiuje zdobyty ciąg znaków, umieszcza go we własnych żądaniach sieciowych (Replay Attack) i uzyskuje dostęp do konta ofiary, omijając mechanizmy uwierzytelniania dwuskładnikowego (2FA/MFA), ponieważ te weryfikowane są na etapie logowania, przed wygenerowaniem tokenu. Skutki zależą od uprawnień przypisanych do przechwyconej sesji; obejmują nieautoryzowany odczyt danych, modyfikację konfiguracji systemu czy realizację transakcji. Mimo zidentyfikowanego ryzyka, jawne przesyłanie tokenów wciąż występuje, głównie z powodu błędów w konfiguracji środowisk testowych przenoszonych bez zmian na produkcję, lub w rozwiązaniach z zakresu Internetu Rzeczy (IoT). Mikroprocesory o ograniczonej wydajności, stosowane w czujnikach czy sterownikach przemysłowych, bywają projektowane tak, aby pomijać narzut obliczeniowy związany z negocjacją kluczy TLS (handshake) i samym szyfrowaniem transmisji. Sprzęt ten komunikuje się z serwerami za pomocą nieszyfrowanego HTTP, wystawiając wymianę danych na podsłuch. Rozpoznawanie podatności w warstwie sieciowej i diagnostyka błędów implementacjiZarządzanie bezpieczeństwem transmisji opiera się na analizie ruchu sieciowego oraz weryfikacji nagłówków HTTP. Podstawową metodą diagnostyczną dla użytkownika końcowego jest weryfikacja paska adresu przeglądarki; brak ikony kłódki oraz ostrzeżenie o niezabezpieczonym połączeniu wskazują na korzystanie z protokołu HTTP. Oznacza to wysyłanie tokenów i ciasteczek (cookies) otwartym kanałem. W procesie tworzenia oprogramowania administratorzy i programiści korzystają z narzędzi wbudowanych w przeglądarki (zakładka Sieć w narzędziach deweloperskich), aby zweryfikować, czy nagłówki żądań nie ujawniają danych uwierzytelniających w parametrach GET. Zastosowanie flagi Secure w przypadku ciasteczek sesyjnych jest mechanizmem, który na poziomie przeglądarki blokuje ich wysłanie, jeśli połączenie nie wykorzystuje protokołu TLS. W odniesieniu do tokenów przekazywanych w nagłówku Authorization, wymuszenie HTTPS na poziomie konfiguracji serwera aplikacyjnego (mechanizm HSTS - HTTP Strict Transport Security) zapobiega przed próbami cofnięcia połączenia do wersji niezaszyfrowanej podczas ataku typu SSL Stripping. Błędem poznawczym wśród osób administrujących zamkniętymi sieciami korporacyjnymi (LAN) jest zakładanie, że transmisja wewnątrz organizacji nie wymaga szyfrowania, ponieważ jest fizycznie odizolowana od publicznego Internetu. Architektura sieci o zerowym zaufaniu (Zero Trust) przyjmuje, że sieć wewnętrzna jest w równym stopniu narażona na ataki co sieć zewnętrzna. Wewnątrz sieci firmowej mogą znajdować się zainfekowane stacje robocze, analizujące ruch w poszukiwaniu danych logowania. Występowanie żądań z jawnym tokenem staje się reliktem w sieciach publicznych, dzięki upowszechnieniu darmowych certyfikatów SSL/TLS i politykom przeglądarek wymuszającym stosowanie HTTPS. Mimo tego, starsze urządzenia sieciowe, w tym routery i przełączniki zarządzalne zaprojektowane ponad dekadę temu, często posiadają interfejsy administracyjne działające wyłącznie w warstwie HTTP, wymuszając przesyłanie parametrów autoryzacyjnych w sposób podatny na przechwycenie. Granice kompetencji serwisu sprzętowego w kontekście bezpieczeństwa oprogramowaniaProblematyka przesyłania niezaszyfrowanych tokenów stanowi zagadnienie z domeny bezpieczeństwa aplikacji webowych, inżynierii oprogramowania oraz konfiguracji infrastruktury sieciowej. Z tego powodu usterki tego rodzaju wykraczają poza zakres usług świadczonych przez placówki naprawy urządzeń. Usługi sprzętowe obejmują diagnostykę i wymianę podzespołów fizycznych: płyt głównych, matryc, dysków twardych, układów zasilania (BGA), pamięci RAM oraz klawiatur, a także odzysk danych z uszkodzonych mechanicznie lub logicznie nośników informacji. Zgłoszenia serwisowe wynikające bezpośrednio z naruszenia bezpieczeństwa sesji sieciowej – na przykład w wyniku modyfikacji danych konta po kradzieży tokenu na niezabezpieczonym połączeniu – należą do rzadkości w kontekście naprawy sprzętu. Użytkownicy zgłaszają zazwyczaj efekty poboczne, prosząc o formatowanie dysku z powodu widocznej infekcji systemu, natomiast sam mechanizm kradzieży sesji po stronie warstwy transportowej pozostaje niediagnozowany w warunkach warsztatowych. Serwis komputerowy nie ingeruje w kod źródłowy stron internetowych, nie modyfikuje mechanizmów zarządzania sesją w aplikacjach firm trzecich ani nie konfiguruje zabezpieczeń serwerowych. Punktem stycznym między kryptografią warstwy transportowej a serwisowaniem komputerów konsumenckich jest praca ze starym, wyeksploatowanym sprzętem posiadającym przestarzałe systemy operacyjne z nieaktualnymi certyfikatami głównymi (Root CA). Laptopy używane ponad dekadę, pozbawione aktualizacji oprogramowania układowego i łat bezpieczeństwa, nie obsługują nowych algorytmów szyfrujących oraz protokołów TLS w wersji 1.2 lub 1.3. W tych okolicznościach przeglądarka internetowa blokuje połączenie z nowymi witrynami, a w środowiskach takich jak systemy produkcyjne, maszyna wymusza komunikację protokołem HTTP, wysyłając tokeny jawnym tekstem, aby w ogóle nawiązać łączność. Interwencja serwisowa sprowadza się do aktualizacji środowiska operacyjnego i przeglądarki do maksymalnej obsługiwanej przez sprzęt wersji, lub do ręcznej dystrybucji zaktualizowanych certyfikatów. Działania te nie naprawiają podatności w oprogramowaniu docelowym, jeśli serwer wciąż pozwala na ruch HTTP. Warszawskie Pogotowie Komputerowe koncentruje się na przywracaniu funkcjonalności podzespołów urządzeń klienckich, podczas gdy wdrożenie mechanizmów szyfrowania dla tokenów dostępu pozostaje wyłącznym obowiązkiem deweloperów oprogramowania. |