mirror of
https://github.com/Buriburizaem0n/nezha_domains.git
synced 2026-09-19 17:50:12 +00:00
The inline magic check expressed the *invalid* form as \`byte0 != 0xff && byte1 != 0x05 && byte2 != 0xff && byte3 == 0x05\`, relying on && to detect a four-byte mismatch. Because && short-circuits, any payload whose byte0 happened to be 0xff was treated as a valid magic even if the remaining bytes did not match — almost every random payload slipped through and only the stream-UUID layer above stood between a caller with a valid agent secret and a live IOStream session. Extract the check into isValidIOStreamMagic stated positively (all four bytes must match) so short-circuit reasoning cannot reintroduce the bug. Co-authored-by: naiba/CloudCode <hi+cloudcode@nai.ba>