Skip to main content

Safing Portmaster EUVDEUVD-2026-102955

| CVE-2026-111664 MEDIUM
Missing Authentication for Critical Function (CWE-306)
2026-10-16 VulnCheck GHSA-6952-c35h-6rff
4.8
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Run unprivileged local process on host
  2. Delivery
    POST attacker-controlled index URL to /api/v1/updates/from-url
  3. Exploit
    Missing authorization accepts request, bypasses version/auto-apply checks
  4. Execution
    Fetch and install older Safing-signed release
  5. Impact
    Downgraded Portmaster reintroduces previously fixed vulnerabilities

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication required for critical functions
MITRE ATT&CK

1 technique across 1 tactic: Initial Access

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

Exploitation Conditions

Requires the attacker to already be able to execute an unprivileged local process on a host running Safing Portmaster before 2.2.5, and the local API (default on the machine) must be reachable so the process can issue a POST to /api/v1/updates/from-url - the endpoint performs no authorization (api.PermitAnyone), so no credentials or user interaction are needed once local code execution exists. Exploitation is LIMITED by three factors: it cannot be performed remotely (local access is a hard prerequisite), the installed payload must be a legitimately Safing-signed release so only genuine older versions can be forced (not arbitrary attacker binaries), and the value to an attacker is indirect - reintroducing a previously patched vulnerability rather than immediate compromise. Fixed in 2.2.5 by removing the endpoint entirely.

Impact

This is a genuine but modest-severity local vulnerability, not a top-tier priority. The input CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:L/UI:N) and the description agree and are internally consistent: exploitation requires an already-present unprivileged local process, so this is a local privilege/integrity issue rather than a remotely reachable flaw - AV:L and the 'local processes' wording do not conflict. Impact is limited to VI:L/VA:L with VC:N, reflecting that an attacker cannot read data or run arbitrary code directly; they can only force a downgrade to an older but still Safing-signed release, thereby reintroducing previously patched vulnerabilities (a staging primitive rather than direct compromise). No EPSS score, no CISA KEV listing, and no public exploit code are present in the input, so there is no public exploit identified at time of analysis and no evidence of active exploitation. The CWE-306 missing-authorization root cause is confirmed by the patch diff, which simply removes the api.PermitAnyone-registered updates/from-url endpoint and its UpdateFromURL handler. Net: a real, patch-confirmed weakness worth remediating, but the local-access prerequisite, lack of confidentiality impact, and signed-binary constraint keep real-world risk low-to-moderate.

Exploit ScenarioDerived

An attacker who already has the ability to run an ordinary unprivileged process on a machine running Portmaster (e.g. via malware, a compromised user account, or a hostile local app) sends a POST request to the local http://api endpoint /api/v1/updates/from-url supplying an attacker-controlled index URL. Because the endpoint is registered with api.PermitAnyone, no authorization check occurs, and the supplied URL bypasses version checks and auto-apply settings, forcing installation of an older Safing-signed release. No public exploit code is identified at time of analysis, but the source-level commit diff makes the vulnerable endpoint and trigger trivially reproducible.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
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 – Oct 16, 2026

Safing Portmaster before 2.2.5 exposes a local update endpoint, POST /api/v1/updates/from-url, that is registered with api.PermitAnyone and therefore performs no authorization check, allowing any unprivileged local process to point the updater at an attacker-controlled index URL and bypass both version checks and auto-apply settings. The result is a forced downgrade that can only install releases legitimately signed by Safing, so the practical impact is the reintroduction of previously patched vulnerabilities rather than execution of arbitrary attacker-supplied code, and exploitation requires low-privileged local access (CVSS PR:L) with no user interaction and cannot be performed remotely. Fixed in 2.2.5 by removing the endpoint entirely; no public exploit identified at time of analysis.

RemediationAI

Vendor-released patch: Safing Portmaster 2.2.5, obtainable from the official release page at https://github.com/safing/portmaster/releases/tag/v2.2.5; the upstream fix (commit https://github.com/safing/portmaster/commit/f943e1eaf98f45bc48490bf288e1d63c04929ae0) removes the updates/from-url endpoint and the UpdateFromURL function outright, so there is no configuration flag or permission setting that can re-enable it and users who relied on the manual from-URL install feature lose that capability - a deliberate trade-off considered acceptable because the route had no legitimate authorization model. Until upgrading, no in-product workaround fully closes the gap: the local API is reachable by any process running as the same user, so operators should treat local code execution as the real trust boundary - run untrusted or research software in a container, sandbox, or VM where the Portmaster API socket is not exposed, avoid executing untrusted local binaries on hosts running Portmaster, and restrict host access to trusted, single-tenant users. Defensive monitoring is limited; because the forced update installs a genuine Safing-signed older release, detection depends on tracking the installed Portmaster version over time and alerting on unexpected downgrades, then re-upgrading to 2.2.5 or later. Verify the post-upgrade version explicitly, since a downgrade may otherwise go unnoticed.

Affected VersionsENISA

portmaster 0 <2.2.5

Affected Packages

euvd portmaster fix: 2.2.5

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

Safing Portmaster is a Go-based application firewall and privacy tool that runs a local HTTP API on the host, with endpoints registered through an internal api.RegisterEndpoint helper that assigns each route a write permission policy. In versions before 2.2.5 the route updates/from-url (POST) was registered with Write: api.PermitAnyone, meaning any local caller could invoke it without authentication or privilege, and its ActionFunc passed the raw request body straight into module.instance.BinaryUpdates().UpdateFromURL(), which in turn called updateAndUpgrade with the force and auto-apply flags set to true. Because the URL is fully caller-controlled and treated as an update index, the supplied index can point at an older, still-validly-Safing-signed release, defeating version comparison and downgrade protections. This is a CWE-306 (Missing Authentication for Critical Function) issue affecting every build matched by cpe:2.3:a:safing:portmaster:*:*:*:*:*:*:*:* prior to 2.2.5; the modernized CVSS 4.0 vector (AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:L) and the independent CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L assessment both characterize it as a low-severity local integrity and limited-availability issue: the signature requirement bound the blast radius, and the attacker's gain is indirect - restoring a patched flaw by reinstalling a genuine older build rather than dropping a malicious binary.

Know when Portmaster 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 (VulnCheck) PRIMARY 4.8 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N
vuln.today AI 4.4 MEDIUM

Needs an unprivileged local process (AV:L, PR:L, AC:L, no UI); forced downgrade affects integrity and availability at low level (I:L/A:L) with no data disclosure (C:N).

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

DescriptionCVE.org

Safing Portmaster before 2.2.5 contains a missing authorization vulnerability that allows unprivileged local processes to force updates by calling the POST /api/v1/updates/from-url endpoint registered with api.PermitAnyone. Attackers can supply an attacker-controlled index URL that bypasses version checks and auto-apply settings, installing older Safing-signed releases carrying previously fixed vulnerabilities.

Threat Intelligence Overview

EPSS Score
0.1%
Top 99% exploitable
Prevalence
Low
niche open-source privacy firewall for individual endpoints, limited enterprise footprint
Data Quality
5 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.1%
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
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

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

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

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