CVE-2024-9902

Arbitrary file replacement via SSH key symlink

Published Nov 6, 2024 · Updated Nov 6, 2025

Incorrect authorization in ansible-core allows local users to replace arbitrary files and take ownership through the user module. The ssh_key_gen path follows a pre-existing symbolic link at the generated public-key filename, letting privileged ssh-keygen, chown, and chmod operations act on the link target. Exploitation requires an unprivileged account, traversal access to the target directory, and a privileged user to run the module with the disabled-by-default generate_ssh_key option.

CVSS severity5.3
Medium
EPSS probability0.26%
Next 30 days · Sep 16, 2026
Known exploitationUnconfirmed
Based on sourced intelligence
Hinoki checkNot available
Coverage for this vulnerability

See if you're affected

Explore vulnerability checks for your environment with Hinoki.

Book a demo

Summary

What happened

Incorrect authorization in ansible-core allows local users to replace arbitrary files and take ownership through the user module. The ssh_key_gen path follows a pre-existing symbolic link at the generated public-key filename, letting privileged ssh-keygen, chown, and chmod operations act on the link target. Exploitation requires an unprivileged account, traversal access to the target directory, and a privileged user to run the module with the disabled-by-default generate_ssh_key option.

The record

CVE
CVE-2024-9902
Published
Nov 6, 2024
Updated
Nov 6, 2025
Vendor
Red Hat
Product
Red Hat OpenStack Platform
Classifications
CWE-863, T1068
Attack vector
local
Privileges
authenticated

Timeline

How it unfolded

  1. Nov 6, 2024CVE publishedPublication date reported by the CVE source.
  2. Nov 6, 2025Record updatedLatest update available in the CVE record.

Exploitability

Present is not the same as exploitable

Compare your product and version with the public record. A matching version still requires validation against your environment.

Is a vulnerable build present?

Affected versions are unavailable in this record. Check the vendor advisory for version and patch details.

What conditions does exploitation require?

Attack vectorlocal
Required privilegesauthenticated

What is affected?

Red Hat · Red Hat OpenStack PlatformAffected versions are unavailable in this record.
389 Directory Server · Red Hat Ansible Coreversion=0 <2.14.18rc1; version=2.15.0b1 <2.15.13rc1; version=2.16.0b1 <2.16.13rc1; version=2.17.0b1 <2.17.6rc1; version=2.18.0b1 <2.18.0rc2
Red Hat · Red Hat Ansible Automation PlatformAffected versions are unavailable in this record.
Red Hat · Ansible Automation Platform Execution EnvironmentsAffected versions are unavailable in this record.

Published CVSS scores

5.3GitHub Advisory DatabaseCVSS:4.0/AV:L/AC:L/AT:P/PR:L/UI:A/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N

CVSS describes severity. EPSS estimates exploitation probability.

Attacks

What attackers are doing with it

Daily unique IPs observed by Shadowserver honeypots for known exploited vulnerabilities (KEVs). Missing observations do not establish an absence of attacks.

Daily unique IPsNo honeypot observations are available for this CVE in the selected window.

No observations available

Sep 10, 2026Sep 16, 2026
Latest reporting daySep 16, 2026
Latest daily unique IPsUnavailable
Prior 30-day averageUnavailable
SourceShadowserver honeypots (KEV)
Vectorlocal
Privilegesauthenticated
Known exploitationUnconfirmed
Public exploitUnconfirmed

Weakness, pattern, technique

CWE-863Incorrect Authorization
T1068Exploitation for Privilege Escalation

Public exploit references

No public exploit references are available in this record.

Labels summarize the accepted research assessment. They do not indicate a test against your environment.

Technologies

Your stack

See the directory against your own environment.

Your stack

Check the software in your environment

Book a demo to see how Hinoki identifies affected software and validates exploitability in your environment.

Book a demo