CVE-2026-19936
ŚrednieCVSS 4.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 3 - wyżej niż 3% wszystkich znanych CVE
Streszczenie
W kolejce komunikatów warstwy dostępu Bluetooth Mesh (subsys/bluetooth/mesh/delayable_msg.c) trzy listy i jedno zadanie opóźnione są współdzielone między dwoma wątkami kooperacyjnymi bez synchronizacji. Brak sprawdzenia NULL po sys_slist_get() oraz wyścig między bt_mesh_delayable_msg_manage() a delayable_msg_handler() pozwalają na odczyt-modyfikację-zapis przez wskaźnik NULL, co powoduje awarię wątku systemowej kolejki roboczej lub reset węzła. Luka nie prowadzi do uszkodzenia pamięci ani wykonania kodu — skutkiem jest utrata dostępności zaatakowanego węzła.
Ocena ryzyka
Atakujący będący członkiem sieci mesh (posiadający NetKey i powiązany AppKey) może wyczerpać pule kontekstów i fragmentów, doprowadzając do awarii wątku systemowej kolejki roboczej lub resetu węzła. Skutkuje to niedostępnością usług mesh na dotkniętym urządzeniu, w tym mechanizmów czasowych mesh.
Rekomendacja
Zaktualizuj urządzenia z Bluetooth Mesh do wersji zawierającej poprawkę, która serializuje mutacje list za pomocą k_spinlock, usuwa niesprawdzone sys_slist_get() i odrzuca komunikaty w stanie zawieszenia/resetu stosu. Jeśli aktualizacja nie jest możliwa, rozważ wyłączenie opcji CONFIG_BT_MESH_ACCESS_DELAYABLE_MSG i CONFIG_BT_MESH_ACCESS_DELAYABLE_MSG_CTX_ENABLED, jeśli funkcjonalność nie jest wymagana.
Powiązane podatności
- CVE-2026-115806Krytyczne
Wtyczka Prime Mover – Backup and Migration dla WordPressa jest podatna na wstrzyknięcie obiektu PHP (PHP Object Injection) we wszystkich wersjach do 2.2.1 włącznie. Nieuwierzytelniony atakujący może zapisać spreparowany, zakodowany w base64 serializowany obiekt w polu komentarza, a następnie wtyczka podczas eksportu lub przywracania dekoduje go i przekazuje do unserialize() bez ograniczeń klas. Wtyczka zawiera własny łańcuch POP w bibliotece Freemius, co umożliwia wykorzystanie podatności bez dodatkowych wtyczek.
- CVE-2026-115931Krytyczne
Postiz pozwala zalogowanemu użytkownikowi na żądanie wykonania funkcji na podłączonym kanale, ale backend nie ograniczał, jakie funkcje mogą być wywołane. Użytkownik mógł wywołać wewnętrzne funkcje pomocnicze, w tym jedną czytającą pliki z dysku serwera (np. plik środowiskowy z sekretem do podpisywania sesji, adres bazy danych i poświadczenia usług) oraz inną powodującą zakończenie procesu backendu. Samorejestracja jest domyślnie otwarta, więc nie jest potrzebne istniejące konto ani działanie innego użytkownika.
- CVE-2026-115893Krytyczne
Wasmtime przed wersjami 36.0.19, 48.0.7 i 49.0.4 posiada błąd w kompilatorze Cranelift na architekturze aarch64. Instrukcja br_table z ponad 256 000 celów może zostać błędnie skompilowana, umożliwiając skok do dowolnego kodu i ucieczkę z sandboxa.
- CVE-2026-115889Krytyczne
Wasmtime przed wersjami 36.0.19 i 43.0.0 ma błąd w kompilatorze Cranelift polegający na cichym przepełnieniu indeksów SSA przy kompilacji dużych funkcji Wasm. Może to prowadzić do błędnej kompilacji, pomieszania typów i ucieczki z sandboxa.
- CVE-2026-115812Krytyczne
Podatność path traversal w procesie rozpakowywania archiwum modelu w AWS Multi Model Server w wersji 1.1.11 i wcześniejszych. Zdalny atakujący może wykorzystać spreparowane archiwum modelu do wykonania dowolnego kodu. Projekt jest wycofany z eksploatacji i nie istnieje poprawiona wersja.
- CVE-2026-55486Krytyczne
W Goobi viewer od wersji 25.08 do przed 26.05 punkty końcowe IIIF Auth 2.0 auth/login i auth/token przyjmują parametr origin bez walidacji, który jest następnie osadzany w nagłówku Content-Security-Policy oraz w treści HTML jako argument postMessage. Ponieważ atakujący kontroluje oba wywołania, nieescapowana wartość prowadzi do odbitego XSS.
- CVE-2026-53942Krytyczne
W repozytorium conda/conda przed commitem 9c0f238 występuje podatność typu GitHub Actions Pwn Request w workflow .github/workflows/update.yml. Wyzwalana jest przez komentarze zawierające @conda-bot render lub @conda-bot recreate, co pozwala niezaufanemu PR na dotarcie do renderowania szablonów Jinja2 w kontekście uprzywilejowanego tokenu.
- CVE-2026-46652Krytyczne
W Goobi viewer od wersji 24.03 do przed 26.05 metoda ExternalFilesDownloader.getFilename() pobiera nazwę pliku z nagłówka Content-Disposition i przekazuje ją bezpośrednio do Path.resolve() bez usuwania komponentów katalogu. Złośliwy serwer HTTP może podać ścieżkę absolutną lub sekwencje ../, zapisując treść w dowolnej lokalizacji, co prowadzi do zdalnego wykonania kodu.
- CVE-2026-46651Krytyczne
W Goobi viewer od wersji 24.03 do przed 26.05 punkt końcowy WebSocket DownloadTaskEndpoint (/tasks/download/monitor.socket) w goobi-viewer-core przyjmuje żądania pobierania od nieuwierzytelnionych użytkowników. Podatność została naprawiona w wersji 26.05.
- CVE-2026-53921Krytyczne
W odhcpd (serwer DHCPv6/DHCPv4/RA w OpenWrt) przed wersją 25.12 występuje przepełnienie bufora stosu (512-bajtowy pdbuf) podczas przetwarzania odpowiedzi IA na pojedynczy pakiet DHCPv6 REQUEST z dużą liczbą opcji IA. Dwa niezależne miejsca przepełnienia są osiągalne przez sieć jednym nieuwierzytelnionym pakietem UDP. odhcpd działa jako root, a urządzenia embedded często nie mają canarków stosu ani ASLR, co czyni wykonanie kodu realnym.
Oryginalny opis (angielski, źródło NVD)
The Bluetooth Mesh Access-layer delayable message queue in subsys/bluetooth/mesh/delayable_msg.c shares three intrusive lists (busy_ctx, free_ctx, free_chunks) and one k_work_delayable between two cooperative threads with no synchronization: bt_mesh_delayable_msg_manage() runs on the Bluetooth host RX thread, while delayable_msg_handler() runs on the system workqueue. Both block while the lists are in an intermediate state — the enqueuer in bt_rand(), both in bt_mesh_access_send() — which lets the other context observe torn state. delayable_msg_handler() used the result of sys_slist_get() on busy_ctx without a NULL check, and allocate_delayable_msg_ctx() tested sys_slist_is_empty() and then assumed a separate sys_slist_get() would succeed. Because CONFIG_BT_MESH_ACCESS_DELAYABLE_MSG and CONFIG_BT_MESH_ACCESS_DELAYABLE_MSG_CTX_ENABLED default to y, every model response to a received mesh message is parked on this queue, so the enqueuer runs as a direct consequence of inbound traffic. A peer that can get access-layer messages accepted by a model (it must hold the NetKey and a bound AppKey, so a legitimate or compromised network member) controls the arrival rate, the size of the elicited responses and the destination address, and thereby controls occupancy of the 4-entry context pool and the 40-entry chunk pool. Exhausting the chunk pool forces bt_mesh_delayable_msg_manage() down the purge path, which sends and releases the only queued message and leaves busy_ctx empty while the delayable work item is still armed; if the enqueuer then yields, the handler runs against the empty list. The result is a read-modify-write through a NULL-based pointer (pending_msg->fired_time += 10) at a fixed low address on the system workqueue thread. On typical targets that faults, aborting the system workqueue thread — which stops all workqueue-driven functionality, including the mesh timing machinery — or resetting the node, so the impact is loss of availability of the affected node. The write value and address are fixed and no attacker-controlled length or index is involved, so this is not exploitable for memory corruption or code execution. The same unsynchronized window also allowed one message context to be selected and released by two contexts at once, producing duplicated transmissions, duplicated send-completion callbacks and crossed chunk ownership. The fix serializes every list mutation with a k_spinlock that is never held across a blocking call, makes push_msg_from_delayable_msgs() detach the queue head atomically so a message being sent is on no list, removes the unchecked sys_slist_get() from delayable_msg_handler(), and drops any message that reaches the front of the queue while the stack is suspended or reset.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

