目录 最近这几天观察到了一个木马的网络通信特征,于是就打算通过代码实现针对该木马的检测过滤。刚开始学长提供了python编写的代码。但是在实际的工作中,每天所捕获的pcap包的数据总量很大,通常在5到15个G左右。这种情况下,python的运行时间极长,且占用大量的系统运行内存,甚至会出现卡死情况。于是我尝试用C去实现木马的过滤,因为C是偏底层的编程语言,可以自定义通信协议,所以其运行效率会更高。 一、木马通信特征 1.流量结构 该木马拥有其自定义的通信协议,通信数据包具有一定的结构,数据在构造后会通过异或XOR加密(加密密钥是第二个字节),部分命令会有附加数据(如上传文件),附加数据部分会通过GZIP方式压缩。 2.类C结构 struct packet_format{ char dec_xor[2]; char unknow1[4]; char constant_l; char random_32[32]; char command_type[2]; char unknow2[4]; char error_status[2]; char payload_length[4];...