远程控制木马(关于远程控制木马你应该知道的知识点)
“遥控木马”这个词总感觉很有年代感。作为安全行业的菜鸟,最初的启蒙是分析各种遥控器的受控端,了解这类恶意代码从行为到流量的发展变化。远程控制木马的分析在网上随处可见。所以本文从个人角度总结了一些对远程控制木马的认识,可能有所欠缺。欢迎交流学习。
从控制端熟悉远程控制木马的功能。
我第一次接触远程控制木马的时候,大概用过上百个远程控制软件的客户端。知道一个远程控制木马的功能,最直接的方法就是使用它。下面以GH0ST的美化版为例:
控制终端的界面功能非常清晰。首先要做的是生成一个受控终端的程序。通常,您可以设置在线IP/域名/网址等。,选择kill还是shell,选择进程注入、服务启动等驻留模式。有些遥控器可以设置密码对传输的数据进行加密,选择不同的图标等。:
这里,选择一个XP虚拟机作为演示的受控端。受控端运行生成的exe程序后,可以在界面中看到主机。Wireshark可用于捕获受控终端的在线流量。Gh0st远程控制的特点是TCP流量会包含GH0ST online字符串,后面是Zlib压缩的主机信息数据:
选择用于Gh0st远程控制的snort的以下规则:
alert tcp $HOME_NET any -> $EXTERNAL_NET any ( msg:\”MALWARE-CNC Win.Trojan.Gh0st variant outbound connection\”; flow:to_server,established; content:\”Gh0st\”,depth 5; content:\”|00 00 00|\”,within 3,distance 1; content:\”|00 00 78 9C|\”,within 4,distance 2; metadata:impact_flag red,policy balanced-ips drop,policy security-ips drop,ruleset community; reference:url,virustotal.com/en/file/a4fd37b8b9eabd0bfda7293acbb1b6c9f97f8cc3042f3f78ad2b11816e1f9a59/analysis/1425053730/; classtype:trojan-activity; sid:27964; rev:5; )
Gh0st的流量具有非常典型的特征。很多遥控器其实都是Gh0st源码改的,所以一般格式都不一样。一段识别码+Zlib压缩数据(你怎么知道是Zlib?zlib压缩的头标是\\x78\\x9c),通过这个特性可以在流量端检测到这些远程控制或者分析流量数据,这是目前大多数IDS/态势感知产品使用的方法之一。
在控制端,你可以看到联机的主机,然后执行一系列的操作。基本上,你可以在受控端做任何你想做的事情:
通过逆向理解远程控制木马
如果说使用它可以直观的了解远程控制木马的功能,那么逆向分析就是了解这些功能是如何实现的(当然源代码分析也是一种方法)。下面是最近抓取的一个远程控制DLL文件,作为例子简单分析一下。发现此DLL文件时,它正在作为服务运行:
ServiceMain先注册了一个窗口类“TOXHJ MYLOVE”,可耻,这个名字公然告诉大家我是木马:
然后创建一个线程,遍历整个流程,找到软件查杀:
然后注册服务,即在故障排除开始时看到正在运行的服务程序:
解密C&C服务器的域名“as3421363.vicp.cc”,并与域名进行通信,其中使用的API都是动态地址:
网络常用的几个API,如gethostbyname、connect、recv等。:
获取主机信息,通常包括磁盘、cpu、网卡、系统版本、安装的安全软件等信息。在此示例中,数据也由zlib压缩并发送:
接收控制端的命令,解析命令并执行相应的操作,粗略看一下远程控制木马支持的操作如文件操作、远程桌面、摄像头监控、键盘录音、录音、进程操作、远程CMD等。:
如果想知道每个功能的具体实现,可以具体分析一下。但一般在野生样本被捕获后,控制终端已经失去联系,通过动态调试无法运行相应的操作。如果有兴趣,可以自己生成一个受控终端,使用同一个网段的两个虚拟机进行动态调试。
为了分析远程控制木马的在线流量,这里修改了主机文件,捕获了在线包。可以看到数据段的结构和Gh0st很像,只是logo改成了Xjjhj,然后拼接压缩后的主机信息,heartbeat packet也直接用了logo字符串:
远程控制木马的开发
事实上,通过以上简单的分析,我们可以看出,传统的远程控制木马虽然功能丰富,但也存在一些缺陷:
1.协议单一,通常使用TCP协议传输数据,没有加密或加密算法很容易被解密;
2.系统具有单一驻留模式,如自启动、服务启动等。,容易被察觉;
3.木马文件特点强,功能多,导致文件大,容易被检测。
传统的远程控制木马在攻击中的隐蔽性不够,所以现在衍生出很多新的木马技术,比如注入、无文件、反沙盒、强迷惑、动态解密、反调试等手段层出不穷。在通信协议中,HTTPS和DNS隐蔽通道也被用来传输数据,其功能趋于简化,更有针对性,甚至没有交互,数据传输频率极低,已经演变成一种混合型木马。
但是,无论技术手段如何发展,只要数据通过网络传输,就会留下痕迹,还有很多未知的东西等待我们去发现。
“张承辉博客” 远程控制木马(关于远控木马你应该了解的知识点) https://www.zhangchenghui.com/192493