Skip to main content

SuggestArr EUVDEUVD-2026-105106

| CVE-2026-113703 CRITICAL
Authentication Bypass by Spoofing (CWE-290)
2026-10-20 VulnCheck GHSA-4pm7-2f9h-vxj4
9.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Reach proxy-fronted SuggestArr endpoint
  2. Delivery
    Craft request with X-Forwarded-For: 127.0.0.1
  3. Exploit
    Bypass trusted-CIDR check in enforce_authentication()
  4. Execution
    Receive admin session from _load_bypass_user_context()
  5. Impact
    Control /api/users and /api/jobs as admin

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Anti-spoofing controls
MITRE ATT&CK

1 technique across 1 tactic: Defense Evasion

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

Exploitation Conditions

Exploitation requires the SuggestArr instance to be running in 'local_bypass' authentication mode AND deployed behind a reverse proxy with ProxyFix(x_for=1) active (both the documented, non-default conditions - the upgrade notes specifically warn operators running local_bypass behind a proxy). Given those conditions, the attacker needs only network reachability to the application and the ability to set the X-Forwarded-For header to a trusted CIDR value such as 127.0.0.1; no credentials, user interaction, or prior access is required. The primary limiting factor is the configuration itself: default installations that do not enable local_bypass are not affected, so the realistic exposed population is restricted to proxy-fronted deployments that opted into IP-based bypass.

Impact

Risk is conditional rather than universal. The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H) scores 9.1 (Critical) and correctly reflects a network-reachable, unauthenticated, low-complexity attack with high confidentiality and integrity impact - but the AT:P (Attack Requirements: Present) flag is the decisive signal: exploitation is only possible when the optional 'local_bypass' authentication mode is enabled behind a reverse proxy, which is NOT the default. This tempers the raw criticality. No EPSS score was provided and the vulnerability is NOT in CISA KEV, so there is no evidence of active or widespread exploitation; exploitation status is 'no public exploit identified at time of analysis' (VulnCheck published an advisory, but no public exploit code is indicated in the input). Against affected deployments the technique is trivial (spoof a single HTTP header), so the signals are internally consistent - high technical impact gated by a specific, operator-chosen configuration. Net: a genuine high priority for the subset of SuggestArr instances running local_bypass behind a proxy, but a low real-world risk for the majority running default auth. Missing data to note explicitly: EPSS probability is absent, and POC/KEV are both negative, so prioritization should rest on whether local_bypass is in use, not on exploitation telemetry.

Exploit ScenarioDerived

An attacker who can reach a SuggestArr instance that was configured with local_bypass mode behind a reverse proxy sends an HTTP request with the header 'X-Forwarded-For: 127.0.0.1'. Because ProxyFix(x_for=1) causes Flask to trust that header as request.remote_addr, enforce_authentication() treats the request as originating from a trusted CIDR and loads an admin session via _load_bypass_user_context(), granting full administrative access to endpoints such as /api/users and /api/jobs with no credentials. No public exploit code is identified at time of analysis, though the single-header technique is simple to reproduce.

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

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

Alert me

AnalysisAIv1 – Oct 20, 2026

SuggestArr deployments running in 'local_bypass' authentication mode can be tricked into granting a full administrative session without any credentials by spoofing the X-Forwarded-For header. Because api_service/app.py applies ProxyFix(x_for=1) and enforce_authentication() in api_service/auth/middleware.py trusts the resulting request.remote_addr, a remote attacker who can reach the instance can set X-Forwarded-For to a trusted CIDR value such as 127.0.0.1 and be automatically logged in as an admin via _load_bypass_user_context(), exposing endpoints like /api/users and /api/jobs. The CVSS 4.0 vector is unauthenticated (PR:N) with high confidentiality and integrity impact; exploitation is conditional on the non-default combination of local_bypass being enabled and the app sitting behind a reverse proxy, and no public exploit code or CISA KEV entry was identified at time of analysis.

RemediationAI

Vendor-released patch: upgrade to SuggestArr 3.0.0, which rebuilds and hardens the authentication layer (https://github.com/giuseppe99barchetta/SuggestArr/releases/tag/v3.0.0); follow the 3.0.0 upgrade notes carefully, especially the warning for operators running local_bypass behind a reverse proxy, and review the advisory GHSA-fcjm-xhw8-pmh5. If upgrading cannot be done immediately, the most effective compensating control is to stop relying on IP-based bypass: disable 'local_bypass' mode and require real credentials for administrative access, accepting that local convenience logins will no longer work. If local_bypass must stay enabled, harden the proxy layer: configure nginx, Traefik, or Caddy to overwrite rather than append X-Forwarded-For with the true client address (for example proxy_set_header X-Forwarded-For $remote_addr) so client-supplied values never reach the application, at the cost of losing multi-hop client-IP visibility in logs and rate limiting. In addition, bind SuggestArr to a private interface or restrict it with firewall rules and proxy-level access control so that only known networks can reach the service, and audit existing users and jobs for unauthorized admin-created accounts or scheduled jobs that would indicate prior abuse; each of these reduces exposure but none fully substitutes for the 3.0.0 fix.

Affected VersionsENISA

SuggestArr 1.0.4 <3.0.0

Affected Packages

euvd suggestarr fix: 3.0.0

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

SuggestArr is a Python web application built on a Flask/WSGI stack, and the flaw is a classic instance of CWE-290 (Authentication Bypass by Spoofing). Werkzeug's ProxyFix middleware with x_for=1 accepts exactly one hop of the X-Forwarded-For header and rewrites the WSGI REMOTE_ADDR from it, on the assumption that the immediately upstream reverse proxy sanitized that header. In the affected code path, enforce_authentication() in api_service/auth/middleware.py compares that now client-influenced request.remote_addr against configured trusted CIDRs to decide whether IP-based bypass applies, and _load_bypass_user_context() then materializes an administrator identity for any address inside the trusted range. Because the trust decision is made on attacker-supplied header data rather than on the actual TCP peer address or a cryptographically verified identity, any HTTP client that can reach the service can forge a loopback or RFC1918 source address and inherit the bypass user's privileges. The root cause is the conflating of a header-derived, client-controllable value with a network-level trust boundary; the fix in 3.0.0 hardens the authentication logic and the release notes explicitly call out operators running local_bypass behind a reverse proxy.

Know when Suggestarr 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 9.1 CRITICAL
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
vuln.today AI 7.4 HIGH

AC:H because exploitation depends on the non-default local_bypass + ProxyFix configuration outside attacker control; PR:N/UI:N since a spoofed header alone grants admin; C:H/I:H, A:N as admin read/write is gained without described availability loss.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

DescriptionCVE.org

SuggestArr before 3.0.0 contains an authentication bypass vulnerability in its local_bypass authentication mode where enforce_authentication() in api_service/auth/middleware.py trusts the client-controlled request.remote_addr value, which is derived from the spoofable X-Forwarded-For header due to ProxyFix(x_for=1) configuration in api_service/app.py. Attackers can send a request with X-Forwarded-For set to a trusted CIDR address such as 127.0.0.1 to be granted an unauthenticated admin session via _load_bypass_user_context(), gaining full administrative access to endpoints like /api/users and /api/jobs without providing any credentials.

Technical POC Analysis

Authentication bypass by spoofing, classifiable as CWE-290; the GitHub advisory also tags CWE-348 "Use of Less Trusted Source." The vulnerable code is enforceauthentication() in apiservice/auth/middl…

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

SuggestArr deployments that enable local_bypass authentication behind a reverse proxy can be accessed as an administrator without credentials, exposing user and job management functions. Leadership should care because this is a critical, unauthenticated administrative takeover affecting a non-default but plausible deployment pattern; no public exploit was identified at time of analysis.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.4%
Top 63% exploitable
Prevalence
Low
niche self-hosted media-request tool by an independent open-source developer
Social Media
1
Sightings
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment CIRCL 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.4%
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
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Total

Priority Score

46
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +46
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