CVE-2026-31630 PUBLISHED

rxrpc: proc: size address buffers for %pISpc output

Assigner: Linux
Reserved: 09.03.2026 Published: 24.04.2026 Updated: 24.04.2026

In the Linux kernel, the following vulnerability has been resolved:

rxrpc: proc: size address buffers for %pISpc output

The AF_RXRPC procfs helpers format local and remote socket addresses into fixed 50-byte stack buffers with "%pISpc".

That is too small for the longest current-tree IPv6-with-port form the formatter can produce. In lib/vsprintf.c, the compressed IPv6 path uses a dotted-quad tail not only for v4mapped addresses, but also for ISATAP addresses via ipv6_addr_is_isatap().

As a result, a case such as

is possible with the current formatter. That is 50 visible characters, so 51 bytes including the trailing NUL, which does not fit in the existing char[50] buffers used by net/rxrpc/proc.c.

Size the buffers from the formatter's maximum textual form and switch the call sites to scnprintf().

Changes since v1: - correct the changelog to cite the actual maximum current-tree case explicitly - frame the proof around the ISATAP formatting path instead of the earlier mapped-v4 example

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 75b54cb57ca34cbe7a87c6ac757c55360a624590 to db297c78ce537c9ac96f0eda9b25ad72c8caefa9 (excl.)
  • affected from 75b54cb57ca34cbe7a87c6ac757c55360a624590 to 10ebed83f9f6414af4e85bc85ffaeda7effdd874 (excl.)
  • affected from 75b54cb57ca34cbe7a87c6ac757c55360a624590 to a44ce6aa2efb61fe44f2cfab72bb01544bbca272 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 4.9 is affected
  • unaffected from 0 to 4.9 (excl.)
  • unaffected from 6.18.23 to 6.18.* (incl.)
  • unaffected from 6.19.13 to 6.19.* (incl.)
  • unaffected from 7.0 to * (incl.)

References