CVE-2024-52308

Source
https://nvd.nist.gov/vuln/detail/CVE-2024-52308
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-52308.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2024-52308
Aliases
Downstream
Related
Published
2024-11-14T22:55:38Z
Modified
2025-10-22T18:45:12.439144Z
Severity
  • 8.0 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:H/I:H/A:H CVSS Calculator
Summary
Connecting to a malicious Codespaces via GH CLI could allow command execution on the user's computer
Details

The GitHub CLI version 2.6.1 and earlier are vulnerable to remote code execution through a malicious codespace SSH server when using gh codespace ssh or gh codespace logs commands. This has been patched in the cli v2.62.0.

Developers connect to remote codespaces through an SSH server running within the devcontainer, which is generally provided through the default devcontainer image . GitHub CLI retrieves SSH connection details, such as remote username, which is used in executing <code>ssh</code> commands for gh codespace ssh or gh codespace logs commands.

This exploit occurs when a malicious third-party devcontainer contains a modified SSH server that injects ssh arguments within the SSH connection details. gh codespace ssh and gh codespace logs commands could execute arbitrary code on the user's workstation if the remote username contains something like -oProxyCommand="echo hacked" #. The -oProxyCommand flag causes ssh to execute the provided command while # shell comment causes any other ssh arguments to be ignored.

In 2.62.0, the remote username information is being validated before being used.

Database specific
{
    "cwe_ids": [
        "CWE-77"
    ]
}
References

Affected packages

Git / github.com/cli/cli

Affected ranges

Type
GIT
Repo
https://github.com/cli/cli
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed

Affected versions

v0.*

v0.10.0
v0.10.1
v0.11.0
v0.11.1
v0.12.0
v0.4.0
v0.5.0
v0.5.1
v0.5.2
v0.5.3
v0.5.4
v0.5.5
v0.5.6
v0.5.7
v0.6.0
v0.6.1
v0.6.2
v0.6.3
v0.6.4
v0.7.0
v0.8.0
v0.9.0

v1.*

v1.0.0
v1.1.0
v1.10.0
v1.10.1
v1.10.2
v1.10.3
v1.11.0
v1.12.0
v1.12.1
v1.13.0
v1.13.1
v1.14.0
v1.2.0
v1.2.1
v1.3.0
v1.4.0
v1.5.0
v1.6.0
v1.6.1
v1.6.2
v1.7.0
v1.8.0
v1.8.1
v1.9.0
v1.9.1
v1.9.2

v2.*

v2.0.0
v2.1.0
v2.10.0
v2.10.1
v2.11.0
v2.11.1
v2.11.2
v2.11.3
v2.12.0
v2.12.1
v2.13.0
v2.14.0
v2.14.1
v2.14.2
v2.14.3
v2.14.4
v2.14.5
v2.14.6
v2.14.7
v2.15.0
v2.16.0
v2.16.1
v2.17.0
v2.18.0
v2.18.1
v2.19.0
v2.2.0
v2.20.0
v2.20.1
v2.20.2
v2.21.0
v2.21.1
v2.21.2
v2.22.0
v2.22.1
v2.23.0
v2.24.0
v2.24.1
v2.24.2
v2.24.3
v2.25.0
v2.25.1
v2.26.0
v2.26.1
v2.27.0
v2.29.0
v2.3.0
v2.30.0
v2.31.0
v2.32.0
v2.32.1
v2.33.0
v2.34.0
v2.35.0
v2.36.0
v2.37.0
v2.38.0
v2.39.0
v2.39.1
v2.39.2
v2.4.0
v2.40.0
v2.40.1
v2.41.0
v2.42.0
v2.42.1
v2.43.0
v2.43.1
v2.44.0
v2.44.1
v2.45.0
v2.46.0
v2.47.0
v2.48.0
v2.49.0
v2.49.1
v2.49.2
v2.5.0
v2.5.1
v2.5.2
v2.50.0
v2.51.0
v2.52.0
v2.53.0
v2.54.0
v2.55.0
v2.56.0
v2.57.0
v2.58.0
v2.59.0
v2.6.0
v2.60.0
v2.60.1
v2.61.0
v2.7.0
v2.8.0
v2.9.0