CVE-2026-71277
KrytyczneCVSS 9.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 15 - wyżej niż 15% wszystkich znanych CVE
Streszczenie
W rust-iot-platform, implementacja guarda żądań AuthToken (api/src/main.rs) sprawdza tylko, czy nagłówek Authorization jest obecny, i nigdy nie weryfikuje jego wartości względem żadnej sesji, magazynu tokenów ani podpisu. Każde żądanie z dowolnym niepustym nagłówkiem Authorization (np. ) spełnia guard, dając dostęp do każdego endpointu chronionego tylko tym guardem.
Ocena ryzyka
Atakujący może uzyskać dostęp do chronionych zasobów bez ważnego tokena, co może prowadzić do nieautoryzowanego dostępu do danych i funkcji systemu.
Rekomendacja
Należy zaimplementować prawidłową weryfikację tokena, sprawdzając jego ważność, podpis i powiązanie z sesją. Zaleca się również użycie standardowych mechanizmów uwierzytelniania, takich jak JWT z weryfikacją podpisu.
Inne podatności w rust-iot-platform
Zobacz wszystkie- CVE-2026-82452Krytyczne
rust-iot-platform do commita 5df942ab zawiera podatność na ominięcie uwierzytelniania, gdzie większość tras API REST nie ma zabezpieczeń uwierzytelniających w sygnaturach handlerów. Nieuwierzytelnieni atakujący mogą tworzyć, aktualizować, listować, pobierać i usuwać konta użytkowników, bezpośrednio uzyskując dostęp do niezabezpieczonych endpointów bez podawania prawidłowych poświadczeń.
- CVE-2026-71278Krytyczne
rust-iot-platform umożliwia tworzenie 'calc rule' przez POST /calc-rule/create (api/src/controller/calc_rule_router.rs) z dowolnym polem. Ta trasa nie korzysta z zabezpieczenia AuthToken, które jest używane w innych miejscach aplikacji, co czyni ją dostępną bez uwierzytelnienia.
- CVE-2026-82453Wysokie
rust-iot-platform do commitu 5df942ab przechowuje hasła użytkowników w postaci jawnego tekstu bez haszowania w modelu użytkownika. Atakujący mogą odczytać odpowiedzi API z tras pobierania i listowania użytkowników, aby uzyskać poświadczenia w postaci jawnego tekstu dla wszystkich kont.
Oryginalny opis (angielski, źródło NVD)
rust-iot-platform's AuthToken request-guard implementation (api/src/main.rs) only checks whether the Authorization HTTP header is present, and never validates its value against any session, token store, or signature. Any request carrying an arbitrary non-empty Authorization header (e.g. ) satisfies the guard, granting access to every endpoint protected only by this request guard.

