The analyzed binary connects to 5.175.140.250:9111 using plaintext TCP. No TLS, authentication handshake, encoding, or obfuscation was observed on the C2 connection. After connecting, the malware reads the socket one line at a time with bufio.Scanner.Scan(). Each line is split into whitespace-delimited fields with strings.Fields(), with the first field determining the command.
Matched commands launch the corresponding Botnet_Methods function in a new Go goroutine, passing parameters such as the target and attack duration.
The command set includes:
KILL: terminates and removes the malware
STOP: stops an active attack and resets the attack state
Persist: invokes the persistence routine
dns,ovh, fort, game, gbps, and https: launches different attack methods
bypass, crash, freez, and priv7: launches additional attack methods
discord and fivem: targets Discord and FiveM infrastructure
ppsraw,udppps, raw-udp, raw-tcp, and raw-ack: launches packet- or transport-level floods
tlsplus and tlsplusbypass: launches TLS-based attack variants
Additional methods are present in the binary even though they were not individually traced to a literal C2 command, including TCPFlood, UdpFlood, TLSFlood, PPSFlood, and Minecraft.
There was no evidence of multiple fallback C2 hosts, C2 encryption, or an authentication handshake in the analyzed sample. However, the C2 address is not necessarily fixed across every build. Compile-time configuration can replace main.ServerIP, allowing the operator to build the malware with a different controller (Figure 7).