From 611881af105dbbcecbf6511cbf733a7f59d37fa9 Mon Sep 17 00:00:00 2001 From: Aurora Gaffney Date: Fri, 29 Aug 2025 14:35:16 -0400 Subject: [PATCH] refactor: return error when muxer receives zero-byte payload Fixes #1018 Signed-off-by: Aurora Gaffney --- muxer/muxer.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/muxer/muxer.go b/muxer/muxer.go index ea384770..ad958d59 100644 --- a/muxer/muxer.go +++ b/muxer/muxer.go @@ -313,6 +313,14 @@ func (m *Muxer) readLoop() { } return } + // Check for zero-byte payload + // This prevents certain types of DoS attacks + if header.PayloadLength == 0 { + m.sendError( + errors.New("received zero-byte segment payload"), + ) + return + } msg := &Segment{ SegmentHeader: header, Payload: make([]byte, header.PayloadLength),