Skip to main content

Contact Tracing System EUVDEUVD-2026-98313

| CVE-2026-108973 MEDIUM
Unrestricted Upload of File with Dangerous Type (CWE-434)
2026-10-13 VulDB GHSA-wqfp-rm4r-2hj4
5.5
CVSS 4.0 · Vendor: VulDB
View

Attack ChainAIDerived

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

  1. Access
    Reach /classes/Users.php?f=save endpoint
  2. Delivery
    Send crafted multipart upload via img/id
  3. Exploit
    move_uploaded_file writes PHP webshell
  4. Execution
    Request uploaded file to execute code
  5. Impact
    Gain server-side command execution

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V5 - File Handling File type validation, storage isolation
MITRE ATT&CK

2 techniques across 2 tactics: Command and Control, Persistence

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation targets the save handler at /classes/Users.php?f=save, specifically the img/id file parameter passed to move_uploaded_file without extension or MIME/content validation, permitting upload of executable PHP into a web-reachable path. Per the provider CVSS vector (PR:N/UI:N) no authentication or user interaction is required, implying the upload path is reachable pre-auth against a default install of SourceCodester Contact Tracing System 1.0; however the endpoint name (Users save) suggests it may be intended for an authenticated admin context, so the pre-auth assumption should be verified in source. Limiting factors: successful code execution requires the upload directory to be web-accessible and PHP execution enabled there, and only version 1.0 of this specific product is affected.

Impact

Signals are moderately strong but partially conflicting. The provider CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) describes a remotely reachable, low-complexity, unauthenticated flaw, yet rates impact only Low across VC/VI/VA (score 6.9) - unusual for CWE-434 unrestricted upload, which typically yields webshell-based remote code execution and therefore High impact. The 'E:P' exploit-maturity metric plus the VulDB POC flag confirm publicly available exploit code exists, and one reference (tracexlabs) explicitly characterizes this as pre-auth RCE, further suggesting the official Low impact rating understates real severity. No EPSS score and no CISA KEV entry were provided, so active exploitation cannot be asserted - this is POC-available, not confirmed in-the-wild. Net: the vulnerability class and low attack barrier make it a genuine priority for anyone actually running this product, but the product's near-zero production footprint caps aggregate real-world risk. The chief unresolved conflict is impact magnitude (provider Low vs. RCE-class expectation) and whether the save endpoint is truly pre-auth as the CVSS PR:N and tracexlabs claim imply - verify against source.

Exploit ScenarioDerived

A remote attacker sends a crafted multipart POST to /classes/Users.php?f=save, abusing the img/id parameter so move_uploaded_file writes a PHP file into a web-accessible directory with no extension or content validation. The attacker then requests the uploaded file to execute arbitrary code (webshell) on the server. Public exploit code is available and a referenced write-up describes this as pre-authentication RCE.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.3% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 13, 2026

Unrestricted file upload in SourceCodester Contact Tracing System 1.0 allows remote attackers to send a crafted file through the save handler at /classes/Users.php?f=save so that move_uploaded_file places attacker-controlled content into a web-accessible location, potentially yielding PHP code execution if the upload directory is executable. The provided CVSS 4.0 vector is CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P, indicating no privileges or user interaction in the assessed scenario, though the endpoint's Users save context warrants source-level confirmation of pre-auth reachability, and impact is limited to version 1.0. Publicly available exploit code exists, but the supplied data does not confirm CISA KEV active exploitation.

RemediationAI

No vendor-released patch was identified in the provided intelligence for CVE-2026-108973. Until a fixed version is available, restrict access to the vulnerable /classes/Users.php?f=save endpoint by requiring authentication, adding an IP allowlist, or blocking external POST requests; this will break the legitimate profile or image upload workflow but blocks the attack path. Disable PHP execution in the upload directory (for Apache use php_admin_flag engine off or a FilesMatch deny for .php files; for nginx use a location block returning 403 for .php files in that path), understanding that any legitimate PHP in that directory will stop working. Additionally, enforce server-side upload validation with an extension allowlist, MIME and content inspection, randomized filenames, and storage outside the web root; this requires code changes and may affect file-format compatibility. Monitor web logs for POST requests to /classes/Users.php?f=save with PHP content and consult https://vuldb.com/vuln/416792 and https://www.sourcecodester.com/ for vendor updates.

Affected VersionsENISA

Contact Tracing System 1.0

Affected Packages

euvd contact_tracing_system no fix

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

CVE-2026-108973 is a CWE-434 unrestricted upload in the PHP-based SourceCodester Contact Tracing System 1.0. The vulnerable code path is the save function in /classes/Users.php, where the img or id parameter reaches move_uploaded_file without adequate extension, MIME-type, or content validation. Because PHP executes uploaded files if they are placed in a web-accessible directory and retain a .php extension, an attacker who can reach this handler can upload a malicious PHP script. The CPE cpe:2.3:a:sourcecodester:contact_tracing_system:*:*:*:*:*:*:*:* uses a wildcard version, but the vulnerability report and independent assessment specifically identify version 1.0. The CVSS 4.0 vector includes E:P, reflecting the publicly available exploit code, and the PHP plus file-upload tags confirm the attack surface.

Know when Contact Tracing System 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 (VulDB) PRIMARY 5.5 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:P
vuln.today AI 9.8 CRITICAL

Remote unauthenticated upload (AV:N/AC:L/PR:N/UI:N) of an executable file yields webshell RCE, giving full C/I/A:H; scope unchanged as code runs within the app context.

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

Primary rating from Vendor (VulDB).

CVSS VectorVendor: VulDB

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

Lifecycle Timeline

2
CVSS changed
Oct 13, 2026 - 07:22 NVD
6.9 (MEDIUM) 5.5 (MEDIUM)
CVE Published
Oct 13, 2026 - 06:15 cve.org
MEDIUM 6.9

DescriptionCVE.org

A vulnerability was determined in SourceCodester Contact Tracing System 1.0. Affected by this issue is the function move_uploaded_file of the file /classes/Users.php?f=save. This manipulation of the argument img/id causes unrestricted upload. The attack can be initiated remotely. The exploit has been publicly disclosed and may be utilized.

Threat Intelligence Overview

EPSS Score
0.3%
Top 80% exploitable
Prevalence
Rare
free SourceCodester PHP demo app, negligible production deployment
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High

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 Yes
EPSS 0.3%
Patch available No
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
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

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

Attack Technique

Malicious file upload attacks exploit insufficient validation when web applications accept user-provided files.

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