Katalog podatności CVE
Przetłumaczone opisy podatności z bazy NVD NIST - w języku polskim
Przeglądaj podatności według pakietuKatalog CISA KEV zaktualizowany: (v2026.08.31)
Cotygodniowy digest CVE
Jeden mail w tygodniu z nowo opublikowanymi podatnościami, o których warto wiedzieć. Bez zakładania konta.
Digest dotyczy ogólnie nowych podatności, nie Twoich serwerów. Jeśli chcesz wiedzieć, które z nich faktycznie działają w Twojej infrastrukturze, tym zajmuje się Secvalis : skanuje Twoje maszyny i zgłasza wyłącznie to, co ich dotyczy.
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.
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.
OpenPLC Runtime v3 w funkcji compile_program (webserver/openplc.py) parsuje dyrektywy z przesłanych plików Structured Text (.st) i zapisuje odwołaną treść bez walidacji, czy ścieżka pliku pozostaje w katalogu ./core. Funkcja validate_file_path istnieje w kodzie, ale nie jest wywoływana z compile_program.
Funkcje microtar mtar_write_file_header i mtar_write_dir_header (src/microtar.c) kopiują nazwę wpisu dostarczoną przez wywołującego do 100-bajtowego pola struktury mtar_header_t na stosie przez strcpy(h.name, name), bez sprawdzenia, czy strlen(name) jest mniejsze niż 100 przed kopiowaniem.
W porcie LINUXTCP FreeModbus występuje błąd off-by-one w sprawdzaniu granic w xMBPortTCPPool (demo/LINUXTCP/port/porttcp.c). Sprawdzenie używa ścisłego porównania większości zamiast większości lub równego względem limitu 263 bajtów MB_TCP_BUF_SIZE.
W IoTSharp, kontroler BlobStorageController.cs nie ma atrybutu [Authorize], który jest zastosowany w innych kontrolerach, a w Startup.cs nie skonfigurowano globalnej polityki autoryzacji. W rezultacie punkty końcowe Upload/Download/List/Modify/Delete są dostępne dla nieuwierzytelnionych zdalnych atakujących.
nanoMODBUS do wersji v1.23.0 zawiera odczyt poza stosem prowadzący do zapisu przez dziki wskaźnik w nmbs_read_device_identification_basic / recv_read_device_identification_res w nanomodbus.c. Stała tablica stosowa order[3] = {0,1,2} mapuje identyfikatory obiektów na indeksy bufora. Pole object_id dostarczane przez serwer (0-255, odczytywane bezpośrednio z sieci) jest używane bez żadnego sprawdzenia granic jako buf_index = order[object_id].
nanoMODBUS do wersji 1.23.0 zawiera zapis poza zakresem w funkcji handle_read_file_record (FC 0x14, Read File Record) w nanomodbus.c. Funkcja sprawdza, czy całkowity rozmiar żądania nie przekracza 245 bajtów i czy record_length każdego pod-żądania wynosi co najwyżej 124, ale nie sprawdza skumulowanego rozmiaru odpowiedzi przed przetworzeniem.
Podatność w login.php systemu Inventory-Management-System-PHP polega na konstruowaniu zapytania uwierzytelniającego przez bezpośrednie sklejanie surowych parametrów POST, bez żadnego escapowania czy parametryzacji. Umożliwia to ominięcie uwierzytelniania przez wstrzyknięcie SQL, np. email=' OR 1=1 LIMIT 1-- -.
DjangoCRM ma twardo zakodowany klucz SECRET_KEY Django bezpośrednio w pliku webcrm/settings.py, zamiast odczytywać go ze zmiennej środowiskowej. Ponieważ klucz ten jest używany do podpisywania sesji, generowania tokenów CSRF i tokenów resetowania hasła, każdy, kto przeczyta publiczne repozytorium, może sfałszować ważne ciasteczka sesji (w tym dla konta superadmina), tokeny CSRF i tokeny resetowania hasła, osiągając pełne przejęcie konta.
W Miantang/IoT-PHP, w pliku index.php, trasa POST /userlogin odczytuje hasło bezpośrednio z ['pwd'] bez sanityzacji i łączy je z surowym zapytaniem SQL. Nieuwierzytelniony atakujący może przesłać payload taki jak pwd=' OR '1'='1, aby ominąć uwierzytelnianie, a dzięki wstrzyknięciu UNION wyodrębnić dowolne dane z bazy.
W IOTSmartHome, funkcja checkCookie w gui/login.php buduje zapytanie uwierzytelniające jako SELECT * FROM users WHERE ID='<zdekodowany cookie lastLogin>' po zdekodowaniu cookie lastLogin dostarczonego przez klienta za pomocą safe_decode, które wykonuje dekodowanie base64 URL-safe bez sanityzacji zdekodowanej wartości przed wstawieniem jej do zapytania SQL.
Oprogramowanie routerów Zbtlink zawiera wbudowany implant zdalnego sterowania ENDLESSDOORS, obecny w każdej opublikowanej kompilacji. Jest to narzędzie open-source ycsunjane/rctl zbudowane jako pakiet OpenWrt (librctl.so), uruchamiane przy starcie jako root pod nazwą procesu kworker. Nie otwiera portu nasłuchującego; łączy się przez czysty TCP z zakodowanym serwerem C2 (kanał poleceń 7000, zwrotny interaktywny shell 7001) bez uwierzytelniania i szyfrowania, ponawiając kontakt co około 35 sekund. Obsługa poleceń przekazuje dowolny otrzymany ciąg do popen() jako uid=0, a zarezerwowane polecenie rctlbash zwraca interaktywną powłokę root. Ponieważ kanał jest nieuwierzytelniony i jawny, kontrola nie jest ograniczona do tego, kto go zainstalował: każda strona, która odpowiada na adresie C2, zajmuje ścieżkę sieciową (DNS lub przejęcie trasy) lub uzyska zakodowaną domenę zapasową, uzyskuje nieuwierzytelnione zdalne wykonanie kodu jako root.
Podatność na eskalację uprawnień istnieje w oprogramowaniu pośredniczącym impersonacji Rancher (pkg/auth/requests/impersonate.go). Uwierzytelniony użytkownik Rancher z domyślną globalną rolą użytkownika może uzyskać pełny dostęp administracyjny do płaszczyzny sterowania Rancher, a pośrednio do wszystkich zarządzanych klastrów podrzędnych. Problem dotyczy Rancher: od 2.11.0 przed 2.11.16, od 2.12.0 przed 2.12.12, od 2.13.0 przed 2.13.8 i od 2.14.0 przed 2.14.2.
Wada w kontrolerze subskrypcji aplikacji (multicluster-operators-subscription) Red Hat Advanced Cluster Management for Kubernetes (ACM) pozwala użytkownikowi z uprawnieniami "edit" w przestrzeni nazw ACM hub na utworzenie zasobu Channel wskazującego na kontrolowane repozytorium Helm oraz zasobu Subscription. Kontroler pobiera i stosuje zawartość wykresu Helm z własnymi podwyższonymi uprawnieniami, bez weryfikacji, czy twórca subskrypcji posiada rolę "open-cluster-management:subscription-admin" i bez ograniczania stosowanych zasobów do przestrzeni nazw subskrypcji. Pozwala to atakującemu na umieszczenie w wykresie Helm zasobów klastrowych, takich jak ClusterRoleBinding przyznający ServiceAccount atakującego rolę "cluster-admin". Skuteczna eksploatacja prowadzi do pełnej eskalacji uprawnień do poziomu cluster-admin.
Wada w kontrolerze ClusterCurator w Multicluster Engine for Kubernetes pozwala administratorowi dzierżawy z uprawnieniami ograniczonymi do przestrzeni nazw na utworzenie ClusterCurator w swojej przestrzeni nazw. Ta akcja nieumyślnie przyznaje administratorowi dzierżawy możliwość wybicia tokenu dla ServiceAccount z uprawnieniami administracyjnymi na poziomie klastra. Prowadzi to do eskalacji uprawnień, umożliwiając administratorowi dzierżawy pełną kontrolę nad klastrem.
W Aerie/PlanDev sequencing-server, middleware autoryzacyjny (sequencing-server/src/app.ts) wyprowadza rolę sesji Hasura wywołującego przez getHasuraSession, która preferuje obiekt session_variables pobrany bezpośrednio z treści żądania JSON dostarczonego przez klienta, zamiast roszczeń JWT z nagłówka Authorization, bez weryfikacji, czy żądanie faktycznie pochodzi od Hasury.
Punkt logowania Typemill (POST /tm/login, ControllerWebAuth::login) nie wykonuje ograniczania szybkości, zliczania nieudanych prób ani blokady konta, gdy captcha jest wyłączona (domyślna konfiguracja). Nieuwierzytelniony atakujący może wysyłać nieograniczone żądania zgadywania haseł do dowolnego konta, w tym administratorów, bez ograniczeń.
Aplikacja Stock-Inventory-Management-System w login.php przypisuje surowe wartości nazwy użytkownika i hasła do zapytania SQL bez parametryzacji, co umożliwia wstrzyknięcie SQL. Dodatkowo skrypt zawiera zakodowane na stałe poświadczenia administratora (admin/neola), co stanowi drugą, niezależną ścieżkę całkowitego ominięcia uwierzytelniania.
Panel administracyjny Pluck CMS opiera ochronę CSRF wyłącznie na porównaniu nagłówka Referer, bez użycia tokenów anty-CSRF dla żądań. Oznacza to, że atakujący może potencjalnie wykonywać nieautoryzowane akcje administracyjne, jeśli uda mu się obejść sprawdzenie nagłówka Referer.

