Skip to main content

Concourse CI CVE-2026-49826

| EUVDEUVD-2026-58716 LOW
URL Redirection to Untrusted Site (Open Redirect) (CWE-601)
2026-07-01 https://github.com/concourse/concourse GHSA-8w27-c4vc-88q9

Severity by source

vuln.today AI
6.1 MEDIUM

Network-delivered, low-complexity redirect requiring user interaction; scope changes as victim is sent to external attacker domain with phishing potential.

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

Lifecycle Timeline

1
Analysis Generated
Jul 01, 2026 - 19:34 vuln.today

DescriptionCVE.org

Impact

An attacker is able to craft and send a user a URL that will redirect the user from the Concourse web server to any other site. This could be used in a phishing attack to steal user's credentials.

Patches

This has been fixed in 8.2.3

Workarounds

None.

Exploit

Vulnerable code was in: https://github.com/concourse/concourse/blob/ea7b812e3a88fdd070f0faece874e8a2d4fbb31c/skymarshal/skyserver/skyserver.go#L162-L170

The issue stems from the underlying processing logic of Go's url package. Normally, ParseRequestURI() will eventually reach an internal url.setPath() function, where the URL will be decoded. However, if RawPath is not empty and validEncoded(RawPath) is true, and the decoded result equals Path, then return RawPath as is; otherwise, escape Path again, i.e., decode it again.

In other words, if the URL contains dangerous characters that should be escaped, such as backslashes (\), then an extra decoding step will be performed. Therefore, /%2Fexample.com will be parsed as //example.com.

On vulnerable versions of Concourse, add /sky/login?redirect_uri=/%252Fexample.com/\ to your Concourse external URL, login as usual, and you should be redirected to example.com instead of your Concourse web server. The redirect happens after the login flow completes. No credentials are leaked.

AnalysisAI

Open redirect in Concourse's web login flow allows a remote unauthenticated attacker to craft a URL that silently redirects an authenticated user to an arbitrary external site upon completing the login process. Concourse versions prior to 8.2.3 are affected via the /sky/login endpoint's redirect_uri parameter. While no credentials are leaked server-side, the post-login redirect to an attacker-controlled site creates a high-fidelity phishing vector targeting CI/CD operators and developers - users who typically hold sensitive pipeline secrets and source-code access. No public exploit identified at time of analysis, though the advisory provides a fully working proof-of-concept URL.

Technical ContextAI

The vulnerability resides in skymarshal/skyserver/skyserver.go (lines 162-170) in the Concourse Go-based web server. The root cause is CWE-601 (URL Redirection to Untrusted Site), triggered by a double-decoding quirk in Go's standard url package. When ParseRequestURI() processes a URL with a non-empty RawPath that passes validEncoded() and whose decoded form equals Path, it returns RawPath as-is - applying an extra decode pass. The attacker submits redirect_uri=/%252Fexample.com/\ (percent-encoded slash %25%2F/), which after double decoding resolves to //example.com, a protocol-relative URL interpreted by the browser as an external host. The affected package is pkg:go/github.com_concourse_concourse.

RemediationAI

Upgrade Concourse to v8.2.3, which contains the fix at commit ac60be5f0435b6592f5a4fcc089050d72ad2452c addressing the double-decoding issue in the redirect_uri validation logic. The release is available at https://github.com/concourse/concourse/releases/tag/v8.2.3 and the security advisory is at https://github.com/concourse/concourse/security/advisories/GHSA-8w27-c4vc-88q9. The vendor confirms no workarounds are available, as the flaw is in core login-flow redirect handling. As a compensating control prior to patching, operators can restrict external access to the Concourse web UI (e.g., place it behind a VPN or IP allowlist) to limit the population of users who could receive and act on a crafted phishing URL - though this does not eliminate the vulnerability for internal attackers. User awareness training to scrutinize post-login redirect destinations is a low-friction advisory measure with minimal operational impact.

CVE-2017-1000117 HIGH POC
8.8 Oct 05

A malicious third-party can give a crafted "ssh://..." URL to an unsuspecting victim, and an attempt to visit the URL ca

CVE-2024-52875 HIGH POC
8.8 Jan 31

GFI Kerio Control versions 9.2.5 through 9.4.5 contain an HTTP response splitting vulnerability in the dest parameter of

CVE-2016-5385 HIGH POC
8.1 Jul 19

PHP through 7.0.8 does not attempt to address RFC 3875 section 4.1.18 namespace conflicts and therefore does not protect

CVE-2013-2248 MEDIUM POC
5.8 Jul 20

Multiple open redirect vulnerabilities in Apache Struts 2.0.0 through 2.3.15 allow remote attackers to redirect users to

CVE-2012-6499 MEDIUM POC
5.8 Jan 12

Open redirect vulnerability in age-verification.php in the Age Verification plugin 0.4 and earlier for WordPress allows

CVE-2015-2863 MEDIUM POC
4.3 Jul 20

Open redirect vulnerability in Kaseya Virtual System Administrator (VSA) 7.x before 7.0.0.29, 8.x before 8.0.0.18, 9.0 b

CVE-2017-3528 MEDIUM POC
5.4 Apr 24

Vulnerability in the Oracle Applications Framework component of Oracle E-Business Suite (subcomponent: Popup windows (li

CVE-2012-0518 MEDIUM
4.7 Oct 16

Unspecified vulnerability in the Oracle Application Server Single Sign-On component in Oracle Fusion Middleware 10.1.4.3

CVE-2024-21641 MEDIUM POC
6.5 Jan 05

Flarum is open source discussion platform software. Rated medium severity (CVSS 6.5), this vulnerability is remotely exp

CVE-2015-5354 MEDIUM POC
5.8 Jul 01

Open redirect vulnerability in Novius OS 5.0.1 (Elche) allows remote attackers to redirect users to arbitrary web sites

CVE-2015-5461 MEDIUM POC
6.4 Jul 08

Open redirect vulnerability in the Redirect function in stageshow_redirect.php in the StageShow plugin before 5.0.9 for

CVE-2024-22891 CRITICAL POC
9.8 Mar 01

Nteract v.0.28.0 was discovered to contain a remote code execution (RCE) vulnerability via the Markdown link. Rated crit

Share

CVE-2026-49826 vulnerability details – vuln.today

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