RepoJournal
Go

@golang

Go and the standard library - backend infrastructure at scale

Keep up with Go in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

One email a day. Unsubscribe in one click.

Pick a date

Topics: Go Infrastructure Full archive →

The Wire · Showcase

SSH MALICIOUS SERVER CRASH, CORRUPT DATA MEMORY BOMBS PLUGGED ACROSS STDLIB

By RepoJournal · Filed · About Go

A single malformed packet from an SSH server crashes any Go client outright, while three separate stdlib bugs silently consume unbounded memory on corrupt input.

The SSH vulnerability [1] is the immediate threat: an attacker controlling the remote server can send a truncated exit-status payload that panics binary.BigEndian.Uint32, dropping your connection mid-flight with zero warning. This patches today.

Three memory bombs landed in quick succession across debug/dwarf, encoding/gob, and crypto internals. The debug/dwarf fix [2] stops endless loops when parsing corrupt DWARF data from invalid binaries, while encoding/gob now caps map allocation [5] to prevent adversarial input from consuming all available heap. Both rely on fuzzer findings rather than test cases, so expect more surface area to harden as real-world crashes bubble up.

On the compiler side, a critical bounds-check regression slipped into 1.24 [3]. The fix for zero-sized arrays was incomplete and missed nested types, meaning some index operations never got safety checks inserted. This one is subtle enough that it might ship in production before anyone notices.

Two smaller fixes round out the batch: cmd/go now properly returns non-zero exit status when tools are interrupted by signals [4] instead of pretending they succeeded, and the GC memory limit test on Darwin got loosened again because apparently the last two attempts weren't quite enough.

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] ssh: prevent malformed exit-status panic golang/crypto
  2. [2] debug/dwarf: report underflow error on failure to read a varint golang/go
  3. [3] cmd/compile: ensure evaluating array index expression golang/go
  4. [4] cmd/go: return non-zero when go tool is interrupted golang/go
  5. [5] encoding/gob: cap map size when decoding golang/go

Quick answers

What shipped in Go on May 26, 2026?
A single malformed packet from an SSH server crashes any Go client outright, while three separate stdlib bugs silently consume unbounded memory on corrupt input. In total, 8 commits landed.
What were the notable Go updates?
ssh: prevent malformed exit-status panic, debug/dwarf: report underflow error on failure to read a varint, and cmd/compile: ensure evaluating array index expression.

More from @golang

Daily updates, in your inbox

Follow Go

Keep up with Go in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

One email a day. Unsubscribe in one click. Read a past issue →

Elsewhere on the wire

Want every project, not just this one?