Skip to main content

Aptrs CVE-2026-34406

| EUVDEUVD-2026-17671 CRITICAL
Improperly Controlled Modification of Dynamically-Determined Object Attributes (CWE-915)
2026-03-31 GitHub_M
9.4
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as low-privilege user
  2. Delivery
    POST crafted JSON to /api/auth/edituser/
  3. Exploit
    Include is_superuser: true in request body
  4. Execution
    Django serializer accepts writable field
  5. Impact
    Account escalated to superuser

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V4 - API and Web Service Object attribute protection
Exploitation Conditions

APTRS versions prior to 2.0.1. Requires authenticated user access to the POST /api/auth/edituser/<pk> endpoint. Attacker with any valid account can escalate their own or any other user account to superuser by submitting is_superuser: true in request body.

Impact

This vulnerability presents critical real-world risk despite the lack of a CVSS vector in available data. Attack vector is NETWORK (POST request to an HTTP endpoint), and attack complexity is LOW (no special conditions required). The privilege escalation is immediate and unrestricted-any user, including unauthenticated users if the endpoint is accessible without authentication, can grant themselves full superuser privileges. The absence of CVSS data is offset by clear exploitation mechanics: the vulnerability is a logic flaw in application code, not a complex cryptographic or memory-safety issue. No EPSS probability is available, but the trivial nature of the exploit (adding one JSON field to a standard HTTP request) strongly suggests high exploitation probability. The fact that a patch was released in version 2.0.1 confirms vendor validation of the severity. SSVC assessment: Exploitation status is UNCONTESTED (code flaw with no mitigation bypass required), automatable via any HTTP client, and technical impact is TOTAL (complete administrative compromise of the application).

Exploit ScenarioDerived

An attacker with any user account on an APTRS instance (or without authentication if the endpoint is publicly accessible) sends a POST request to /api/auth/edituser/<user_pk> with JSON body containing is_superuser: true. The CustomUserSerializer accepts the field, the edit_user view does not validate it, and the superuser flag is immediately set on the target account. The attacker then gains full administrative access to the application without requiring re-authentication or additional privilege escalation steps. Attack requires only a basic HTTP client and knowledge of the endpoint structure.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
Patch available 0.1% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Mar 31, 2026

Privilege escalation in APTRS (Automated Penetration Testing Reporting System) prior to version 2.0.1 allows any user to escalate their own account or modify any other user account to superuser status by submitting a crafted POST request to /api/auth/edituser/<pk> with an is_superuser field set to true. The CustomUserSerializer fails to mark is_superuser as read-only despite including it in serializer fields, and the edit_user view lacks validation to prevent non-superusers from modifying this critical field. No public exploit code or active exploitation has been identified at time of analysis, but the vulnerability is trivial to exploit given basic HTTP client access to the endpoint.

RemediationAI

Upgrade APTRS to version 2.0.1 or later, which includes a fix committed at https://github.com/APTRS/APTRS/commit/d1f1b3a5d1953082af8e075712ca29742e900d56. The patch adds is_superuser to the read_only_fields list in CustomUserSerializer and implements view-level permission validation to prevent non-superusers from modifying the is_superuser attribute on any user account. Immediate patched version 2.0.1 is available at https://github.com/APTRS/APTRS/releases/tag/2.0.1. Until patching is completed, restrict network access to the /api/auth/edituser/ endpoint using a web application firewall or reverse proxy to limit reach to authenticated users only, though this does not eliminate the underlying privilege escalation risk.

Affected VersionsENISA

APTRS < 2.0.1

Affected Packages

euvd aptrs fix: 2.0.1

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

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

Technical ContextAI · show details

APTRS is a Django REST Framework-based application using a CustomUserSerializer to handle user account modifications. The vulnerability stems from improper serializer configuration in Django REST Framework, specifically the Django ORM permission model. CWE-915 (Improperly Controlled Modification of Dynamically-Determined Object Attributes) describes the root cause: the serializer explicitly lists is_superuser in its fields but fails to designate it as read_only_fields, rendering it writable by any authenticated or unauthenticated user who can reach the endpoint. The Django User model's is_superuser field is typically a boolean flag that grants unrestricted administrative access to the application. The edit_user view (POST /api/auth/edituser/<pk>) processes serializer validation without additional permission checks specific to the is_superuser attribute, allowing direct attribute modification via REST API.

Know when Aptrs 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 (GitHub_M) PRIMARY 9.4 CRITICAL
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H

Primary rating from Vendor (GitHub_M) · only source for this CVE.

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
High
Subsequent system: Integrity
High
Subsequent system: Availability
High

Lifecycle Timeline

3
Analysis Updated
Apr 16, 2026 - 05:47 EUVD-patch-fix
executive summary
Patch available
Apr 16, 2026 - 05:29 EUVD
2.0.1
CVE Published
Mar 31, 2026 - 21:18 nvd
CRITICAL 9.4

DescriptionCVE.org

APTRS (Automated Penetration Testing Reporting System) is a Python and Django-based automated reporting tool designed for penetration testers and security organizations. Prior to version 2.0.1, the edit_user endpoint (POST /api/auth/edituser/<pk>) allows Any user who can reach that endpoint and submit crafted permission to escalate their own account (or any other account) to superuser by including "is_superuser": true in the request body. The root cause is that CustomUserSerializer explicitly includes is_superuser in its fields list but omits it from read_only_fields, making it a writable field. The edit_user view performs no additional validation to prevent non-superusers from modifying this field. Once is_superuser is set to true, gaining unrestricted access to all application functionality without requiring re-authentication. This issue has been patched in version 2.0.1.

Executive ViewAI

Why It Matters

APTRS (Automated Penetration Testing Reporting System) versions prior to 2.0.1 contain a critical privilege escalation flaw that allows any user to grant themselves or others superuser access through a simple API request, potentially compromising the entire penetration testing workflow and sensitive security assessment data. This vulnerability requires immediate patching to prevent unauthorized administrative access to your security testing infrastructure.

Business Impact: Severe
Compensating Controls

Apply vendor patch. If immediate patching is impossible: implement network-level access controls restricting /api/auth/edituser/ endpoint to superuser IP ranges only; monitor API logs for POST requests to this endpoint containing is_superuser field modifications; disable the endpoint entirely if not actively required for operations pending upgrade to 2.0.1.

Threat Intelligence Overview

EPSS Score
0.1%
Top 73% exploitable
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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 CRITICAL
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity
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
Out-of-Cycle
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
Very High
Technical Impact
Total

Priority Score

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

Attack Technique

Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.

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