---
id: CVE-2026-119096
title: >-
  Uncanny Toolkit for LearnDash <= 3.8.2 - Unauthenticated Authentication Bypass
  via 'email' Parameter
summary: >-
  The Uncanny Toolkit for LearnDash plugin for WordPress is vulnerable to
  Authentication Bypass in versions up to, and including, 3.8.2 via the `email`
  parameter of the `uo_login_action()` function. This is due to a
  parser-differential fla…
severity: critical
cvss: 9.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cvssSource: cna
cwe:
  - CWE-287
vendor: uncannyowl
product: Uncanny Toolkit for LearnDash
affected:
  - uncanny_toolkit_for_learndash <= 3.8.2
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: total
  timestamp: '2026-11-02T17:14:10.579640Z'
published: '2026-10-31'
updated: '2026-11-02'
sourceUpdated: '2026-11-02T17:54:58.248Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-119096'
references:
  - url: >-
      https://www.wordfence.com/threat-intel/vulnerabilities/id/592b61a1-9ac9-4817-b154-1e39e50d8010?source=cve
  - url: >-
      https://plugins.trac.wordpress.org/browser/uncanny-learndash-toolkit/tags/3.8.2/src/classes/frontend-login-plus.php#L3559
  - url: >-
      https://plugins.trac.wordpress.org/browser/uncanny-learndash-toolkit/tags/3.8.2/src/classes/frontend-login-plus.php#L3527
  - url: >-
      https://plugins.trac.wordpress.org/browser/uncanny-learndash-toolkit/tags/3.8.2/src/classes/frontend-login-plus.php#L3446
  - url: >-
      https://plugins.trac.wordpress.org/browser/uncanny-learndash-toolkit/tags/3.8.2/src/classes/frontend-login-plus.php#L3357
  - url: >-
      https://plugins.trac.wordpress.org/changeset/3773997/uncanny-learndash-toolkit/trunk/src/classes/frontend-login-plus.php
tags:
  - cve.org
epss: 0.00463
epssPercentile: 0.40322
ingestedAt: '2026-11-05T19:30:42.756Z'
---

## Overview

The Uncanny Toolkit for LearnDash plugin for WordPress is vulnerable to Authentication Bypass in versions up to, and including, 3.8.2 via the `email` parameter of the `uo_login_action()` function. This is due to a parser-differential flaw in which the plugin's account-verification gate resolves the submitted `email` value using the raw, unsanitized string passed to `get_user_by()`, while the subsequent `wp_signon()` call relies on WordPress core's internal `sanitize_user()` to strip appended junk characters — causing the gate lookup to fail and be skipped entirely while the real account is still resolved and authenticated. This makes it possible for unauthenticated attackers to log in to unverified or administrator-suspended accounts whose credentials they already possess, obtaining a valid `wordpress_logged_in` session cookie and defeating the plugin's account-approval and account-suspension controls. The nonce required to reach the handler is freely obtainable in the same request from the unauthenticated `ult-refresh-nonce` endpoint, making exploitation trivial for any attacker with network access to the site and knowledge of a target account's credentials.

## Affected

- `uncanny_toolkit_for_learndash <= 3.8.2`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
