NIST deprecates RSA-2048 from 2030. Find every one of them before attackers do.
🐍 PyPI
Not in CISA KEV

CVE-2026-18654 — awscli

CVE-2026-18654 is a CWE-322 vulnerability in awscli. A fix is available for awscli — see the affected versions and patch details below.

Disabled SSH host key verification in Amazon AWS CLI EMR helper commands

Also known asGHSA-hqvf-45jj-mccqPYSEC-2026-3627
Published
Updated
Affected
1 pkg
Patched
1 / 1
Exploits
None indexed
Exploitation data as of Nov 6, 2026 · OSV.dev, NVD, FIRST.org (EPSS)

Exploitation Status

No confirmed exploitation observed yet

  • CISA’s own triage has not observed active exploitation or public proof-of-concept code for this CVE as of its last assessment.

Exploitation and automatability from CISA’s SSVC triage for CVE-2026-18654.

EPSS Exploitation Probability

via FIRST.org ↗
0.5%probability of exploitation in next 30 days
Lower Risk+0.17%
Lower risk than most CVEs40th percentile — riskier than 40% of all scored CVEsHighest risk
0.00%0.32%0.64%0.96%0.3%0.3%0.5%Sep 26Oct 26Nov 26

Probability of exploitation in the next 30 days, from FIRST.org EPSS.

Real-World Exposure

1 pkg affected
🐍awscli

Real-time download stats are indexed for npm and PyPI packages. This vulnerability affects PyPI packages — download data is not available via public APIs for these ecosystems.

Description

Summary

The AWS Command Line Interface (AWS CLI) is a unified tool to manage AWS services from the command line. An issue exists where the EMR SSH helper commands (aws emr ssh, aws emr socks, aws emr put, aws emr get) passed StrictHostKeyChecking=no to the underlying SSH client, disabling host key verification.

Impact

A network-positioned actor could perform a man-in-the-middle action to intercept SSH sessions and file transfers between the client and EMR cluster instances. Successful exploitation requires the actor to have network access on the path between the client machine and the EMR cluster endpoint. This could result in full visibility of commands executed, files transferred, and credentials passed over the SSH session.

Impacted versions: AWS CLI v1 <= 1.45.27, AWS CLI v2 <= 2.35.2

Patches

This issue has been addressed in AWS CLI v1 version 1.45.28 and AWS CLI v2 version 2.35.3. We recommend upgrading to the latest version and ensuring any forked or derivative code is patched to incorporate the new fixes.

Workarounds

There is no workaround. The insecure SSH option was hardcoded and could not be overridden by the user.

References

If you have any questions or comments about this advisory, we ask that you contact AWS Security via our vulnerability reporting page or directly via email to [email protected]. Please do not create a public GitHub issue.

Acknowledgement

We would like to thank Ali Sunbul for collaborating on this issue through the coordinated vulnerability disclosure process.

Affected Packages

1 total 1 fixed
EcosystemPackageVulnerable rangeFix
🐍PyPIawscliall versions1.45.28pip install --upgrade 'awscli==1.45.28'

Affected Products

1 product · 2 configurations
Application
aws command line interfaceamazon
≥ 2.0.0 && < 2.35.3
range

Detection & mitigation playbook

Open-source dependency
  1. Detect

    Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for awscli, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.

  2. Fix

    Update awscli to 1.45.28 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2026-18654 is resolved across your whole dependency graph.

  3. Workarounds

    If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.

Fixing This On Your OS

If you run this on a Linux distribution, patch through your package manager against the distro's own security advisory below — it tracks the exact backported fix for your release, which can ship on a different timeline (and sometimes a different severity) than the upstream project.

Red HatModerate

The AWS CLI disables SSH host key verification (StrictHostKeyChecking=no) when running the `aws emr ssh`, `aws emr socks`, `aws emr put`, and `aws emr get` subcommands against an Amazon EMR cluster. An attacker holding a machine-in-the-middle position on the network path between the client and the EMR node can…

Workaround published by Red Hat
Users who do not run the `aws emr ssh`, `aws emr socks`, `aws emr put`, or `aws emr get` subcommands are not exposed. Where these subcommands are required, verify the EMR node's SSH host key out-of-band before connecting, or restrict their use to trusted networks where a machine-in-the-middle attacker cannot intercept traffic. Upgrading to awscli 1.45.28 or later (v1 line) or awscli2 2.35.3 or later (v2 line) removes the vulnerable behavior.
Source: Red Hat security advisory for CVE-2026-18654 (CC BY 4.0)

Frequently Asked Questions

### Summary The AWS Command Line Interface (AWS CLI) is a unified tool to manage AWS services from the command line. An issue exists where the EMR SSH helper commands (`aws emr ssh`, `aws emr socks`, `aws emr put`, `aws emr get`) passed `StrictHostKeyChecking=no` to the underlying SSH client, disabling host key verification. ### Impact A network-positioned actor could perform a man-in-the-middle action to intercept SSH sessions and file transfers between the client and EMR cluster instances. Successful exploitation requires the actor to have network access on the path between the client machi
O3 Security · Impact-Aware SCA

Is CVE-2026-18654 in your dependencies?

Find it across PyPI, including transitive dependencies.

CVE-2026-18654: awscli — Fixed in 1.45.28