CVE-2026-99202
Niskie ryzyko· EPSS 6%Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 6 - wyżej niż 6% wszystkich znanych CVE
Streszczenie
W jądrze Linux w podsystemie libsas (SCSI) występuje zakleszczenie podczas wznawiania kontrolera HBA (HA resume). Funkcja smp_execute_task_sg() wywołuje pm_runtime_get_sync(), które czeka na zakończenie trwającego wznawiania, podczas gdy ścieżka wznawiania czeka w sas_drain_work() na zakończenie tego samego polecenia SMP — do zakleszczenia dochodzi, gdy do expandera podłączony jest dysk SATA. Problem naprawiono, zastępując parę get_sync()/put_sync() wywołaniami pm_runtime_get_noresume()/pm_runtime_put() oraz dodając pm_runtime_resume_and_get() w ścieżce BSG.
Ocena ryzyka
Zakleszczenie może spowodować zawieszenie wznawiania kontrolera i niedostępność dysków podłączonych przez expander SATA, co prowadzi do utraty dostępu do danych i wymaga restartu systemu. Występuje tylko w określonej konfiguracji sprzętowej (dysk SATA za expanderem) podczas operacji HA resume.
Rekomendacja
Zaktualizuj jądro Linux do wersji zawierającej poprawkę dla CVE-2026-99202. Jeśli aktualizacja nie jest możliwa, unikaj operacji HA resume na systemach z dyskami SATA podłączonymi przez expander.
Powiązane podatności
- CVE-2026-124060Krytyczne
W urządzeniu TOTOLINK CA300-PoE w wersji 6.2c.884 wykryto podatność w funkcji UploadCustomModule w pliku /cgi-bin/cstecgi.cgi. Manipulacja argumentem File prowadzi do przepełnienia bufora. Atak można przeprowadzić zdalnie, a exploit jest publicznie dostępny i może być wykorzystany.
- CVE-2026-124059Krytyczne
Wykryto podatność bezpieczeństwa w urządzeniu TOTOLINK CA300-PoE w wersji 6.2c.884. Podatna jest funkcja setWiFiWdsAddConfig w pliku /cgi-bin/cstecgi.cgi, gdzie manipulacja argumentem ApCliKeyStr prowadzi do przepełnienia bufora. Atak można zainicjować zdalnie, a exploit został publicznie ujawniony i może być wykorzystany.
- CVE-2026-124058Krytyczne
Zidentyfikowano słabość w urządzeniu TOTOLINK CA300-PoE w wersji 6.2c.884. Podatna jest funkcja setWiFiRepeaterConfig w pliku /cgi-bin/cstecgi.cgi, gdzie manipulacja argumentem ApCliKeyStr może prowadzić do przepełnienia bufora. Atak można przeprowadzić zdalnie, a exploit został udostępniony publicznie i może być wykorzystany w atakach.
- CVE-2026-124057Krytyczne
W TOTOLINK CA300-PoE 6.2c.884 odkryto lukę w zabezpieczeniach funkcji setWiFiMultipleConfig w pliku /cgi-bin/cstecgi.cgi. Manipulacja argumentem Key1Str1 prowadzi do przepełnienia bufora, a atak można zainicjować zdalnie. Exploit został publicznie udostępniony i może być wykorzystany.
- CVE-2026-123966Krytyczne
W urządzeniu Tenda AC19 w wersji 16.03.10.07 wykryto podatność w funkcji saveParentControlInfo w pliku /goform/saveParentControlInfo. Manipulacja argumentem deviceId powoduje przepełnienie bufora na stercie. Atak można przeprowadzić zdalnie, a exploit został publicznie ujawniony.
- CVE-2026-120984Krytyczne
W komponencie zarządzania klientami serwera Keycloak wykryto błąd. Podczas tworzenia lub importu klienta z włączonymi usługami autoryzacji system nie czyści prawidłowo atrybutu sesji używanego podczas konfiguracji. Uwierzytelniony atakujący z uprawnieniami do zarządzania klientami może ominąć mechanizmy bezpieczeństwa i przesłać złośliwą politykę JavaScript, która jest wykonywana na serwerze.
- CVE-2026-122041Krytyczne
Wtyczka Checkout Field Editor for WooCommerce (Pro) dla WordPressa w wersjach do 3.8.0 włącznie jest podatna na nieautoryzowane usuwanie dowolnych załączników z powodu braku sprawdzenia uprawnień i własności w funkcji ajax_remove_uploaded(). Funkcja jest zarejestrowana dla wp_ajax i wp_ajax_nopriv i chroniona wyłącznie nonce 'file_handling_nonce', który jest ujawniany w publicznym kodzie strony checkoutu.
- CVE-2026-119075Krytyczne
Wtyczka Registration Form for WooCommerce dla WordPressa w wersjach do 1.1.4 włącznie jest podatna na eskalację uprawnień z powodu braku sprawdzenia listy dozwolonych ról w funkcji FormHandler::validate_checkout_fields(). Ścieżka rejestracji podczas checkoutu zapisuje surową wartość $_POST['user_roles'] bez walidacji, a add_user_data() wstrzykuje ją jako rolę nowego konta.
- CVE-2026-118066Krytyczne
Wtyczka LatePoint dla WordPressa w wersjach do 5.7.6 włącznie jest podatna na obejście uwierzytelniania i przejęcie konta. Funkcja OsModel::build_conditions_query() porównuje wartości klauzuli WHERE z literałami 'IS NULL' i 'IS NOT NULL' i konkatenuje dopasowanie bezpośrednio do SQL bez parametryzacji, co pozwala nieuwierzytelnionemu atakującemu wysłać params[password_reset_token]=IS NOT NULL do publicznej trasy AJAX customer_cabinet__change_password i zmienić hasło klienta o najniższym ID.
- CVE-2026-104014Krytyczne
Wtyczka Naimur Email OTP Verification for WooCommerce w wersjach do 2.1.0 włącznie jest podatna na obejście uwierzytelniania. Endpoint finalizacji resetu hasła autoryzuje reset wyłącznie na podstawie obecności wiersza w bazie oznaczającego e-mail jako 'VERIFIED', bez sprawdzania czasu, powiązania z sesją ani tokenu, a zaplanowane zadanie czyszczenia nie ma zarejestrowanego handlera, więc nigdy nie działa.
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: scsi: libsas: Fix SMP IO deadlock during HA resume smp_execute_task_sg() calls pm_runtime_get_sync() on the host before issuing an SMP command. When that command is itself issued from the HA resume path, the get_sync() deadlocks: it waits for the ongoing resume (the device is RPM_RESUMING), while the resume is blocked in sas_drain_work() waiting for that same SMP IO to complete. The deadlock needs an expander-attached SATA disk. During sas_resume_ha() -> sas_drain_work(), DISCE_RESUME -> sas_resume_sata() -> ata_sas_port_resume() requests ATA_EH_RESET, and the hard reset for such a disk is done via SMP PHY CONTROL (sas_ata_hard_reset() -> sas_phy_reset() -> sas_smp_phy_control() -> smp_execute_task_sg()). Direct-attached SATA resets through lldd_control_phy() and SSP devices use TMFs, so neither hits this. Replace the get_sync()/put_sync() pair with pm_runtime_get_noresume()/pm_runtime_put(). smp_execute_task_sg() only needs to hold off autosuspend while the SMP is in flight, and it must not try to resume the host: a sync resume issued from the HA resume path itself is what deadlocks, and by the time sas_resume_ha() runs, hw_init has already reinitialized the hardware, so the device is accessible without one. The usage reference is still required. Discovery work normally runs inside an event worker's PM reference, taken at sas_notify_port_event() notify time and held until the handler has flushed the disco queue. sas_rediscover_ex_phy() however requeues DISCE_REVALIDATE_DOMAIN from within the revalidation worker itself, and flush_workqueue() does not wait for work items queued during execution, so that chained revalidation runs with no outer PM reference - without the get_noresume(), its SMP could race autosuspend. For the BSG path, sas_smp_handler() is the only caller which may find the host autosuspended: expander SMP requests do not go through any SCSI device request queue, so nothing else in that path holds the host awake. Resume it there with pm_runtime_resume_and_get() and check the result.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

