CVE-2019-10222
High · 7.5CVSS
7.5
EPSS
4.5%
Published
Nov 8, 2019
CISA due date
—
Cloudanix analysis
Attackers can shut down a server that handles storage requests by sending ordinary web traffic and then hanging up, causing downtime until the system is updated.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Trivial
- Impact
- Denial Of Service
- Component
- Network Service
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Unauthenticated remote attacker can crash the RGW server by sending valid HTTP headers and then terminating the connection, resulting in denial of service.
Why it matters to the business
Causes repeated service outages for storage clients until the affected server process is restarted, with long-term exposure risk given the multi-year window since disclosure.
How an attack unfolds
An attacker establishes a connection to the front-end, transmits a sequence of valid HTTP headers, and abruptly closes the socket, triggering a crash in the request-handling logic.
How to fix it
Upgrade notary packages on Ubuntu 16.04 LTS, Debian 11, Debian 12, and Debian 13 to version 0.1~ds1-1 or later.
How to confirm the fix worked
Confirm installed package versions meet or exceed 0.1~ds1-1 and perform connection-termination tests against a lab instance to verify stability.
Typical attack path
- Establish TCP connection to the exposed RGW endpoint
- Transmit a minimal but valid set of HTTP headers
- Immediately terminate the connection without completing the request
- Repeat to sustain denial of service
How to detect it
Review RGW and system logs for abrupt process terminations or restarts correlated with short-lived HTTP connections from untrusted sources.
What your security team should do
- Apply the listed package updates across all affected distributions
- Restrict direct exposure of RGW endpoints to trusted networks where feasible
- Enable process monitoring and automatic restarts for the RGW service
The record
A flaw was found in the Ceph RGW configuration with Beast as the front end handling client requests. An unauthenticated attacker could crash the Ceph RGW server by sending valid HTTP headers and terminating the connection, resulting in a remote denial of service for Ceph RGW clients.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Chainguard | ceph | 0 | 0 |
| Chainguard | ceph | 0 | 19.2.1-r0 |
| Chainguard | ceph-18 | 0 | 0 |
| Chainguard | ceph-18 | 0 | 18.2.7-r2 |
| Chainguard | ceph-18-deps | 0 | 0 |
| Chainguard | ceph-18-deps | 0 | 18.2.7-r2 |
| Chainguard | ceph-18-deps-fips | 0 | 0 |
| Chainguard | ceph-18-deps-fips | 0 | 18.2.7-r2 |
| Chainguard | ceph-18-dev | 0 | 0 |
| Chainguard | ceph-18-dev | 0 | 18.2.7-r2 |
| Chainguard | ceph-18-doc | 0 | 0 |
| Chainguard | ceph-18-doc | 0 | 18.2.7-r2 |
| Chainguard | ceph-18-libs | 0 | 0 |
| Chainguard | ceph-18-libs | 0 | 18.2.7-r2 |
| Chainguard | ceph-19 | 0 | 0 |
| Chainguard | ceph-19-deps | 0 | 0 |
| Chainguard | ceph-19-deps | 0 | 19.2.3-r14 |
| Chainguard | ceph-19-deps-fips | 0 | 0 |
| Chainguard | ceph-19-deps-fips | 0 | 19.2.3-r14 |
| Chainguard | ceph-19-dev | 0 | 0 |
| Chainguard | ceph-19-dev | 0 | 19.2.3-r13 |
| Chainguard | ceph-19-doc | 0 | 0 |
| Chainguard | ceph-19-doc | 0 | 19.2.3-r13 |
| Chainguard | ceph-19-libs | 0 | 0 |
| Chainguard | ceph-19-libs | 0 | 19.2.3-r13 |
| Chainguard | ceph-20 | 0 | 0 |
| Chainguard | ceph-20 | 0 | 20.3.0-r0 |
| Chainguard | ceph-20-dev | 0 | 0 |
| Chainguard | ceph-20-dev | 0 | 20.3.0-r0 |
| Chainguard | ceph-20-doc | 0 | 0 |
| Chainguard | ceph-20-doc | 0 | 20.3.0-r0 |
| Chainguard | ceph-20-libs | 0 | 0 |
| Chainguard | ceph-20-libs | 0 | 20.3.0-r0 |
| Chainguard | ceph-20.2 | 0 | 0 |
| Chainguard | ceph-dev | 0 | 0 |
| Chainguard | ceph-dev | 0 | 19.2.1-r0 |
| Chainguard | ceph-doc | 0 | 0 |
| Chainguard | ceph-doc | 0 | 19.2.1-r0 |
| Chainguard | ceph-libs | 0 | 0 |
| Chainguard | ceph-libs | 0 | 19.2.1-r0 |
| Debian:10 | ceph | 0 | 12.2.11+dfsg1-2.1+deb10u1 |
| Debian:11 | ceph | 0 | 14.2.4-1 |
| Debian:12 | ceph | 0 | 14.2.4-1 |
| Debian:13 | ceph | 0 | 14.2.4-1 |
| Red Hat:ceph_storage:3::el7 | ceph | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | ceph-base | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | ceph-common | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | ceph-debuginfo | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | ceph-fuse | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | ceph-mds | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | ceph-mgr | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | ceph-mon | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | ceph-osd | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | ceph-radosgw | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | ceph-selinux | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | ceph-test | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | libcephfs-devel | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | libcephfs2 | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | librados-devel | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | librados2 | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | libradosstriper1 | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | librbd-devel | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | librbd1 | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | librgw-devel | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | librgw2 | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | python-cephfs | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | python-rados | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | python-rbd | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | python-rgw | 0 | 2:12.2.12-48.el7cp |
| Red Hat:ceph_storage:3::el7 | rbd-mirror | 0 | 2:12.2.12-48.el7cp |
| SUSE:Enterprise Storage 6 | ceph | 0 | 14.2.2.349+g6716a1e448-3.9.1 |
| SUSE:Enterprise Storage 6 | ceph-iscsi | 0 | 3.3+1570532654.g93940a4-3.7.1 |
| SUSE:Enterprise Storage 6 | ses-manual_en | 0 | 6+git145.1558531-3.17.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP1 | ceph | 0 | 14.2.2.349+g6716a1e448-3.9.1 |
| Ubuntu:18.04:LTS | ceph | 0 | 12.2.12-0ubuntu0.18.04.2 |
| Wolfi | ceph | 0 | 0 |
| Wolfi | ceph | 0 | 19.2.1-r0 |
| Wolfi | ceph-19 | 0 | 0 |
| Wolfi | ceph-19-dev | 0 | 0 |
| Wolfi | ceph-19-dev | 0 | 19.2.3-r13 |
| Wolfi | ceph-19-doc | 0 | 0 |
| Wolfi | ceph-19-doc | 0 | 19.2.3-r13 |
| Wolfi | ceph-19-libs | 0 | 0 |
| Wolfi | ceph-19-libs | 0 | 19.2.3-r13 |
| Wolfi | ceph-20 | 0 | 0 |
| Wolfi | ceph-20 | 0 | 20.3.0-r0 |
| Wolfi | ceph-20-dev | 0 | 0 |
| Wolfi | ceph-20-dev | 0 | 20.3.0-r0 |
| Wolfi | ceph-20-doc | 0 | 0 |
| Wolfi | ceph-20-doc | 0 | 20.3.0-r0 |
| Wolfi | ceph-20-libs | 0 | 0 |
| Wolfi | ceph-20-libs | 0 | 20.3.0-r0 |
| Wolfi | ceph-20.2 | 0 | 0 |
| Wolfi | ceph-dev | 0 | 0 |
| Wolfi | ceph-dev | 0 | 19.2.1-r0 |
| Wolfi | ceph-doc | 0 | 0 |
| Wolfi | ceph-doc | 0 | 19.2.1-r0 |
| Wolfi | ceph-libs | 0 | 0 |
| Wolfi | ceph-libs | 0 | 19.2.1-r0 |
Related vulnerabilities
- CVE-2020-1700 A flaw was found in the way the Ceph RGW Beast front-end handles unexpected disconnects. Also affects ceph
- CVE-2023-43040 IBM Spectrum Fusion HCI 2.5.2 through 2.7.2 could allow an attacker to perform… Also affects ceph
- CVE-2016-5009 The handle_command function in mon/Monitor.cc in Ceph allows remote authenticated users… Also affects ceph
- CVE-2022-3854 A flaw was found in Ceph, relating to the URL processing on RGW backends. Also affects ceph
- CVE-2026-109618 PHP uses longjmp() for out-of-memory (OOM) errors to exit the current context and abort… CWE-755
- CVE-2026-109619 PHP has various global state that temporarily points into request memory. CWE-755
- CVE-2026-105757 vLLM is an inference and serving engine for large language models. CWE-755
- CVE-2026-102274 PyJWT is a Python implementation of JSON Web Token standards. CWE-755