Skip to content
OpenAdvisories

Description

quic-go is an implementation of the QUIC protocol in Go. An off-path attacker can inject an ICMP Packet Too Large packet. Since affected quic-go versions used IP_PMTUDISC_DO, the kernel would then return a "message too large" error on sendmsg, i.e. when quic-go attempts to send a packet that exceeds the MTU claimed in that ICMP packet. By setting this value to smaller than 1200 bytes (the minimum MTU for QUIC), the attacker can disrupt a QUIC connection. Crucially, this can be done after completion of the handshake, thereby circumventing any TCP fallback that might be implemented on the application layer (for example, many browsers fall back to HTTP over TCP if they're unable to establish a QUIC connection). The attacker needs to at least know the client's IP and port tuple to mount an attack. This vulnerability is fixed in 0.48.2.

Affected products

VendorProductAffectedFixed
quic-go quic-go < 0.48.2 —

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 golang-github-lucas-clemente-quic-go 0.50.0-1 —
Debian 13 golang-github-lucas-clemente-quic-go 0.50.0-1 —
Debian 12 golang-github-lucas-clemente-quic-go No fix yet —
ReleasePackageFixed inAdvisory
Ubuntu 26.10 golang-github-lucas-clemente-quic-go No fix yet —
Ubuntu 26.04 LTS golang-github-lucas-clemente-quic-go No fix yet —
Ubuntu 25.10 golang-github-lucas-clemente-quic-go No fix yet —
Ubuntu 24.04 LTS golang-github-lucas-clemente-quic-go No fix yet —
Ubuntu 22.04 LTS golang-github-lucas-clemente-quic-go No fix yet —
ReleasePackageFixed inAdvisory
Red Hat Ansible Automation Platform Inside 2 receptor +1 1.5.1-2.el8ap RHSA-2024:10766
Red Hat Ansible Automation Platform Developer 2 receptor +1 1.5.1-2.el8ap RHSA-2024:10766
Red Hat Ansible Automation Platform 2 automation-controller-venv-tower 4.6.3-1.el8ap RHSA-2024:10766
Red Hat Ansible Automation Platform 2 receptor +1 1.5.1-2.el8ap RHSA-2024:10766
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed govulncheck-vulndb 0.0.20241209T183251-1.1 openSUSE-SU-2024:14567-1
openSUSE Tumbleweed teleport 17.0.3-1.1 openSUSE-SU-2024:14544-1

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 3 coredns 1.11.4-1 —
Azure Linux 2 (CBL-Mariner) coredns 1.11.1-16 —

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling buf 1.47.2-r1 —
Wolfi rolling caddy +2 2.8.4-r4 —
Wolfi rolling cloudflared 2024.12.1-r0 —
Wolfi rolling frp 0.61.0-r1 —
Wolfi rolling k3s +2 1.31.3.1-r0 —
Wolfi rolling kubernetes-dns-node-cache 1.23.1-r6 —
Wolfi rolling q 0.19.9-r2 —
Wolfi rolling spegel +1 0.0.27-r1 —

Public exploits

Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.

Third-party code, not reviewed by us. Public PoCs are sometimes fake or contain malware. Read the code first and run it only in an isolated lab, against systems you are authorised to test.

GitHub 1 repository

Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.

Affected packages

EcosystemPackageAffectedFixedRecord
Go github.com/quic-go/quic-go < 0.48.2 0.48.2 GHSA-px8v-pp82-rcvr

Advisories 3

References