mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2026-05-27 21:48:14 +02:00
Memory Safety: High When netjack2_recv_data() receives a packet that doesn't match the expected data_stream or id, it logs "not our packet" and continues the loop. However, since the previous recv() used MSG_PEEK, the packet is not consumed from the socket buffer. This causes the loop to spin indefinitely on the same mismatched packet, consuming 100% CPU. A remote attacker on the same network can trigger this by sending a single crafted NetJack2 packet with a mismatched stream or id field, causing a denial of service on the audio processing thread. Fix by consuming (discarding) the mismatched packet with a non-peeking recv() before continuing the loop. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| daemon | ||
| examples | ||
| gst | ||
| modules | ||
| pipewire | ||
| tests | ||
| tools | ||
| meson.build | ||