网络安全之认识挖矿木马

news2025/2/28 23:29:03

一、什么是挖矿木马?

比特币是以区块链技术为基础的虚拟加密货币,比特币具有匿名性和难以追踪的特点,经过十余年的发展,已成为网络黑产最爱使用的交易媒介。大多数勒索病毒在加密受害者数据后,会勒索代价高昂的比特币。比特币在2021年曾达到1枚6.4万美元的天价,比特币的获得需要高性能计算机(又称矿机,一般配置顶级CPU和GPU)按特定算法计算,计算的过程被形象的称为“挖矿”。

矿机价格昂贵,为生产比特币,有人不惜重金购置大量矿机组成网络集群挖矿。挖矿又非常耗电,因此矿场往往会寻找偏僻地区的小水电、小火电而建,因为电费便宜,有人为节约成本偷电挖矿。

当数字加密币市值暴涨时,挖矿业务会水涨船高,高端CPU、GPU、高端显卡、大容量硬盘被炒上天价还卖断货。目前,我国政府宣布要实现碳达峰碳中和的目标,严重耗能的虚拟加密币相关生产、交易被认定为非法,我国境内所有(生产加密货币的)矿场必须关闭。

因挖矿需要大量财力投入,从一开始,就有人想到利用木马控制他人的计算机组建僵尸网络集群挖矿的办法,这就是所谓“挖矿木马”。

不法分子通过各种非法手段将矿机程序植入受害者的计算机中,利用受害者计算机的运算能力进行挖矿活动,从而获取非法收益。这类非法侵入用户计算机的矿机程序被称作挖矿木马病毒。

二、挖矿木马的主要入侵方式

挖矿木马常见的攻击方式及攻击后果可以参考下图:
挖矿木马的主要入侵方式

1、漏洞攻击

利用系统漏洞快速获取相关服务器权限,植入挖矿木马是目前最为普遍的传播方式之一。常见的漏洞包括Windows系统漏洞、服务器组件插件漏洞、中间件漏洞、Web漏洞等。例如传播较广的WannaMine挖矿家族,利用了永恒之蓝漏洞在内网蠕虫式传播,给不少公司和机构带来巨大损失。

2、弱口令爆破

弱口令指的是仅包含简单口令、有规律的键盘组合或历次泄漏过的密码,攻击者通常会针对redis、ssh、3389、mssql、IPC$等服务进行爆破弱口令攻击。爆破成功后,尝试获取系统权限,植入挖矿木马并设置持久化。

3、伪装正常软件

攻击者将挖矿木马伪装为游戏软件、娱乐社交软件、安全软件、游戏外挂等进行传播,欺骗用户下载并执行。由于多数游戏对显卡、CPU等硬件性能要求较高,故挖矿木马通常伪装成游戏辅助外挂,通过社交群、网盘等渠道传播,感染大量机器。

三、挖矿木马的安全危害

挖矿木马攻击,就是发生率较高,极可能造成业务系统中断的威胁事件,挖矿木马最明显的影响是大量消耗系统资源,使系统其他软件或服务运行缓慢,性能变差。主要安全危害包括业务故障、资源损耗及其他的安全威胁。

1、业务故障

挖矿木马会占用CPU进行超频运算,从而占用主机大量的CPU资源,导致设备性能不足,业务访问缓慢,设备过载宕机重启,异常网络链接等问题,严重影响服务器上的其他应用的正常运行,最终会影响业务系统工作运行。

2、资源损耗

挖矿木马的挖矿活动会使设备各器件高速运行,产生大量热能,增加电能消耗,加速设备器件老化等问题,造成资源损耗浪费。

3、安全威胁

挖矿木马作为一款应用程序,在服务器中运行,其拥有服务器权限,对服务器主机产生安全威胁。部分挖矿木马还具备蠕虫化的特点,在主机被成功入侵之后,挖矿木马还会向内网渗透,并在被入侵的服务器上持久化驻留以获取最大收益。

四、挖矿木马的检测手段

1、挖矿主机指纹识别

通过主机探测平台内置指纹知识库,如:Body特征、Header特征,对挖矿木马指纹进行识别,进而发现感染挖矿木马主机资产。

2、挖矿主机端口识别

通过研究分析目前主流的挖矿木马类型存在的通信端口,感染主机的标记端口等,形成挖矿木马常用端口知识库,并对资产开放端口进行聚合分析,探测这些端口的指纹信息进行识别和确认。

3、挖矿主机协议检测

通过挖矿木马的通信协议特征,对比分析网络资产开放的服务协议,定位存在挖矿木马感染风险的资产主机。

4、IOC威胁情报关联检测

通过大数据威胁情报,实时更新最新的挖矿木马情报。包括挖矿木马家族使用的C&C域名、恶意文件hash、矿池域名和IP、挖矿木马使用的加密货币钱包地址等进行挖矿木马流量检测告警。

5、挖矿木马行为特征检测

通过网络流量检测分析引擎,对其挖矿木马通信的端口、协议、内容、行为特征、恶意文件检测等挖矿木马流量特征进行检测分析,定位出存在恶意挖矿行为的终端及主机。

6、DNS流量检测挖矿域名

通过DNS威胁流量检测,基于域名分析算法结合威胁情报系统对C&C域名、挖矿网站域名、DNS解析IP等进行聚类分析,进而发现内网存在的恶意挖矿行为。

五、挖矿木马的清理

参考网上给出的腾讯安全专家撰写的《挖矿木马自助清理手册》的挖矿木马清理步骤和方法:

1、及时隔离主机

部分带有蠕虫功能的挖矿木马在取得主机的控制权后,会继续对公网的其他主机,或者以当前主机作为跳板机对同一局域网内的其他主机进行横向渗透,所以在发现主机被植入挖矿木马后,在不影响业务正常运行的前提下,应该及时隔离受感染的主机,然后进行下一步分析和清除工作。

2、阻断异常网络通信

挖矿木马不仅会连接矿池,还有可能会连接黑客的C2服务器,接收并执行C2指令、投递其他恶意木马,所以需要及时进行网络阻断。
(1)检查主机防火墙当前生效的iptables规则中是否存在业务范围之外的可疑地址和端口,它们可能是挖矿木马的矿池或C2地址

iptables -L -n

(2)从iptables规则中清除可疑地址和端口

vi /etc/sysconfig/iptables

(3)阻断挖矿木马的网络通信

iptables -A INPUT -s 可疑地址 -j DROP
iptables -A OUTPUT -d 可疑地址 -j DROP

3、清除计划任务

大部分挖矿木马会通过在受感染主机中写入计划任务实现持久化,如果仅仅只是清除挖矿进程,无法将其根除,到了预设的时间点,系统会通过计划任务从黑客的C2服务器重新下载并执行挖矿木马。
可以通过执行如下命令查看是否存在可疑定时任务,若有,则先保存相关记录用于后续分析,再进行删除:
查看系统当前用户的计划任务:

crontab -l

查看系统特定用户的计划任务:

crontab -u username -l

查看其他计划任务文件:

cat /etc/crontabcat /var/spool/croncat /etc/anacrontabcat /etc/cron.d/cat /etc/cron.daily/cat /etc/cron.hourly/cat /etc/cron.weekly/cat /etc/cron.monthly/cat /var/spool/cron/

4、清除启动项

除了计划任务,挖矿木马通过添加启动项同样能实现持久化。可以使用如下命令查看开机启动项中是否有异常的启动服务。
CentOS7以下版本:

chkconfig –list

CentOS7及以上版本:

systemctl list-unit-files

如果发现有恶意启动项,可以通过如下命令进行关闭:
CentOS7以下版本:

chkconfig 服务名 off

CentOS7及以上版本:

systemctl disable 服务名

另外,还需要仔细排查以下目录及文件,及时删除可疑的启动项:

/usr/lib/systemd/system
/usr/lib/systemd/system/multi-user.target.wants
/etc/rc.local
/etc/inittab
/etc/rc0.d/
/etc/rc1.d/
/etc/rc2.d/
/etc/rc3.d/
/etc/rc4.d/
/etc/rc5.d/
/etc/rc6.d/
/etc/rc.d/

排查的时候,可以按照文件修改时间来排序,重点排查近期被创建服务项。

5、清除预加载so

通过配置/etc/ld.so.preload,可以自定义程序运行前优先加载的动态链接库,部分木马通过修改该文件,添加恶意so文件,从而实现挖矿进程的隐藏等恶意功能。
检查/etc/ld.so.preload(该文件默认为空),清除异常的动态链接库。

6、清除SSH公钥

挖矿木马通常还会在~/.ssh/authoruzed_keys文件中写入黑客的SSH公钥,这样子就算用户将挖矿木马清除得一干二净,黑客还是可以免密登陆该主机,这也是常见的保持服务器控制权的手段。
排查~/.ssh/authorized_keys文件,如果发现可疑的SSH公钥,直接删除。

7、清除挖矿木马

(1)清除挖矿进程
挖矿木马最大的特点就是会在用户不知情的情况下,利用主机的算力进行挖矿,从而消耗主机大量的CPU资源,所以,通过执行如下命令排查系统中占用大量CPU资源的进程。

top -cps -ef

确认相关进程为挖矿进程后,按照如下步骤将其清除:
获取并记录挖矿进程的文件路径:

ls -l /proc/$PID/exe

杀死挖矿进程:

kill -9 $PID

删除挖矿进程对应的文件
(2)清除其它相关恶意进程
恶意进程与外部的C2服务器进行通信时,往往会开启端口进行监听。执行如下命令,查看服务器是否有未被授权的端口被监听。

netstat -antp

若有未授权进程,按照如下步骤将其清除:
获取并记录未授权进程的文件路径:

ls -l /proc/$PID/exe

杀死未授权进程:

kill -9 $PID

删除未授权进程对应的文件
还可以通过如下命令排查近期新增的文件,清除相关木马

find /etc -ctime -2 (这里指定目录为/etc,获取近2天内的新增文件)lsof

8、风险排查、安全加固

对系统进行风险排查和安全加固,避免挖矿木马卷土重来。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/361136.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GEE学习笔记 六十三:新的地图图层ui.Map.CloudStorageLayer

在GEE中导出数据有一种方式是直接导出地图到Google Cloud Storage中,也就是Export.map.toCloudStorage(xxx),这种方式是将我们计算生成影像导出成为静态瓦片的格式存放在Google Cloud Storage中。我们可以在其他的前端程序比如OpenLayer、Mapbox GL JS等…

Python开发-学生管理系统

文章目录1、需求分析2、系统设计3、系统开发必备4、主函数设计5、 学生信息维护模块设计6、 查询/统计模块设计7、排序模块设计8、 项目打包1、需求分析 学生管理系统应具备的功能: ●添加学生及成绩信息 ●将学生信息保存到文件中 ●修改和删除学生信息 ●查询学生…

Docker之路(1.Docker概述、组成以及特点)

1.docker为什么会出现? 一款产品或者项目来说,一般有三个环境,日常/测试环境、预发环境、正式/线上环境 这么多环境,对其环境的配置是十分麻烦的,每一个机器都要部署环境,有的会有集群Redis、Hadoop等&…

最全es6数组方法

1.arr.push()从后面添加元素,返回值为添加完后的数组的长度 let arr [1,2,3,4,5] console.log(arr.push(5)) // 6 console.log(arr) // [1,2,3,4,5,5]2.arr.pop()从后面删除元素,只能是一个,返回值是删除的元素 let arr [1,2,3,4,5] console.log(arr.pop())//5 …

学UI设计,可以向哪些方向发展?该怎么学?

1、什么是UI设计?UI设计,全称 User Interface,翻译成中文意思叫做用户界面设计。2、UI设计的类型UI设计按用户和界面来分可分成四种UI设计。分别是移动端UI设计,PC端UI设计,游戏UI设计,以及其它UI设计。第一…

信号量(上)

竞争是协作的特例,竞争关系是属于协作关系 信号量可以解决协作关系存在的问题,那么它也可以解决竞争关系存在的问题 信号量 信号量就是一个整数 先等待,然后再发送信号 p在荷兰语中代表测试 v在荷兰语代表增加 这个函数的执行流需要自己画&a…

C# FFmpeg推流Vlc.DotNet拉流优化参数

FFmpeg是流媒体开源神器,视频转换、剪裁包括推流,无所不能,很多系统都是基于其开发的。拉流可以用FFplay,但是不利于集成到自己的代码中,因此拉流选择了Vlc.DotNet。 在使用中,仅使用默认参数,…

hadoop3.*集群搭建,小白必看

hadoop广义上讲是一个大数据生态圈,接受大量处理、处理大量数据的一个全套的框架!hadoop3.x版本以后,主要有三大模块,HDFS、YARN、mapReduce这三大核心组成!什么是HDFS?分布式文件系统,hadoop集群的功能类…

Centos7搭建hadoop3.3.4分布式集群

文章目录1、背景2、集群规划2.1 hdfs集群规划2.2 yarn集群规划3、集群搭建步骤3.1 安装JDK3.2 修改主机名和host映射3.3 配置时间同步3.4 关闭防火墙3.5 配置ssh免密登录3.5.1 新建hadoop部署用户3.5.2 配置hadoopdeploy用户到任意一台机器都免密登录3.7 配置hadoop3.7.1 创建目…

IO多路复用

文章目录1 概念2. IO多路复用的出现2.1 阻塞IO2.2 非阻塞IO2.3 IO 多路复用2.3.1 select2.3.2 poll2.3.3 epoll总结1 概念 IO多路复用(IO Multiplexing) 是一种同步IO模型,在单个进程/线程内就可以同时处理多个IO请求。一个进程/线程可以监视多个文件句柄&#xff…

深度 | “人人都是数据分析师”的时代,为什么建议你学好python?

01 潜力巨大的数据分析岗位在信息时代的今天,数据推动业务发展、数据辅助业务决策早已成为大势所向,而顺应大数据时代号召的人,薪资待遇自然也是让人羡慕不已——数据分析师确实是高薪职业,大部分公司提供的待遇基本上是10K往上走…

好消息!Ellab(易来博)官方微信公众号开通了!携虹科提供专业验证和监测解决方案

自1949年以来,丹麦Ellab一直通过全球范围内的验证和监测解决方案,协助全球生命科学和食品公司优化和改进其流程的质量。Ellab全面的无线数据记录仪,热电偶系统,无线环境监测系统,校准设备,软件解决方案等等…

Ae:导入 Photoshop 文件

由于 Ae 内嵌了 Photoshop 的渲染引擎,所以可以识别并导入 Photoshop 文件的所有属性,包括位置、混合模式、不透明度、可见性、透明度(Alpha 通道)、图层蒙版、图层组、调整图层、图层样式、图层剪切路径、矢量蒙版、图像参考线等…

IPEmotion新增功能:交流电功率分析计算

一 应用背景 随着国内电动汽车行业的快速发展,在相同的道路环境和行驶状态下,增加电动车的整体续航里程和提升乘员对于行驶途中用电需求的满意度尤为重要。因此,需要采集试验过程中交直流电压电流信号,以计算出车辆各种部件输出和…

rancher2安装nfs-subdir-external-provisioner为PVC/PV动态提供存储空间(动态分配卷)

接上一篇《centos7部署rancher2.5详细图文教程》 一、 安装nfs服务 1. 所有节点都需要操作 $ # 下载 nfs 相关软件 $ sudo yum -y install nfs-utils rpcbind$ # 启动服务并加入开机自启 $ sudo systemctl start nfs && systemctl enable nfs $ sudo systemctl star…

UG NX二次开发(C#)-CAM-不再高亮显示所有的加工特征(CAMFeature)

文章目录 1、前言2、加工特征高亮显示的示例3、获取加工特征的几何对象3.1 获取面对象并取消高亮显示3.2 获取坐标系对象并取消高亮显示4、创建一个不再高亮显示所有加工特征的方法1、前言 当我们在识别加工特征后,其默认状态是被选中的,所以是高亮显示;当我们不再选中时,…

Blender骨骼动画快速教程

有关创建模型的更多详细信息,请参阅在 Blender 中创建模型。 我们将为这个例子做一个非常简单的模型——蠕虫! 从我们的初始立方体开始,进入编辑模式,切换到面选择,然后选择任何面: 推荐:将 NSD…

【颠覆软件开发】华为自研IDE!未来IDE将不可预测!

IDE是软件开发生态的入口,但目前我们所使用的IDE基本都是由国外巨头提供,比如Visual Studio、Eclipse、JetBrains。这些IDE具有很高的断供风险,与操作系统、芯片、编程语言一样,非常重要。 随着越来越多的软件开始采用云上开发模…

重要节点排序方法

文章目录研究背景提前约定基于节点近邻的排序方法度中心性(degree centrality, DC)半局部中心性(semilocal centrality, SLC)k-壳分解法基于路径排序的方法离心中心性 (Eccentricity, ECC)接近中心性 (closeness centrality, CC)K…

mac 好用的类似Xshell工具

下载royal TSX 5.1.1 http://share.uleshi.com/f/9490615-685692355-33bf1e修改mac的etc/hosts文件权限访达(鼠标右键) -> 前往文件夹 ->输入/private --> 打开etc/hosts --> 显示简洁(鼠标右键) --> 权限改成读和写hosts文件写入如下内容:# Royal T…