服务器变矿机,该如何应对?

开始

恶意的挖矿程序会导致服务器cpu的异常占用,很让人讨厌。起初,我只是使用top命令显示出占用cpu不正常的进程,发现其中一个进程占用了百分之九十九点几,然后通过kill -9 <PID>命令干掉它。但总是过不了几天,它又重启了,cpu继续变得异常占用。

寒假有天阿里云的人打电话,问我服务器用得怎么样,有没有什么问题。我就告诉他,变成矿机了。他说可以提交工单交给他们来处理,还不用收钱。我将信将疑,今天突然看着又变得占用异常的cpu,打算试一下。不过,这个工单的入口藏得也太深了,我在网上搜了好一会儿阿里云怎么提交工单。

  • 工单网址:https://selfservice.console.aliyun.com/ticket/createIndex

填写后我来到了如下页面,是个机器人客服。嗯······和我想象的有点儿不一样。

在这里插入图片描述

怀着一点儿好奇,我点进了它的文档,照它所说进行了排查。

  • 挖矿程序处理最佳实践_云安全中心(Security Center)-阿里云帮助中心 (aliyun.com)

排查

执行以下命令查看是否存在业务范围之外的可疑通信地址和开放端口。

iptables -L -n

很快我发现自己并不知道怎么判断是不是可疑的,不过好在这个命令没什么输出。

执行以下命令排查是否存在定时任务。

crontab -l
[root@iZwz9d3syuv1c0i2e3vy8lZ ~]# crontab -l
5 6 * * 0 /root/.configrc5/a/upd>/dev/null 2>&1
@reboot /root/.configrc5/a/upd>/dev/null 2>&1
5 8 * * 0 /root/.configrc5/b/sync>/dev/null 2>&1
@reboot /root/.configrc5/b/sync>/dev/null 2>&1
0 0 */3 * * /var/tmp/.X87s78s7/.rsync/c/aptitude>/dev/null 2>&1

我再次发现自己看不懂,不过,可以让机器人来看。

By 文心一言:

从您提供的 crontab -l 输出中,我们可以看到以下定时任务:

  1. 5 6 * * 0 /root/.configrc5/a/upd>/dev/null 2>&1 - 这个任务在每周日的6点5分执行,并尝试运行 /root/.configrc5/a/upd。这个命令的输出被重定向到 /dev/null,意味着所有的输出(包括错误)都会被丢弃。
  2. @reboot /root/.configrc5/a/upd>/dev/null 2>&1 - 这个任务在系统启动时执行,并尝试运行 /root/.configrc5/a/upd。同样,它的输出被重定向到 /dev/null
  3. 5 8 * * 0 /root/.configrc5/b/sync>/dev/null 2>&1 - 这个任务在每周日的8点5分执行,并尝试运行 /root/.configrc5/b/sync。这个命令的输出也被重定向到 /dev/null
  4. @reboot /root/.configrc5/b/sync>/dev/null 2>&1 - 这个任务在系统启动时执行,并尝试运行 /root/.configrc5/b/sync。它的输出同样被重定向到 /dev/null
  5. 0 0 */3 * * /var/tmp/.X87s78s7/.rsync/c/aptitude>/dev/null 2>&1 - 这个任务每3天午夜执行,并尝试运行 /var/tmp/.X87s78s7/.rsync/c/aptitude。这个命令的输出也被重定向到 /dev/null

从这些任务中,我们可以看到以下几点:

  • 所有命令的输出都被重定向到 /dev/null,这意味着您不会在系统日志中看到任何输出或错误。这可能是有意为之,但也可能掩盖了一些问题。
  • 这些任务似乎都与特定的目录和文件有关,如 /root/.configrc5/a/upd/root/.configrc5/b/sync。确保这些路径是正确的,并且您有适当的权限来访问它们。
  • @reboot 指令意味着这些命令将在系统启动时自动运行。确保您知道这些命令在启动时做什么,以避免潜在的问题。

它也不能帮我直接判定上面的定时任务是不是运行挖矿程序的,不过它提到了一些任务的时间,那不如我就来看看cpu每次变得异常占用的时间。好家伙,其中三次都恰好是早上的6点,又对着日历一看,还真都是周日。结合上面机器人的描述,几乎实锤了。

在这里插入图片描述

不过我也不能确定其它的定时任务有没有问题,最后还是把它们都删了。使用crontab -e命令可以编辑用户的定时任务组。其实还可以继续把定时任务指向的文件也删掉,不过我暂时没有动它们,这样万一我删错了出了上面问题,只用把定时任务补回来就可以 (虽然我觉得它们都有点可疑,无缘无故的哪有什么定时任务)


然后就等着呗,希望挖矿程序就此销声匿迹。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Windows系统字体尺寸学习

调用GetTextMetrics来获得字体尺寸信息, 函数返回设备描述表中当前选定的字体信息&#xff1b; 返回值到TEXTMETRIC类型的结构中&#xff1b; 返回字段值的单位取决于当前设备描述表映射方式&#xff1b;默认映射方式是MM_TEXT&#xff0c;值的单位是像素&#xff1b; 前7个字…

【MATLAB源码-第113期】基于matlab的孔雀优化算法(POA)机器人栅格路径规划,输出做短路径图和适应度曲线。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 POA&#xff08;孔雀优化算法&#xff09;是一种基于孔雀羽毛开屏行为启发的优化算法。这种算法模仿孔雀通过展开其色彩斑斓的尾羽来吸引雌性的自然行为。在算法中&#xff0c;每个孔雀代表一个潜在的解决方案&#xff0c;而…

CSS3弹性盒布局详解

CSS3的弹性盒布局 简介 弹性盒&#xff08; Flexible Box 或 Flexbox&#xff09; 布局是CSS3提供的一种新的布局模式&#xff0c;是一种当页面需要适应不同的屏幕大小及设备类型时&#xff0c;确保元素拥有恰当行为的一种布局方式。 弹性盒的结构: 从图中所知&#xff0c…

K8s(一)Pod资源——Pod介绍、创建Pod、Pod简单资源配额

目录 Pod概述 pod网络 pod存储 pod和容器对比 创建pod的方式 pod运行方式分类 Pod的创建 Pod的创建过程 通过kubectl run来创建pod 通过yaml文件创建&#xff0c;yaml文件简单写法 Pod简单操作 Pod的标签labels Pod的资源配额resource 测试 Pod概述 Kubernetes …

嵌入式学习-网络编程-Day4

思维导图 广播通信模型 #include <myhead.h> int main(int argc, char const *argv[]) {int rfd socket(AF_INET,SOCK_DGRAM,0);if(rfd-1){perror("socket error");return -1;}//填充地址信息结构体struct sockaddr_in rin;rin.sin_familyAF_INET;rin.sin_por…

[ceph] ceph应用

一、资源池 Pool 管理 #创建一个 Pool 资源池&#xff0c;其名字为 mypool&#xff0c;PGs 数量设置为 64&#xff0c;设置 PGs 的同时还需要设置 PGP&#xff08;通常PGs和PGP的值是相同的&#xff09;&#xff1a; PG (Placement Group)&#xff0c;pg 是一个虚拟的概念&…

基于变换域的模版匹配

模板匹配原理 图像的空间域与其他域之间的变换&#xff0c;如傅里叶变换&#xff0c;小波变换&#xff0c;轮廓波变换&#xff0c;剪切波变换等&#xff0c;实际上是图像在其他坐标领域中的表现。在空间域中&#xff0c;图像的信息是像素值和坐标位置&#xff1b;在其他域中&a…

交通流量预测HSTGCNT:Hierarchical Spatio–Temporal Graph Convolutional

Hierarchical Spatio–Temporal Graph Convolutional Networks and Transformer Network for Traffic Flow Forecasting 交通流预测的层次时空图卷积网络和Transformer网络 Abstract 图卷积网络&#xff08;GCN&#xff09;具有图形化描述道路网络不规则拓扑结构的能力&#…

【C语言】数据结构——排序三(归并与计数排序)

&#x1f497;个人主页&#x1f497; ⭐个人专栏——数据结构学习⭐ &#x1f4ab;点击关注&#x1f929;一起学习C语言&#x1f4af;&#x1f4ab; 目录 导读&#xff1a;1. 归并排序1.1 基本思想1.2 递归实现1.3 非递归实现 2. 计数排序2.1 基本思想2.2 代码实现 导读&#x…

如何用Python进行数据分析(保姆级教程)

有小伙伴在学Python新手教程的时候说学Python比较复杂的地方就是资料太多了&#xff0c;比较复杂。 很多网上的资料都是从语法教起的&#xff0c;花了很多时间还是云里雾里&#xff0c;摸不清方向。今天就给大家来捋一捋思路&#xff01;帮助大家提高学习效率&#xff01; Pyt…

夜神安装Magisk及Delta(狐狸面具)教程

Magisk和LSPosed、EdXPosed下载 Magisk框架下载与安装教程 - 多开鸭Magisk及LSPosed在模拟器安装的详细视频教程 推荐先看一遍教程 视频教程 雷电模拟器版本教程&#xff1a;https://www.bilibili.com/video/BV1kv4y127af 夜神模拟https://www.duokaiya.com/magisk.html 夜神模…

JS遍历对象的方法及特点

1、定义一个对象 let obj {name: Tom,age: 20,sex: 男,};obj.weight 70kg;// obj的原型上定义属性Object.prototype.height 180cm;Object.prototype.major function() {console.log(专业&#xff1a;计算机应用技术);};console.log(obj, obj); 控制台输出的obj中&#xff…

C++make_pair,你真的懂了吗?

其实写这篇文章我还是很忐忑的&#xff0c;因为用C也写了快一年了&#xff0c;平时代码量个人认为还可以&#xff0c;但是最近两天频繁犯错&#xff0c;下面先说说我写的错误吧&#xff01; 我们都知道make_pair返回的是一个pair类型的函数&#xff0c;而pair这个键值对它又是…

go语言(一)----声明常量

package mainimport ("fmt""time" )func main() {fmt.Print("hello go!")time.Sleep(1 * time.Second)}运行后&#xff0c;结果如下&#xff1a; 1、golang表达式中&#xff0c;加&#xff1b;和不加&#xff1b;都可以 2、函数的{和函数名一…

二二复制模式玩法解析

这个模式和小编介绍的其他模式不同&#xff0c;其他的模式都是需要一个推荐来获得返利或者免单的&#xff0c;但是这个模式是不需要的&#xff0c;因为它可以依靠平台来完成闭环。 具体是怎么操作的呢&#xff1f;这个模式很简单&#xff0c;只有两个奖励。一个是直推奖&#x…

C++初阶类与对象(一):学习类与对象、访问限定符、封装、this指针

入门知识已经梳理完毕了&#xff0c;接下来就进入到面型对象的部分学习了 文章目录 1.面向过程和面向对象初步认识2.类的引入3.类的定义3.1类的结构3.2类的两种定义方式3.2.1声明和定义全部放在类体中3.2.2声明和定义分开 3.3成员变量命名规则的建议 4.类的访问限定符及封装4.1…

Java-NIO篇章(2)——Buffer缓冲区详解

Buffer类简介 Buffer类是一个抽象类&#xff0c;对应于Java的主要数据类型&#xff0c;在NIO中有8种缓冲区类&#xff0c;分别如下&#xff1a; ByteBuffer、 CharBuffer、 DoubleBuffer、 FloatBuffer、 IntBuffer、 LongBuffer、 ShortBuffer、MappedByteBuffer。 本文以它的…

【Linux】nc 网络诊断 | 文件传输 命令详解

目录 一、命令简介 二、命令使用 2.1 测试服务器 2.2 端口连通性测试 2.2.1tcp端口连通性测试 2.2.2udp端口连通性测试 2.3 文件及目录的传输 2.3.1 文件传输(TCP端口) 2.3.2 文件传输(UDP端口) 相关文章&#xff1a; 【网络】抓包工具Wireshark下载安装和基本使用教…

EasyConnect客户端 连接时提示,获取服务端配置信息失败

环境&#xff1a; EasyConnect客户端 问题描述&#xff1a; EasyConnect客户端 连接时提示&#xff0c;获取服务端配置信息失败 解决方案&#xff1a; 1.电脑上的防火墙和杀毒软件建议关闭,右键以管理员身份运行EasyConnect客户端使用(临时解决本案例) 2.用修复工具修复测…

maxwell同步全量历史数据

CentOS安装maxwell 在上篇的基础上&#xff0c;我们实现了实时同步mysql数据到kafka。maxwell不仅可以同步实时数据&#xff0c;也可以同步全量历史数据。在这里模拟一下历史数据的场景&#xff0c;创建表结构如下&#xff0c;并写入测试数据。 CREATE TABLE user_det…