ZeroHour

CVE-2026-61640

moderate

SSRF in Wallos OIDC callback lets admins reach cloud metadata and internal network

CVSS 4.0
8.5 high
EPSS
<1%p24
Published
()
Modified
AI analysis

Wallos, an open-source, self-hosted personal subscription tracker, contains a server-side request forgery (CWE-918) in its OIDC login handling: the admin-configured token_url and user_info_url values are passed directly to curl_init() in includes/oidc/handle_oidc_callback.php (lines 18-49) with no SSRF filtering, unlike logo and webhook URLs which are checked with validate_webhook_url_for_ssrf(). Because the vector requires high privileges (CVSS 4.0 PR:H), exploitation means an attacker who already has administrator access sets these URLs to an internal endpoint such as the cloud metadata service at http://169.254.169.254/latest/meta-data/ and then lets the OIDC callback run, causing the Wallos server to fetch the chosen URLs. From there the attacker gains access to cloud instance metadata (potentially including instance credentials) and can use the server as a foothold to probe or pivot into the internal network, which is why the issue is rated High (8.5). Any Wallos deployment prior to version 4.9.6 is affected, but practically only instances where an admin has configured OIDC login. No public proof-of-concept, no CISA KEV listing, and no confirmed in-the-wild exploitation are known; EPSS currently estimates a 0.3% probability of exploitation within 30 days.

What to do: Upgrade to Wallos 4.9.6 or later, which adds SSRF validation for the OIDC token_url and user_info_url. Until then, restrict those OIDC URLs to trusted HTTPS endpoints and block outbound access from the Wallos host or container to 169.254.169.254 and internal network ranges; if the instance runs in a cloud environment, review credentials reachable via instance metadata. Also confirm which admins can change OIDC settings, since the flaw requires administrator-level access to trigger.

Affected
Wallos (open-source project) Wallosall versions prior to 4.9.6 (< 4.9.6)
Estimated exposure
moderatelikely on the order of 1,000-10,000 self-hosted instances, with actual exposure limited to deployments where an admin configured OIDC login — Wallos is a community-maintained, self-hosted subscription tracker with no authoritative install counts, typically deployed one instance per household via Docker, and this flaw only applies to the subset of deployments with OIDC…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

Wallos is an open-source, self-hostable personal subscription tracker. Prior to version 4.9.6, Admin-configured OIDC token_url and user_info_url in includes/oidc/handle_oidc_callback.php:18-49 are used directly in curl_init() with zero SSRF filtering. Unlike logo/webhook URLs which have validate_webhook_url_for_ssrf(), OIDC URLs bypass all protections. Admin sets URL to http://169.254.169.254/latest/meta-data/ for cloud metadata access or internal network pivoting. This issue has been patched in version 4.9.6.

Weakness
CWE-918
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.