Hunt: find XCPE-backdoored Android TV boxes on your network by their HTTP bootstrap and MQTT check-ins to anyevonline.com and szbboys.com
From Google Threat Intelligence Group's Nov 2 analysis of the XCPE firmware backdoor:
- HTTP bootstrap:
http://mcstb.anyevonline[.]com:8000on MECOOL devices (system propertyro.mecool.device), otherwisehttp://stb[AndroidVersion][Type].anyevonline[.]com:8000. The device POSTs AES-encrypted hardware telemetry (serial, MAC, model, firmware) to/router/config/mqtt,/router/config/acsand/router/config/app. - MQTT C2: every sample Google analyzed used
mqtt.szbboys[.]com, topics shaped like/device/{model}/{chipId}/{action}. - Upload endpoint:
http://ott.szbboys[.]com:8000/cpe/file/upload. - Other tells: lookups of
ip-api[.]comand a Google STUN server from a TV box right after boot; module files pulled from operator-owned GitHub release pages. - On the device (if you can get adb access): packages
x.cpe,com.oemservice,com.abc.nexus, content providerscom.release.debug.providerandcom.oem.share.provider, and the global settingpackage_verifier_user_consentset to-1(Play Protect verification turned off).
Hunt ideas: search DNS and proxy logs for *.anyevonline.com and *.szbboys.com; flag outbound TCP 1883/8883 (MQTT) or HTTP to port 8000 from IoT or guest VLANs; and look for consumer media devices acting as proxy exit nodes (many unrelated inbound-initiated or long-lived outbound sessions). Because the domains are now seized, a hit tells you a box is infected, not that it is still controlled; the backdoor can be re-pointed, so remove the device rather than just blocking the domains.
Sources: Google Threat Intelligence Group: Shutting the Door on the XCPE Botnet (Nov 2) · Plume: XCPE botnet whitepaper