FINDING · DETECTION
Two distinct GFW DNS injector types respond to blocked domains simultaneously, returning duplicate responses per query. They are distinguishable by DNS response flags: the cyclic-ordering injector sets flags 0x8400 (AA bit) when query RD=0, while the second injector sets 0x8180. They also differ in DNS parser behavior: the 0x8180 injector responds to queries using an embedded literal dot (0x2e label separator), while the cyclic injector does not—reversing a behavior documented in the Wallbleed paper.
From 2025-wkrp-predictable-ip-address — The predictable IP address sequences of one type of GFW DNS injector · §Filter DNS responses / wkrp comment on two injector types · 2025 · net4people/bbs
Implications
- Setting the RD bit in DNS queries (as standard resolvers do) causes both injectors to respond with flags 0x8180, making them indistinguishable by flags alone; circumvention tools probing GFW behavior should use RD=0 to discriminate injector types.
- The embedded-dot parsing difference provides a secondary oracle to fingerprint injector type without relying on flags.
Tags
Extracted by claude-sonnet-4-6 — review before relying.