Skip to main content

Drupal Access Code CVE-2025-10928

MEDIUM
Improper Restriction of Excessive Authentication Attempts (CWE-307)
2025-10-30 mlhess@drupal.org
6.3
CVSS 3.1 · Vendor: drupal
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify access-code-protected endpoint
  2. Delivery
    Script automated code submissions
  3. Exploit
    Bypass absent rate-limiting
  4. Execution
    Guess valid access code
  5. Impact
    Obtain unauthorized gated access

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Brute-force prevention, rate limiting
Exploitation Conditions

Exploitation requires reaching the Drupal 'Access code' module's authentication/code-entry interface on an instance running a version before 2.0.5; the module performs no throttling, lockout, or delay on repeated attempts, enabling automated guessing. Effectiveness is LIMITED by the entropy of the configured access codes (long/random codes resist guessing even without rate-limiting) and by the vendor-assigned PR:L, which implies some prior privilege or session may be needed to reach the form - though the description does not confirm an authentication gate. Impact is confined to the low-sensitivity access the code protects (C:L/I:L/A:L), not full site compromise.

Impact

This is a genuine but low-priority weakness. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L = 6.3 Medium) reflects an automatable network-based attack, but every impact metric is only Low, consistent with CWE-307 (missing brute-force throttling) rather than a direct code-execution or full-takeover flaw. EPSS is low at 0.24% (13th percentile), there is no CISA KEV listing, and no public exploit code was identified, so all exploitation signals point to low near-term risk. The signals are internally consistent - nothing here suggests an under-rated threat. One caveat: the vendor rated PR:L (authenticated), yet brute-forcing an access-code gate is typically reachable pre-authentication; the privilege prerequisite should be verified against the actual module deployment. Net assessment: real but modest issue, patch-when-convenient, not an emergency.

Exploit ScenarioDerived

A remote attacker repeatedly submits guesses to the Drupal 'Access code' module's entry form, which lacks any attempt-limiting or lockout, until a valid code is found and gated content or functionality is unlocked. Because the attack is network-based with low complexity (AV:N/AC:L), it is trivially scriptable against weak or short codes. No public proof-of-concept exploit has been identified at the time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 01, 2026

The Drupal Access Code module (versions before 2.0.5) lacks rate limiting on its access code entry form, allowing brute-force guessing of access codes. While the vendor's CVSS vector indicates some authentication is required (PR:L), our independent analysis rates it as unauthenticated (PR:N) with limited impact-only the low-sensitivity access protected by the code-not full site compromise. No public exploit code is identified, and EPSS is low (0.24%, 13th percentile).

RemediationAI

Upgrade the Drupal Access Code module to version 2.0.5 or later, as provided by the vendor patch at https://www.drupal.org/sa-contrib-2025-108. If immediate upgrade is not possible, implement compensating controls: enforce rate limiting on requests to the module's code-entry form endpoint using a reverse proxy (e.g., Nginx limit_req) or a web application firewall rule; this may affect legitimate users who make repeated attempts, so tune thresholds carefully. Additionally, ensure that access codes are long and randomly generated to increase entropy, making brute-force attempts infeasible even without rate limiting. If the module is not essential, consider disabling or uninstalling it to eliminate the attack surface, though this removes the access-control functionality.

Affected Packages

composer drupal/access_code fix: 2.0.5

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in composer

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The Drupal Access Code module is a contributed module for the Drupal content management system that allows site administrators to restrict access to content by requiring users to enter a pre-shared code. The vulnerability is an instance of CWE-307 (Improper Restriction of Excessive Authentication Attempts): the module does not implement throttling, account lockout, or delay mechanisms on repeated code-entry attempts. This allows an attacker to automate guessing of the access code. The affected package is identified by CPE cpe:2.3:a:access_code_project:access_code:*:*:*:*:*:drupal:*:*, covering versions from 0.0.0 before 2.0.5. The root cause is the absence of rate-limiting logic in the module's form submission handling. Per our independent assessment, exploitation requires reaching the module's authentication/code-entry interface; the vendor's CVSS vector includes PR:L (authenticated), but our assessment uses PR:N (unauthenticated). The impact is confined to the low-sensitivity access the code protects, not full site compromise.

Know when Access Code gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (drupal) PRIMARY 6.3 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L
vuln.today AI 5.3 MEDIUM

Brute-forcing an access-code gate is network-reachable, low-complexity and typically pre-auth (PR:N vs vendor PR:L), yielding low confidentiality access to gated content with no clear integrity/availability impact.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (drupal).

CVSS VectorVendor: drupal

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
Low

DescriptionCVE.org

Improper Restriction of Excessive Authentication Attempts vulnerability in Drupal Access code allows Brute Force.This issue affects Access code: from 0.0.0 before 2.0.5.

Threat Intelligence Overview

EPSS Score
0.2%
Top 87% exploitable
Prevalence
Low
niche third-party Drupal contrib module, not core, limited install base
Data Quality
4 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

32
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Affected Products (CPE)CVE.org

cpe:2.3:a:access_code_project:access_code:*:*:*:*:*:drupal:*:*

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy