CVE-2026-89507
HighCVSS 7.8Exploitation Probability (EPSS)
Low risk2th percentile - higher than 2% of all known CVEs
Summary
A vulnerability in the Linux kernel RDMA/ucma module: ucma_write_cm_event() does not take the handler lock. While ucma_migrate_id() moves a context to another file, ctx->file can be swapped mid-sequence, causing list corruption, a permanently held mutex, and a process stuck in D state. The flaw is reachable by an unprivileged user via /dev/infiniband/rdma_cm.
Risk Assessment
An unprivileged user can trigger kernel memory corruption and thread hangs, leading to denial of service (DoS) or potential privilege escalation. Systems with RDMA/ucma enabled are affected even without a physical RDMA device.
Recommendation
Update the Linux kernel to a version containing the fix that adds the handler lock in ucma_write_cm_event(). If updating is not possible, consider restricting access to /dev/infiniband/rdma_cm or disabling the RDMA/ucma module if unused.
Related vulnerabilities
- CVE-2026-124060Critical
A vulnerability was detected in TOTOLINK CA300-PoE version 6.2c.884 in the UploadCustomModule function of the file /cgi-bin/cstecgi.cgi. Manipulation of the File argument results in a buffer overflow. The attack can be launched remotely, and the exploit is now public and may be used.
- CVE-2026-124059Critical
A security vulnerability has been detected in TOTOLINK CA300-PoE 6.2c.884. The function setWiFiWdsAddConfig in the file /cgi-bin/cstecgi.cgi is affected, where manipulation of the ApCliKeyStr argument leads to a buffer overflow. The attack may be initiated remotely, and the exploit has been disclosed publicly and may be used.
- CVE-2026-124058Critical
A weakness has been identified in TOTOLINK CA300-PoE 6.2c.884. The function setWiFiRepeaterConfig in the file /cgi-bin/cstecgi.cgi is affected, where manipulation of the ApCliKeyStr argument can lead to a buffer overflow. The attack can be launched remotely, and the exploit has been made available to the public and could be used for attacks.
- CVE-2026-124057Critical
A security flaw has been discovered in TOTOLINK CA300-PoE 6.2c.884. This impacts the function setWiFiMultipleConfig of the file /cgi-bin/cstecgi.cgi. Manipulation of the argument Key1Str1 results in a buffer overflow. The attack can be initiated remotely. The exploit has been released to the public and may be used for attacks.
- CVE-2026-123966Critical
A vulnerability was found in Tenda AC19 version 16.03.10.07 in the saveParentControlInfo function of the /goform/saveParentControlInfo file. Manipulating the deviceId argument causes a heap-based buffer overflow. The attack can be carried out remotely, and the exploit has been publicly disclosed.
- CVE-2026-120984Critical
A flaw was found in the Keycloak server's client management component. When a client is created or imported with authorization services enabled, the system fails to properly clear an internal session attribute used during setup. An authenticated attacker with client management permissions can bypass security controls and upload a malicious JavaScript policy that executes on the server.
- CVE-2026-122041Critical
The Checkout Field Editor for WooCommerce (Pro) plugin for WordPress up to and including 3.8.0 is vulnerable to unauthorized deletion of arbitrary attachments due to a missing capability/ownership check in the ajax_remove_uploaded() function. The handler is registered for both wp_ajax and wp_ajax_nopriv and gated solely by the 'file_handling_nonce' nonce, which is exposed in the public checkout page markup.
- CVE-2026-119075Critical
The Registration Form for WooCommerce plugin for WordPress is vulnerable to privilege escalation due to a missing allow-list check in FormHandler::validate_checkout_fields() in versions up to and including 1.1.4. The checkout registration path stores the raw $_POST['user_roles'] value without validation, and add_user_data() injects it as the new account's role.
- CVE-2026-118066Critical
The LatePoint plugin for WordPress is vulnerable to authentication bypass via account takeover in versions up to and including 5.7.6. OsModel::build_conditions_query() compares WHERE-clause values against literal strings 'IS NULL' and 'IS NOT NULL' and concatenates a match directly into SQL without binding, allowing unauthenticated attackers to send params[password_reset_token]=IS NOT NULL to the public customer_cabinet__change_password AJAX route and overwrite the lowest-id customer's password.
- CVE-2026-104014Critical
The Naimur Email OTP Verification for WooCommerce plugin is vulnerable to authentication bypass in versions up to and including 2.1.0. The password-reset finalization endpoint authorizes the reset solely by the presence of a database row marking an email as 'VERIFIED', with no timestamp check, session binding, or per-reset token, and the scheduled cleanup cron has no handler so it never runs.
Original NVD description (English source)
In the Linux kernel, the following vulnerability has been resolved: RDMA/ucma: Lock the handler in ucma_write_cm_event() ctx->file may only be changed under the handler lock and the xa_lock, which is what stops uevents being queued for a ctx while ucma_migrate_id() moves it to another file. The CM core takes that lock before invoking ucma_event_handler(), but the write() paths that queue uevents themselves do not. ucma_write_cm_event() re-reads ctx->file for each of its four dereferences, so ucma_migrate_id() can swap it mid-sequence: mutex_lock(&ctx->file->mut); /* file A */ list_add_tail(&uevent->list, &ctx->file->event_list); /* file B */ mutex_unlock(&ctx->file->mut); /* file B */ wake_up_interruptible(&ctx->file->poll_wait); /* file B */ The window is the mutex_lock() itself: the writer sleeps in it while the migration reassigns ctx->file. The list_add_tail() then runs on file B's event_list holding only file A's mutex: list_add corruption. prev->next should be next (ffff888101320f30), but was ffff88814a08c418. (prev=ffff88814a075c18). kernel BUG at lib/list_debug.c:32! Call Trace: ucma_write_cm_event+0x36e/0x5e0 and file A's mut is left held forever, wedging its next writer in D state. The uevent is also stranded on a list ucma_cleanup_ctx_events() will not walk, so it outlives its context. /dev/infiniband/rdma_cm is 0666 and no RDMA device is involved, so an unprivileged user reaches all of this. Take the handler lock, as ucma_cleanup_mc_events() does; ctx->cm_id is pinned by the ucma_get_ctx() reference.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

