Skip to main content

Warpgate CVE-2026-63330

| EUVDEUVD-2026-84061 HIGH
Improper Authorization (CWE-285)
2026-09-21 GitHub_M
7.7
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as low-privileged Warpgate user
  2. Delivery
    Identify active recording UUID
  3. Exploit
    Subscribe to recording-stream WebSocket
  4. Execution
    Receive live terminal I/O
  5. Impact
    Harvest credentials and commands of admins/other users

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization verification
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

Requires a valid authenticated Warpgate account of any privilege level (no admin/RecordingsView permission needed due to the missing check), plus an SSH, MySQL, or PostgreSQL session being actively proxied and recorded at the moment of attack. The attacker must identify the target recording's UUID and connect to the /@warpgate/admin/api/recordings/{uuid}/stream WebSocket. Limiting factors: exploitation only yields data while a session is live-streaming (timing-dependent), it is confidentiality-only (no write/DoS), and it needs authenticated access to the admin API surface rather than being pre-auth. Affected versions are prior to 0.25.6; upgrading to 0.25.6 restores the RecordingsView permission enforcement.

Impact

This is a genuine, high-priority information-disclosure flaw within its (authenticated) threat model. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N, base 7.7) is internally consistent with the description: network-reachable WebSocket, low complexity, only a regular authenticated account required, no user interaction, and a scope change (S:C) reflecting that a low-privileged account reaches data belonging to other users and administrators. CWE-285 (Improper Authorization) is the accurate root cause - the commit adds the missing require_admin_permission(AdminPermission::RecordingsView) check that the endpoint dropped. There is NO EPSS score, NO CISA KEV listing, and NO public POC provided in the intelligence - so exploitation likelihood cannot be quantified from probabilistic signals; per the precision rules this is 'no public exploit identified at time of analysis.' The one real-world dampener not captured by AC:L is timing: an attacker must catch a recording while a proxied session is actively streaming, which narrows the window versus a static data pull. The tag set is partly misleading - 'Authentication Bypass' is wrong (the attacker is already authenticated; this is authorization, not authentication) - so anyone triaging by tag should not treat this as a pre-auth bypass.

Exploit ScenarioDerived

A user with an ordinary Warpgate account logs into the admin web UI, identifies the UUID of a recording that is currently active (an admin's live SSH or database session), and connects to /@warpgate/admin/api/recordings/{uuid}/stream over WebSocket. Because the endpoint only checked session authentication and not RecordingsView permission, the attacker receives the real-time terminal input/output stream - capturing typed credentials, SQL, and commands. No public exploit code is referenced, but the flaw is trivially reachable with a normal account and low complexity.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
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 – Sep 21, 2026

Missing authorization checks on Warpgate's recording-stream WebSocket let any authenticated user with an ordinary account watch live terminal input and output from other people's proxied sessions. Specifically, api_get_recording_stream in warpgate-admin/src/api/recordings_detail.rs guards /@warpgate/admin/api/recordings/{uuid}/stream with session authentication only and never calls require_admin_permission for AdminPermission::RecordingsView, so an attacker who can identify an active recording's UUID receives, in real time, the keystrokes and output of proxied SSH, MySQL, and PostgreSQL sessions - including credentials and commands belonging to regular users and administrators. Warpgate versions prior to 0.25.6 are affected and the flaw is fixed in 0.25.6 (CVSS 3.1 7.7, AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N); the attack is authenticated and timing-dependent because the recording must be actively streaming, and no public exploit code was identified at time of analysis.

RemediationAI

Vendor-released patch: upgrade Warpgate to 0.25.6, which restores the RecordingsView permission enforcement in api_get_recording_stream (fix commit f5cb06ea09065f375870ccee64fe721a2ca79766; release notes at https://github.com/warp-tech/warpgate/releases/tag/v0.25.6 and advisory GHSA-2q37-6vxr-26jr). If immediate upgrade is not possible, the most effective compensating control is to restrict the entire admin API prefix (/@warpgate/admin/api/) to trusted management networks or a VPN via reverse-proxy ACLs, with the trade-off that legitimate administrators lose remote UI access unless they connect through that path; a narrower variant blocks only the /@warpgate/admin/api/recordings/*/stream WebSocket path, which stops the live eavesdropping but also disables the legitimate live-recording view until patched. Disabling session recording entirely removes the data an attacker could stream, at the cost of losing your audit trail for proxied sessions - an acceptable stopgap only for short windows. Because exploitation requires only a valid non-admin account plus knowledge of a recording UUID, also audit and rotate any credentials that transited a session that may have been observed, and treat recording UUIDs as sensitive identifiers rather than relying on their obscurity. Rolling back the fix is not advisable since the missing check is the vulnerability itself.

Affected VersionsENISA

warpgate < 0.25.6

Affected Packages

euvd warpgate fix: 0.25.6

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

Warpgate is an open source SSH, HTTPS and MySQL/PostgreSQL bastion host written in Rust, and the affected code lives in the warpgate-admin crate, the administrative API surface that serves the web UI. The endpoint api_get_recording_stream is an Axum-style handler that performs a WebSocket protocol upgrade (ws.on_upgrade) to stream a stored or in-progress session recording by UUID. In vulnerable builds the handler is reached through normal session authentication but never invokes the require_admin_permission helper with AdminPermission::RecordingsView, so the route effectively enforces only 'is logged in' rather than 'may view recordings'. This is a classic CWE-285 (Improper Authorization) failure: the authorization decision is simply absent from the handler rather than being implemented incorrectly. Because the recordings capture raw terminal I/O of proxied sessions, the missing check converts an admin-only audit feature into a live eavesdropping channel with a network-reachable, low-privilege prerequisite. The upstream fix adds the require_admin_permission call and changes the handler's return type to Result<impl IntoResponse, WarpgateError> so a denied permission produces an error instead of an upgraded stream.

Know when Warpgate 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 (GitHub_M) PRIMARY 7.7 HIGH
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
vuln.today AI 7.7 HIGH

Any authenticated user (PR:L) reaches a network WebSocket (AV:N/AC:L/UI:N); accessing other users'/admins' proxied session data crosses a security boundary (S:C); read-only credential/command exposure gives C:H, I:N, A:N.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

2
Patch available
Sep 21, 2026 - 20:02 EUVD
CVE Published
Sep 21, 2026 - 18:49 cve.org
HIGH 7.7

DescriptionCVE.org

Warpgate is an open source SSH, HTTPS and MySQL bastion host for Linux. Prior to 0.25.6, api_get_recording_stream in warpgate-admin/src/api/recordings_detail.rs protects /@warpgate/admin/api/recordings/{uuid}/stream only with session authentication and omits require_admin_permission for AdminPermission::RecordingsView. Any authenticated regular user who identifies an active recording can subscribe to its WebSocket and receive real-time terminal input and output from proxied SSH, MySQL, or PostgreSQL sessions, including credentials, commands, and other sensitive data belonging to users and administrators. This issue is fixed in version 0.25.6.

Technical POC Analysis

CWE-285 (Improper Authorization; the advisory also tags CWE-862, Missing Authorization).

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

Warpgate versions prior to 0.25.6 carry a missing authorization check in the recording-stream WebSocket that lets any authenticated user with an ordinary account observe live terminal input and output from other people's proxied SSH, MySQL, and PostgreSQL sessions. This exposes plaintext credentials, administrative commands, and sensitive data in real time, giving low-privileged insiders a direct path to credential theft, lateral movement, and compliance violations wherever Warpgate serves as the privileged access gateway. No public exploit identified at time of analysis, though the attack is authenticated and depends on a session actively streaming.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.4%
Top 71% exploitable
Prevalence
Low
niche open-source SSH/DB bastion host, limited self-hosted footprint
Data Quality
6 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 HIGH
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

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

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2026-58491 CRITICAL POC
9.3 Sep 21

Stored cross-site scripting and open redirect in Warpgate's SSO endpoints (versions prior to 0.25.5) allow an unauthenti

CVE-2024-43410 HIGH POC
7.5 Aug 21

Russh is a Rust SSH client & server library. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable,

CVE-2023-48712 HIGH
8.8 Nov 24

Warpgate is an open source SSH, HTTPS and MySQL bastion host for Linux. Rated high severity (CVSS 8.8), this vulnerabili

CVE-2023-37268 HIGH
8.8 Jul 14

Warpgate is an SSH, HTTPS and MySQL bastion host for Linux that doesn't need special client apps. Rated high severity (C

CVE-2023-43660 HIGH
8.1 Sep 27

Warpgate is a smart SSH, HTTPS and MySQL bastion host for Linux that doesn't need special client apps. Rated high severi

CVE-2026-91167 MEDIUM
6.0 Sep 21

Missing authorization in Warpgate's admin API allows an authenticated limited administrator who holds any single admin p

CVE-2026-44347 MEDIUM
5.8 May 12

SSO login flow in Warpgate bastion host prior to 0.23.3 omits validation of the OAuth state parameter, enabling a cross-

CVE-2026-91166 MEDIUM
5.7 Sep 21

Host-key trust confusion in Warpgate's browser SSH client (warpgate-web-ssh) lets a malicious or compromised SSH jump ho

CVE-2026-63329 MEDIUM
4.9 Sep 21

Identity-header forwarding in the Warpgate SSH/HTTPS/MySQL bastion host prior to version 0.25.6 lets an authenticated us

CVE-2026-91164 MEDIUM
4.3 Sep 21

IP allow-list enforcement in Warpgate 0.23.0 through 0.27.2 is bypassed for HTTP API token authentication: when a user h

CVE-2026-91165 LOW
2.4 Sep 21

Markup injection in Warpgate's form_post SSO return interstitial (warpgate-protocol-http/src/api/sso_provider_list.rs) a

CVE-2025-54804 MEDIUM POC
6.5 Aug 05

Russh is a Rust SSH client & server library. Rated medium severity (CVSS 6.5), this vulnerability is remotely exploitabl

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