区块链网站|NFTS 门罗币(XMR) 矿机悄然崛起的僵尸网络:玩服务器挖百万门罗币

矿机悄然崛起的僵尸网络:玩服务器挖百万门罗币

广告位

悄然崛起的挖矿机僵尸网络:打服务器挖价值百万门罗币

第一部分背景

360互联网安全中心检测到一个僵尸网络,利用被黑的服务器挖掘门罗币。高峰时,僵尸网络控制的服务器数量在一天内达到2万多台。僵尸网络建立初期,利用“永恒之蓝”漏洞攻击武器作为僵尸网络开发的基础,入侵了一定数量的计算机。之后,这些电脑扫描其他电脑的1433端口(msSQL服务端口),试图爆破目标电脑的msSQL服务,一旦爆破成功,就登录SQL Server执行恶意代码。目标计算机被僵尸网络控制后,还会通过1433端口入侵其他计算机,因此僵尸网络会不断扩大控制范围,最终形成现在的规模。

僵尸网络的传播离不开强大的僵尸程序。通过代码同源性可以发现,这个Bot程序家族的诞生最早可以追溯到2014年。从2014年到2017年,Bot计划进行了多次更新。最早的版本只是简单的入侵和远程控制。从2017年4月版本开始,Bot程序增加了多种针对不同协议的扫描和爆破模块,实现了一套针对msSQL的“入侵和传播”攻击模块。Bot程序的版本替换和传播如下图所示。(图中xx.x.x.x.x(x)表示Bot程序的版本,例如17.1.0.0.2(1)表示2017年编译的Bot程序变体1的1.0.0.2版本)。

图1-1 BOT程序版本更换和感染量概述

从图1-1可以看出,Bot程序的传播在4月底开始爆发,也就是作者利用“永恒之蓝”漏洞攻击武器建立僵尸网络的时间。另外,Bot程序有完善的更新系统。当Bot程序检测到有新版本发布时,会自动更新到最新版本。从图1中不难看出,新版本的传播增加后,旧版本的传播相应减少。

目前Bot计划的主要目的是安装门罗币矿机,利用服务器资源进行开采。截至目前,笔者的门罗币钱包已达1975枚门罗币,目前约合人民币167万元。

图1-2作者的梦露硬币钱包概述

Bot程序高度模块化,集成了许多不同的功能,并具有完善的更新和持久化机制。

对僵尸程序的分析将有助于理解这种僵尸网络的传播机制。本文将通过对僵尸程序的详细分析来探究僵尸网络的工作原理,并讨论服务器在面对僵尸网络时需要采取的预防措施和防御策略。

第二部分是Bot项目分析。

本文选取2017年4月Bot程序编译的1.0.0.2版本作为分析样本,该版本为MD5:10 ace 2e 06 c 8 b 5656d 38 EB 2 e 6 E4 f 079。

Bot程序由六个模块组成:主模块、更新模块、扫描模块、破解模块、ServerAgent模块和cService模块,这六个模块相互联系,相互配合。下面将分析每个模块执行的功能。

主模块分析出Bot程序是以控制台的形式存在的。在介绍主模块之前,先介绍一下Bot程序接收到的启动参数以及参数对应的功能。

表2-1-1 BOT程序接收的参数及其对应的函数

这些启动参数符合以下规则:

1.当“-start”、“-stop”、“-create”和“-delete”中有多个参数时,只有第一个参数有效,因此作者引入“-run”参数和“-create”参数来完成创建和启动服务的操作。

2.“-delete”参数将在删除Bot服务之前关闭它。

3.如果未指定“-syn”参数,默认扫描程序是TCP_CONNECT模式。

4.当\”-srv \”和\”-cli \”同时存在时,只有第一个参数有效,当二者都不存在时,\”-srv \”是默认参数。

5.当程序启动参数包含“-s”时,主模块将作为服务执行,否则主模块将作为控制台执行。

主模块主要是做一些准备工作,配置和启用其他模块。在节目准备方面,主要包括以下几个部分。

(1)获取系统信息。

图2-1-1获取系统信息

(2)确定系统类型是否为服务器。

图2-1-2判断系统类型

(3)结束并禁用网络列表服务和网络位置感知。网络列表服务用于识别计算机连接的网络,收集和存储这些网络的属性,并在这些属性发生变化时通知应用程序;网络位置感知用于收集和保存网络配置和位置信息,并在信息发生变化时通知应用程序。Bot程序关闭并禁用这些服务,以防止自己的网络通信被记录。

图2-1-3结束并禁用网络列表服务和网络位置感知。

(4)结束并禁用SharedAccess和MpsSvc(互联网连接共享和防火墙服务)以保证Bot程序的正常网络通信,并删除日志文件。

图2-1-4结束和禁用SharedAccess和MpsSvc

初始化后,主模块将创建一个新线程来执行更新模块。更新模块检查Bot程序的版本,并根据情况进行更新。同时,主模块还作为扫描器模块、破解者模块和服务器代理模块的入口。

更新模块分析更新模块是Bot程序的自我更新模块。当程序执行主模块时,它将创建一个线程来执行更新模块,以进行版本检查和必要的更新。更新模块每6小时执行一次更新检查。

图2-2-1创建执行更新模块的线程

图2-2-2调用睡眠函数来周期性地执行更新模块。

检查更新时,更新模块首先获取程序的当前版本号,然后通过博客地址“http://blog . Sina . com . cn/s/blog _ 16fb 721 c 50102 x 6 HW . html”获取加密后的CC ip地址。加密后的ip地址去掉了头尾分隔符(* * *和@ @),经过base64解密,与0x36异或后得到真实的ip地址(本例中CC ip地址为67.229.144.218,以下简称“ip”)。

http://ip:8888/ver.txt存储Bot程序的最新版本号,更新模块读取版本号并与当前Bot程序的版本号进行比较。当两者相同时,认为程序已经更新到最新版本,后续功能继续;当它们不同时,程序被更新。

图2-2-4 Bot程序版本与最新版本号对比

图2-2-5最新版本号

如果Bot程序没有更新到最新版本,请更新它。Bot程序的最新版本可通过路径C://windows/system下的更新程序cabs.exe获得。如果cabs.exe不存在,Bot程序会从http://ip:8888/ups.rar下载cab.exe并启动程序更新。

图2-2-5下载更新程序cab.exe并开始更新。

Cabs.exe将判断当前计算机系统是否是Windows Server,只有当当前计算机系统是Windows Server时,才会执行更新。

图2-2-6判断当前系统是否是Windows Server。

如果当前电脑系统是Windows Server,访问http://ip:8888/update.txt获取最新下载列表,将下载列表下载到c:\\\\windows\\\\system的路径下,命名为upslist.txt。

图2-2-7下载下载列表

下载列表包含两个文件,ps.jpg和my1.html。

图2-2-8下载列表内容

Ps.jpg是一张末尾拼接了PE文件的图片。PE文件是Bot程序的最新版本。

图2-2-9包含了最新版本的Bot程序的图片。

图2-2-10图片中监控到的PE文件特征

My1.html是一个批处理脚本,功能和Cracker:mssql模块发布的批处理脚本123.dat基本相同,主要是创建一些需要的文件夹,为后期的Cracker模块配置环境。

下载完成后,cabs.exe将结束Bot程序的进程和服务,更新相关文件后重新启动Bot进程和服务。

扫描仪模块分析扫描仪模块由mass can(GitHub:https://GitHub . com/robertdavidgraham/mass can)修改而来。Masscan是一种快速灵活的端口扫描器,在windows下每秒可以传送30万个数据包。

在调用扫描器模块进行扫描之前,Bot程序会配置一个excludefile,指定ip段的黑名单,不扫描这个范围内的ip地址。ip黑名单以字符串的形式存储在Bot程序的资源部分。scanner模块在临时文件夹中创建一个exclu fille,读取资源后将ip黑名单写入exclu fille。

图2-3-1读取ip黑名单资源并将它们写入excludefile

在2017年4月编译的1.0.0.2版本和2017年5月编译的1.0.0.3版本的一个变体中没有发现ip黑名单,在5月编译的1.0.0.3版本的另一个变体中发现了ip黑名单。

图2-3-2存储在Bot程序资源部分的ip黑名单

对于每个A类ip,扫描器模块排除一些B段。因为全网扫描容易被监控,排除部分ip地址可以降低被发现的风险。

图2-3-3扫描器模块排除部分ip地址后扫描整个网络。

扫描仪模块可以扫描的端口包括端口1433、端口3306、端口135、端口22、端口445、端口23、端口80和端口3389。

图2-3-4扫描仪模块扫描的端口

扫描仪模块可以以两种模式扫描端口,即TCP_SYN扫描和TCP_CONNECT扫描。使用哪种扫描模式由参数“-syn”决定。如果启动参数包含“-syn”,选择使用TCP_SYN模式进行端口扫描,否则选择TCP_CONNECT模式进行端口扫描。端口扫描选择TCP_SYN模式时,Bot程序只发送SYN帧,端口打开响应SYNACK帧,端口关闭响应RST帧。端口扫描选择TCP_CONNECT模式时,Bot程序尝试连接目标端口,如果端口打开则连接成功,否则连接失败。

Scanner模块创建的扫描线程的最大数量由“-t”参数决定,“-t”的最大值是1800。扫描仪模块创建扫描线程时,会同时创建一个名为“CrackerWMI”的线程。但是在Bot程序发送的数据包中没有找到目的端口为135(WMI服务使用的端口)的数据包,可能是作者预留的功能不完善。

图2-3-5两种不同的扫描模式

Scanner模块会记录特定端口的ip地址,并与ServerAgent模块和Cracker模块交互,完成“端口扫描爆破入侵”的一系列工作。

服务器代理模块分析服务器代理模块由两部分组成。一种是将扫描结果发送给CC;二是相应配置端口扫描和爆破。

ServerAgent模块在scanner模块的扫描过程中连接CC。当scanner模块扫描到开放端口时,ServerAgent模块会将相应的ip地址和端口号发送给CC。

图2-4-1服务器代理模块连接CC

此外,ServerAgent模块下载密码字典,并为Cracker模块配置密码字典。当扫描器模块扫描到一个ip地址的特定端口是开放的,就会通过字典炸开。字典的下载地址为http://IP: 8888/wpd.dat,下载完成后,ServerAgent模块会从http://ip:8888/wpdmd5.txt中获取密码字典的正确md5值,并与下载的字典wpd.dat的MD5值进行比较,确定下载文件的正确性。下载的密码字典wpd.dat被加密,ServerAgent模块读取密钥“cm9vdcvd2q=”,用base64解密密钥,用它解密wpt.dat.解密后的wpd.dat部分如下图所示。

图2-4-2密码字典的一部分

Wpd.dat实际上是一个xml文件,包含了不同入侵方式执行的mysql、mssql、telnet、wmi、ssh、rdp、shell的密码字典。此外,wpd.dat中有一个名为ports的项,当该项的子项值为1时,ServerAgent模块将配置scanner模块来扫描该子项对应的端口。

图2-4-3端口键概述

在默认的wpd.dat中,只有mssql子项的值设置为1,所以scanner模块只扫描mssql服务对应的端口(端口号1433)。黑客可以通过配置wpd.dat文件来增加、减少和修改扫描端口的数量和类别。

图2-4-4从抓包数据中发现,Bot程序只扫描1433端口。

有趣的是,ServerAgent模块选择随机的ip段作为每次扫描的ip范围,这与mirai僵尸网络非常相似。如下图,get_random_ip函数生成的随机ip段是220.176.171.93~220.182.171.87,所以扫描器模块在本轮扫描中扫描这个ip段。

图2-4-5 ServerAgent模块计算并选择随机ip段。

图2-4-6测试中生成的随机ip段

图2-4-7从抓包数据中发现,Bot程序在本轮扫描中扫描其随机生成的ip段。

破解模块分析

破解模块是Bot程序中最重要的模块。该模块用于入侵目标计算机,并在目标计算机上执行恶意代码。破解模块分为几个小模块,包括:破解:CCTV,破解:mssql,破解:RDP,破解:Telnet。根据入侵端口的不同,黑客模块提供了不同的攻击方式。下面将描述每种攻击的实现。

5.1破解程序:mssql

因为Bot程序的默认密码字典wpd.dat指定msSQL为扫描服务,所以Cracker:mssql模块是所有Cracker模块中最完整的。此模块执行的恶意操作可以在大多数受感染服务器的msSQL服务中找到。

Cracker:mssql模块首先使用爆破字典爆破目标的mssql服务。如果目标爆炸成功,请登录SQL Server执行下一步操作。

登录SQL Server后,需要获得在SQL Server中执行shell的权限,所以Cracker:mssql模块试图通过各种方式获得执行shell的权限,包括:

还原xp_cmdshell。

图2-5-1还原xp_cmdshell

打开被禁的xp_cmdshell。

图2-5-2打开xp_cmdshell

删除xp_cmdshell后,使用SP_OACreate执行shell。

图2-5-3使用SP_OACreate执行shell

打开CLR enabled选项,并使用SQL Server CLR执行外壳程序。

图2-5-4打开CLR启用选项

注册regsvr32.dll执行远程代码所需的组件,并使用regsvr32.dll来执行外壳。

图2-5-5注册相关组件

通过沙箱执行外壳。

2-5-6通过沙箱执行外壳

打开SQL代理服务并使用SQL代理服务执行外壳程序。

图2-5-7打开SQL代理服务

cracker:MSSQL模块执行的主要功能主要包括以下几个方面:

在c:\\\\windows\\system32\\wbem下创建一个批处理文件dat,并将内容写入该文件。

图2-5-8创建123.bat

批处理文件执行以下功能:为运行某些程序所涉及的文件和文件夹设置权限;使用regsvr32.dll执行远程代码;判断item.dat是否存在,如果存在,调用rundll32执行程序。Item.dat是由PC share(https://github . com/I suhao/PC share)修改而来的远程控制程序,CC通过item.dat控制Bot.

创建ini文件并将内容写入文件。

图2-5-9创建PerfStringse.ini

该文件是一个组策略模板文件,主要禁止一些涉案文件的访问权限。创建模板文件后,调用secedit.exe配置组策略。

图2-5-10呼叫secedit.exe配置组策略。

在c:\\\\windows\\system下创建一个文件dvr,将内容写入文件中。

图2-5-11创建myusa.dvr

Myusa.dvr是一个ftp下载脚本,主要作用是将down.mys2016.info中的文件1.dat下载到本地c:\\\\windows\\system路径,命名为myusago.dvr;将1.bat下载到本地c:\\\\windows\\system路径,并将其命名为backs.bat

Myusago.dvr也是ftp下载脚本,从down.mys2016.info下载多个文件到本地;Backs.bat用于记录系统时间并写入1.txt

图2-5-12 myusago.dvr内容

下载的文件中,item.dat是CC用来控制Bot的远程控制软件;Ms.rar其实就是cab.exe,Bot程序的更新程序;MSSQL模块发布的Ss.bat和cracker: 123.bat是同一个文件;Op7key.rar的文件没有找到,而且猜测类似于爆破词典。

从myusago.dvr下载的文件中不难看出,Bot程序不仅执行Cracker:mssql模块中硬编码的恶意代码,还通过云端下载相应的恶意程序,保证了与Bot程序关联的恶意代码能够持久存在。在分析过程中,我们发现用于环境配置和程序运行控制的123.bat批处理脚本更新最为频繁,自2017年4月以来更新超过10次。

Myusago.dvr和myusa.dvr将作为ftp参数写入命令行,并添加到SQL代理的作业中,每天执行一次。

用参数“-syn 1000”将Bot程序添加到SQL代理的作业中。每次SQL代理启动时,Bot程序都会启动。

图2-5-13将Bot程序添加到SQL代理作业

作为作业,每20分钟运行一次c:\\ \\ progra ~ 1 \\ main soft \\ install.exe。这个程序是一个通过挂机来赚取积分的软件。

图2-5-14 install.exe作业的形式。

以作业的形式每20分钟执行一次C:\\\\windows\\debug、C:\\\\Progra~1\\\\shengda、C:\\\\Progra~1\\\\kugou2010路径下的所有exe。从我们的监测中发现,这些路径中存在着Bot程序和能够给黑客带来直接利益的程序所释放的挖矿者,黑客可以通过定期启动这些程序来保证源源不断的利益。

图2-5-15定期执行C:\\\\windows\\debug下的exe。

图2-5-16定期执行C:\\\\Progra~1\\\\shengda下的exe。

图2-5-17定期执行C:\\\\Progra~1\\\\kugou2010下的exe。

创建一个ftp下载脚本msinfo.dat,将down.mys2016.info中的文件下载到C:\\\\windows\\debug的路径下,命名为bss.exe。之后通过批处理脚本msinfo.bat调用ftp执行下载脚本。下载完成后,bss.exe启动,这两个脚本被删除。Bss.exe被怀疑是一个远程控制特洛伊木马。

图2-5-18 msinfo.dat内容

图2-5-19 msinfo.bat内容

在启动项中添加dat和123.bat。

图2-5-20将item.dat添加到启动项中。

图2-5-21将123.bat添加到启动项中。

确认权限后,删除SQL用户,设置SQL SA(超级管理员)账号和密码,同时添加多个SQL账号。完成这个操作后,黑客正式接管了电脑的SQL Server,管理员无法再通过之前的账号登录SQL Server。

图2-5-22添加SQL SA

Cracker:mssql模块还通过SQL Server执行多段外壳代码。绝大部分shellcodes都是以SQL代理的作业的形式存在,定期执行。

shellcode的第一段使用wmi中的ActiveScriptEventConsumer类来执行脚本代码。脚本读取http://www.cyg2016.xyz:8888/test.html网页内容,根据网页内容获取第二组网站,下载文件并执行。

图2-5-23第一段shellcode内容

下载的文件包括更新程序cabs.exe和挖掘机lsmosee.exe。digger由XMR-STAK(GitHub:https://github.com/fireice-uk/xmr-stak-cpu)修改而来,编译成32位格式。作者给这个挖掘机加了一个模块。当需要64位挖掘器时,该模块将从CC下载64位挖掘器lsmose.exe并在本地执行。在此示例中,32位miner的路径是“C:\\\\windows\\help”,而64位miner的路径更改为“C:\\\\windows\\debug”。因为作者添加了SQL代理的作业,所以每20分钟执行一次“C:\\\\windows\\debug”路径下的exe文件。推测作者将矿机保存在这个目录下,是为了保证矿机的稳定运行。

图2-5-24下载矿机并更新程序

第二段shellcode使用js脚本执行恶意代码,脚本功能与第一段shellcode中的jscript代码相同。

图2-5-25第二段外壳代码内容

在第三段中,shellcode还使用wmi脚本执行jscript代码,执行与创建的批处理文件123.bat相同的功能,猜测作者为防止文件123.bat被杀毒软件清除而实施的备份计划。

图2-5-26第三段中的外壳代码内容

第四段shellcode是第三段shellcode的js版本。不难发现,作者为每一段shellcode都准备了wmi和js版本,以保证脚本执行的稳定性。

图2-5-27第四段中的外壳代码内容

在第五段中,通过恢复cmdshell和SP_OACreate,可以由SQL Server执行shell。推测作者可以通过Job定期执行这个shell,保证shell的长期生存。

图2-5-28第五段中的外壳代码内容

第六段,shellcode删除路径c:\\ \\ documents and settings \\ default user \\ local settings \\ temporary internet files \\ content . ie5中的文件,由于下载文件时会在该目录中留下相应的tmp文件,所以作者此举是为了防止用户通过该目录发现可疑文件,可见作者在清理痕迹方面非常用心。

图2-5-29第六段中的外壳代码内容

在第七段中,shellcode使用js脚本访问http://www.cyg2016.xyz:8888/kill.html.这个页面是一个文件名列表。脚本搜索系统中是否存在该页面返回的同名文件,如果存在,则结束相应的进程,删除该文件。这些文档大多是其他入侵者发布的挖掘者。

图2-5-30第七段中的外壳代码内容

通过这些文件名,我们发现了一个有趣的现象。被删除的文件中包含了一些与BOT程序发布的挖矿者文件名非常相似的文件,比如C: \\ \\ Windows \\ debug \\ lsmosee.exe(Bot程序发布的挖矿者是c:\\\\windows\\help\\lsmosee.exe和C: \\ \\ Windows \\ debug \\不清楚作者是通过这种方式更新淘汰了老挖矿者,还是其他入侵者利用了Bot程序定期执行C:\\ \\ Windows \\ debug路径下程序的特性。

图2-5-31要删除的文件列表

第八段,shellcode在启动项中加入了123.bat,此处不再赘述。

第九段,shellcode将文件从http://down.mys2016.info:280下载到C:\\\\WINDOWS路径,命名为ps.exe。PsExec实际上是PsExec,一个强大的远程执行工具。黑客将这一工具部署在每一台入侵的电脑中,使每一台电脑都成为控制终端,方便地构建一个巨大的僵尸网络。

图2-5-32第九段中的外壳代码内容

第十段shellcode主要是完成SQL赋能的一系列操作。

图2-5-33第十段中的外壳代码内容

shellcode的第十一段使用SQL Server CLR来执行shell的有效载荷,从中可以发现它访问http://www.cyg2016.xyz:8888/clr.txt并执行本页返回的内容。

图2-5-34有效载荷的一部分

这个页面和http://www.cyg2016.xyz:8888/test.html's,的一样,就是把更新程序和矿机下载到电脑上运行。

Cracker:mssql模块完成了Bot程序的几乎所有功能,包括更新、挖掘、清除相似程序、调度任务、设置SQL Server管理员帐号等。因为mssql是作者目前密码字典中唯一的攻击目标,所以Cracker:mssql模块如此完美也是可以理解的。如果作者以后开启其他攻击方式,其他破解者模块会变得更加完善。

黑客:远程登录

Cracker:Telnet模块是除了Cracker:mssql模块之外比较完善的模块。作者充分利用mirai僵尸网络的优势,搭建了一个类似mirai的Telnet入侵模块。

在执行Cracker:Telnet模块之前,Bot程序在ServerAgent模块中配置Telnet入侵攻击的有效载荷。ServerAgent模块将根据不同的平台架构从资源段中读取有效载荷,并将其转换为十六进制字节码。

图2-5-35从资源段读取有效负载

在有效载荷中,我们发现了一些与mirai相关的标志。通过对比,我们发现Bot程序使用的有效载荷是mirai僵尸网络的有效载荷(github:https://github . com/jgamblin/Mirai未来组合-source-code/tree/master/loader/bins)。这些有效载荷适用于不同平台架构(arm、arm7、m68k、mips、mpsl、ppc、sh4、spc、x86)。

图2-5-36有效载荷中mirai的相关标识

除了和mirai一样的有效载荷,Cracker:Telnet模块基本上是由mirai源代码修改而来,包括密码爆炸功能和入侵功能。

图2-5-37黑客:telnet模块中的mirai功能

在Telnet入侵之前,Mirai未来组合将配置一个ip地址作为报告服务器的地址,用于返回扫描结果。在分析中,我们还发现了一个疑似报表服务器的ip地址。如果Bot程序的启动参数包含“-srv”,ServerAgent模块将从密码字典中读取名为telnetip的子项的键值,这是一个ip地址,然后传递给Cracker:Telnet模块。如果启动参数包含“-cli”,Bot程序将从当前目录下的wpdconfig.ini文件中读取ip地址。

图2-5-38密码字典中的报表服务器地址

因为Cracker:Telnet模块和mirai差不多,这里就不赘述了。感兴趣的读者可以查看mirai源代码(Github:https://Github . com/jgamblin/Mirai未来组合-Source-Code)。

RDP

破解者:RDP模块由九头蛇(https://github . com/vanhauser-thc/thc-Hydra)的RDP部分修改而来。Hydra是一个强大的暴力破解工具,支持各种网络服务。黑客:rdp模块在其源代码中使用rdp.c文件来攻击具有RDP服务端口的计算机。与Cracker:mssql模块和Cracker:Telnet模块不同,Cracker:RDP模块只进行爆破,没有任何入侵和代码执行功能。

图2-5-39破解程序:RDP模块扫描端口

饼干:闭路电视

破解者:闭路电视模块是闭路电视摄像头入侵模块。该模块将向http://target tip:port/shell发送消息?(的内容.是用户名和密码),一旦请求返回的状态值不是400、401、403、404或500,就认为该ip地址和端口号对应的CCTV摄像头可以被入侵。

图2-5-40破解程序:闭路电视模块扫描闭路电视摄像机

由于密码字典wpd.dat中没有配置与CCTV相关的键值,因此推测该模块与Cracker:Telnet模块结合使用。因为mirai包含识别特定IOT设备的代码,而Cracker:Telnet模块是由mirai修改而来,所以推测当Cracker:Telnet模块发现某个设备是CCTV摄像头时,就会通过Cracker:CCTV模块入侵。

其他模块

在Bot程序的早期版本(2016年10月编译的版本)中也发现了Cracker:MySQL模块、Cracker:SSH模块和Cracker:WMI模块。这些模块的功能是在被入侵的计算机中执行外壳。

图2-5-41破解程序:MySQL模块

图2-5-41破解程序:WMI模块

图2-5-41破解程序:WMI模块

但是,这些模块在后来的版本中被删除了,具有简单功能的Cracker:mssql模块在后来的版本中得到了改进。

服务模块分析

CService模块用于管理Bot服务,Bot服务是以服务形式出现的Bot程序。

当Bot程序的启动参数包含“-create”时,cService模块创建一个名为“xWinWpdSrv”的服务,该服务以“-SSYN 1500”作为启动参数启动Bot程序。

图2-6-1创建Bot服务

当Bot程序的启动参数包含“-delete”时,cService模块删除“xWinWpdSrv”服务。

图2-6-2删除Bot服务

当Bot程序的启动参数包含“-start”时,cService模块启动“xWinWpdSrv”服务。

图2-6-3启动Bot服务

当Bot程序的启动参数包含“-stop”时,cService模块停止“xWinWpdSrv”服务。

图2-6-4停止Bot服务

Bot程序模块很多,模块之间联系紧密,相互配合。此外,Bot程序与其他组件相辅相成,确保攻击者对计算机的持久控制和僵尸网络的持续增长。下面用一个图来描述Bot程序和其他组件之间的关系。

图2-6-5 BOT程序与其他组件的关系

第三部分答辩总结

从目前僵尸网络的攻击重点来看,防止其通过1433端口入侵电脑是非常必要的。另外,还有很多Bot程序的攻击手段还没有被使用,这些攻击手段可能在未来的某一天被开启,所以要防范可能的攻击。对此,我们总结了以下防御策略:

1.对于未被入侵的服务器,注意msSQL、RDP、Telnet等服务的弱密码问题。如果这些服务设置了弱密码,需要尽快修改;

2.不要随意开通不需要使用的服务。开放服务是黑客攻击的前提。对于必须使用的服务,注意相关服务的弱密码问题;

3.请特别注意445端口的打开。因为黑客已经利用永恒之蓝漏洞入侵电脑,不排除黑客还会故技重施。及时修补和更新操作系统是非常必要的。

4.关注服务器的运行状态,关注CPU利用率,进程列表,网络流量,可以及时发现系统中的异常。另外,注意系统账号,禁用不必要的账号。

5.对于摄像头持有者,建议修改默认密码,防止黑客直接用默认密码爆破。

目前,僵尸网络主要依靠端口扫描和弱密码爆破进行传播,但它在出现之初就使用“永恒之蓝”漏洞攻击武器入侵了一定数量的计算机,这说明它对最新的漏洞利用和攻击手段有着快速的掌握,因此需要时刻警惕它可能发动的重大攻击。

附录

相关文件MD5

相关的ip地址和域名

密码字典

原创文章,作者:360安全,转载自:http://www.mottoin.com/article/reverse/105241.html.

广告位
本文来自网络,不代表区块链网站|NFTS立场,转载请注明出处:https://www.qklwz.com/jzb/xmr/58090.html

作者: 玩大的

上一篇
下一篇

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

返回顶部