Skip to main content

Casdoor CVE-2026-108572

| EUVDEUVD-2026-96878 LOW
Server-Side Request Forgery (SSRF) (CWE-918)
2026-10-11 cna@vuldb.com GHSA-h4c8-m9wv-p9hq
2.1
CVSS 4.0 · Vendor: vuldb
View

Attack ChainAIDerived

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

  1. Access
    Obtain valid CAS service ticket (PR:L)
  2. Exploit
    Send proxyValidate request with crafted pgtUrl
  3. Execution
    Casdoor issues server-side HTTP request
  4. Impact
    Reach internal service / limited data disclosure

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Credential Access

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

Exploitation Conditions

Requires that the target Casdoor instance (versions up to 3.164.0 / 4.10.0) exposes the CAS protocol proxy-validation endpoint (CasP3ProxyValidate) and that the attacker can reach it with a valid CAS service ticket - the CVSS PR:L confirms low-privilege authentication is needed, so this is not an unauthenticated flaw. The concrete trigger is attacker control of the pgtUrl (proxy-granting callback URL) argument, which the pre-patch code fetches via http.DefaultClient.Do without destination validation, redirect restriction, or timeout. Limiting factors: exploitation is confined to Casdoor deployments actually using CAS proxy authentication, requires a valid ticket, and impact is limited (VC:L, no integrity/availability impact), so this is primarily a blind/limited SSRF rather than full internal-service compromise. The 4.11.0 fix adds a non-redirect-following HTTP client with a 10-second timeout and target-authorization checks, confirming redirect-following and unbounded outbound requests were the core weakness.

Impact

This is a genuinely low-priority issue despite being a server-side request forgery flaw. The signals are internally consistent and point away from urgency: the vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N) scores only 2.1, reflecting that exploitation requires low-level authentication (PR:L) and yields only limited confidentiality impact with no integrity or availability impact and no subsequent-system (scope) impact. The CVSS 4.0 exploit-maturity metric E:P and the description both confirm a public proof-of-concept exists, matching the 'exploit has been disclosed publicly' statement. However, there is NO EPSS score provided, NO CISA KEV listing, and the reporter is VulDB (cna@vuldb.com), a source that catalogs large volumes of lower-severity, often researcher-reported findings. So while a POC exists, there is no evidence of active exploitation. The SSRF is also constrained: the CVSS assigns only VC:L (not VC:H), implying limited data exposure rather than full internal-service compromise, and the patch (adding a no-redirect HTTP client with a 10s timeout) suggests the original flaw enabled unvalidated outbound requests/redirects rather than arbitrary full-response exfiltration. Net: a real but low-urgency bug - patch during normal maintenance cycles, prioritize only if Casdoor's CAS proxy-validation feature is internet-exposed.

Exploit ScenarioDerived

An attacker who can obtain a valid CAS ticket in a Casdoor deployment sends a crafted request to the CasP3ProxyValidate endpoint with a malicious pgtUrl parameter pointing at an internal host or metadata endpoint. Because Casdoor performs an outbound HTTP request to the supplied pgtUrl during proxy-granting-ticket callback without sufficient validation, the server is coerced into contacting attacker-chosen internal destinations. A public proof-of-concept has been disclosed, lowering the barrier to attempt this, though impact is limited (VC:L) and authentication is required.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
No patch listed yet 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 11, 2026

Server-side request forgery in Casdoor's CAS proxy-validation handler (CasP3ProxyValidate in controllers/cas.go) lets a low-privilege authenticated user who already holds a valid CAS service ticket supply a crafted pgtUrl callback value and make the Casdoor server issue outbound HTTP requests to an arbitrary destination of the attacker's choosing. Only deployments that expose the CAS protocol endpoints and use CAS proxy authentication in versions up to 3.164.0 and 4.10.0 are affected, and because the pre-patch code fetches the attacker-supplied URL with http.DefaultClient.Do without destination validation, redirect restrictions, or a timeout, the practical impact is a blind or limited SSRF (some confidentiality exposure, no integrity or availability impact) rather than full compromise of internal services. Publicly available exploit code exists, but there is no confirmed active exploitation (no CISA KEV listing), and the assessed severity is genuinely low, so this is a low-priority hardening item for CAS-enabled Casdoor instances rather than an emergency patch; upgrading to 4.11.0 resolves it.

RemediationAI

Upgrade Casdoor to 4.11.0 or later (vendor-released patch); the fix is carried by commits 03c6c9aaa2eda5b085ce128ce0d60b34094efbd9 and ada08ecd10cbf158f593dee23a8bab63efecf995 and is documented in the release notes at https://github.com/casdoor/casdoor/releases/tag/v4.11.0. If upgrading immediately is not possible, the most effective compensating control is to stop exposing the CAS proxy-validation endpoints (CasP3ProxyValidate and the related proxy paths) to untrusted networks, or to disable CAS proxy authentication entirely if it is not in active use - the trade-off is that legitimate CAS proxy clients will fail until the upgrade completes. As a second layer, apply egress filtering on the Casdoor host so outbound HTTP/HTTPS cannot reach link-local, loopback, RFC1918, or cloud metadata address ranges; this blocks the SSRF primitive but risks breaking legitimate outbound calls such as identity-provider, LDAP, or webhook integrations, so any deny rules must be tested against the instance's normal federation traffic. Restricting which accounts can obtain CAS service tickets reduces exposure, since exploitation requires at least a low-privilege authenticated principal holding a valid ticket under the assessed CVSS vector (PR:L). None of these workarounds remove the underlying flaw, so patching to 4.11.0 remains the recommended action.

Affected VersionsENISA

casdoor 4.6
casdoor 4.7
casdoor 3.164
casdoor 4.4
casdoor 4.1
casdoor 4.2
casdoor 4.10.0
casdoor 4.8
casdoor 4.5
casdoor 4.0
casdoor 4.3
casdoor 4.9

Affected Packages

euvd casdoor 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

Casdoor is a Go-based identity and access management platform that implements the CAS (Central Authentication Service) protocol alongside OIDC/SAML. Under CAS proxy authentication, a service that wants to obtain proxy-granting tickets supplies a pgtUrl callback so the CAS server can deliver the proxy-granting ticket back to it. In the vulnerable code path (CasP3ProxyValidate in controllers/cas.go), the pgtUrl argument was passed to an outbound request executed via Go's http.DefaultClient.Do with no allow-list of permitted destinations, no redirect restriction, and no timeout. This is a textbook CWE-918 server-side request forgery: the server becomes a proxy that the attacker can steer at internal network addresses, cloud metadata endpoints, or other services reachable only from the Casdoor host, and the absence of a timeout also permits resource-exhaustion style hangs on slow attacker endpoints. The 4.11.0 patch (commits 03c6c9aaa2eda5b085ce128ce0d60b34094efbd9 and ada08ecd10cbf158f593dee23a8bab63efecf995) confirms the root cause by introducing a dedicated HTTP client with a 10-second timeout and a CheckRedirect handler returning http.ErrUseLastResponse so redirects cannot be followed to a second, unchecked destination, and by adding an isCasProxyTargetAllowed authorization check for the proxy target service. Notably the same commit also replaces prefix-based service comparison (strings.HasPrefix plus url.QueryUnescape) in CasValidate and CasP3ProxyValidate with a strict IsCasServiceMatched check, hardening the adjacent ticket-to-service binding logic.

Know when the next one hits your stack

  • 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 2.1 LOW
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:P
vuln.today AI 4.3 MEDIUM

Network-reachable CAS endpoint with no added complexity (AV:N/AC:L); a valid CAS ticket is required so PR:L; SSRF yields limited read-only exposure (C:L) with no integrity, availability, or scope impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/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
Low
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

A security vulnerability has been detected in Casdoor up to 3.164.0/4.10.0. Affected is the function CasP3ProxyValidate of the file controllers/cas.go of the component Proxy Validation. Such manipulation of the argument pgtUrl leads to server-side request forgery. The attack may be performed from remote. The exploit has been disclosed publicly and may be used. Upgrading to version 4.11.0 is able to address this issue. The name of the patch is 03c6c9aaa2eda5b085ce128ce0d60b34094efbd9/ada08ecd10cbf158f593dee23a8bab63efecf995. It is advisable to upgrade the affected component.

Threat Intelligence Overview

EPSS Score
0.2%
Top 88% exploitable
Prevalence
Low
open-source IAM/SSO platform, niche self-hosted footprint
Data Quality
7 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 LOW
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.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
Open
Automatable· derived
No
Human Impact· derived
Low

Priority Score

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

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

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