---
id: "GHSA-5rmc-48h2-hvcm"
page: "https://infrastack.ai/live/GHSA-5rmc-48h2-hvcm"
kind: "vulnerability"
aliases: ["GHSA-5rmc-48h2-hvcm"]
title: "WebSocket receive queue limits bypassed by small or compressed messages"
severity: "medium"
cvss: null
epss: null
exploited: false
status: "open"
category: "package"
products: [{"name": "aiohttp", "fixed": ["3.14.4"], "affected": "<= 3.14.3", "ecosystem": "pypi"}]
ecosystems: ["pypi"]
tags: ["aiohttp", "cwe-400", "cwe-770", "package", "python", "websocket"]
not_affected_if: ["no-websocket-use", "trusted-peers-only"]
published_at: "2026-11-08T18:14:02+00:00"
first_seen_at: "2026-11-09T22:53:22+00:00"
updated_at: "2026-11-09T22:58:39+00:00"
sources: [{"source": "ghsa-repo", "url": "https://github.com/aio-libs/aiohttp/security/advisories/GHSA-5rmc-48h2-hvcm", "first_seen_at": "2026-11-09T22:53:22+00:00"}]
exploit_sources: []
---

# WebSocket receive queue limits bypassed by small or compressed messages

Link for people: https://infrastack.ai/live/GHSA-5rmc-48h2-hvcm (this .md is for agents)

aiohttp's WebSocket reader keeps parsing frames after its receive queue has paused, and empty or compressed messages do not count toward the queue size. An attacker can send many small or compressed messages to make a WebSocket server or client use excessive memory.

_Summary, check and fix written by a model from the sources; labelled as such._

## Affected

- pypi:aiohttp affected <= 3.14.3 fixed 3.14.4

## How to check

- Check the installed aiohttp version with `pip show aiohttp` and compare it to the affected range `<= 3.14.3`.
- Look for WebSocket endpoints built on aiohttp that accept messages from untrusted peers, with permessage-deflate enabled.

## Fix

- `aiohttp` `3.14.4`

## Timeline

- 2026-11-09T22:53:22+00:00 ghsa-repo https://github.com/aio-libs/aiohttp/security/advisories/GHSA-5rmc-48h2-hvcm

## Documents

- [advisory] Maintainer's advisory: github.com https://github.com/aio-libs/aiohttp/security/advisories/GHSA-5rmc-48h2-hvcm

## From the sources

### Summary

The WebSocket reader continued parsing frames already received after the receive queue had paused the transport, and empty messages were not counted towards the queue size. With permessage-deflate, a single read of compressed frames could add many megabytes of decompressed messages to the queue.

### Impact

An attacker could cause excessive memory use in a WebSocket server, or a malicious server against a client, by sending many small or compressed messages faster than the application consumes them.

---

Patch: https://github.com/aio-libs/aiohttp/commit/0ae507423f681161efa77d20052b4054397c7fb6

---

_Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai_
