CVE-2020-1700
Medium · 6.5CVSS
6.5
EPSS
2.4%
Published
Feb 7, 2020
CISA due date
—
Cloudanix analysis
A bug in a storage system's connection handling lets an authorized user deliberately overload the service until it stops accepting connections from anyone else.
- Exploitation
- Remote Authenticated
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Network Service
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Authenticated attacker triggers permanent socket connection leaks in radosgw via repeated unexpected disconnects, accumulating CLOSE_WAIT sockets until resource exhaustion occurs.
Why it matters to the business
Denial of service prevents legitimate users from accessing Ceph object storage, causing operational disruption and potential downtime until sockets are cleared or the service restarted.
How an attack unfolds
An authenticated user repeatedly initiates connections to the RGW Beast frontend and forces unexpected disconnects, causing the daemon to leak sockets; sustained abuse exhausts available resources and blocks new connections.
How to fix it
Upgrade Ceph to a release containing the socket-leak fix; apply vendor updates for Red Hat OpenShift Container Storage, openSUSE Leap, and Ubuntu Linux as they become available; restart radosgw after patching.
How to confirm the fix worked
Compare installed Ceph version against patched releases from upstream or distribution vendors; monitor netstat/ss output for persistent CLOSE_WAIT accumulation on radosgw ports; test service availability under load after upgrade.
Typical attack path
- Obtain valid RGW credentials
- Establish multiple concurrent connections to the Beast frontend
- Force unexpected disconnects on each connection
- Repeat the pattern at volume to accumulate leaked sockets
- Continue until CLOSE_WAIT backlog exhausts file descriptors or memory
How to detect it
Review radosgw logs for repeated disconnect patterns from the same authenticated accounts; inspect system socket tables for abnormal CLOSE_WAIT counts tied to the radosgw process; correlate with authentication events during suspected abuse windows.
- radosgw.*CLOSE_WAIT
- multiple unexpected disconnects from authenticated RGW user
- file descriptor exhaustion in radosgw logs
What your security team should do
- Prioritize patching Ceph and dependent distributions as soon as fixed packages are released
- Implement connection-rate limiting or authentication throttling on RGW endpoints
- Add monitoring alerts for socket backlog and file-descriptor exhaustion on storage nodes
The record
A flaw was found in the way the Ceph RGW Beast front-end handles unexpected disconnects. An authenticated attacker can abuse this flaw by making multiple disconnect attempts resulting in a permanent leak of a socket connection by radosgw. This flaw could lead to a denial of service condition by pile up of CLOSE_WAIT sockets, eventually leading to the exhaustion of available resources, preventing legitimate users from connecting to the system.
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.7-1 |
| Debian:12 | ceph | 0 | 14.2.7-1 |
| Debian:13 | ceph | 0 | 14.2.7-1 |
| SUSE:Enterprise Storage 6 | ceph | 0 | 14.2.5.382+g8881d33957-3.30.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP1 | ceph | 0 | 14.2.5.382+g8881d33957-3.30.1 |
| Ubuntu:18.04:LTS | ceph | 0 | 12.2.12-0ubuntu0.18.04.5 |
| 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 |
| openSUSE:Leap 15.1 | ceph | 0 | 14.2.5.382+g8881d33957-lp151.2.10.1 |
| openSUSE:Leap 15.1 | ceph-test | 0 | 14.2.5.382+g8881d33957-lp151.2.10.1 |
Related vulnerabilities
- CVE-2019-10222 A flaw was found in the Ceph RGW configuration with Beast as the front end handling… 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-113795 pypdf is a free and open-source pure-python PDF library. CWE-400
- CVE-2026-83400 Vulnerability in the Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise… CWE-400
- CVE-2026-112400 Pillow is a Python imaging library. CWE-400
- CVE-2026-111766 markdown-it is a Markdown parser. CWE-400