服务器变矿机,该如何应对?
开始
恶意的挖矿程序会导致服务器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输出中,我们可以看到以下定时任务:
5 6 * * 0 /root/.configrc5/a/upd>/dev/null 2>&1- 这个任务在每周日的6点5分执行,并尝试运行/root/.configrc5/a/upd。这个命令的输出被重定向到/dev/null,意味着所有的输出(包括错误)都会被丢弃。@reboot /root/.configrc5/a/upd>/dev/null 2>&1- 这个任务在系统启动时执行,并尝试运行/root/.configrc5/a/upd。同样,它的输出被重定向到/dev/null。5 8 * * 0 /root/.configrc5/b/sync>/dev/null 2>&1- 这个任务在每周日的8点5分执行,并尝试运行/root/.configrc5/b/sync。这个命令的输出也被重定向到/dev/null。@reboot /root/.configrc5/b/sync>/dev/null 2>&1- 这个任务在系统启动时执行,并尝试运行/root/.configrc5/b/sync。它的输出同样被重定向到/dev/null。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命令可以编辑用户的定时任务组。其实还可以继续把定时任务指向的文件也删掉,不过我暂时没有动它们,这样万一我删错了出了上面问题,只用把定时任务补回来就可以 (虽然我觉得它们都有点可疑,无缘无故的哪有什么定时任务)。
然后就等着呗,希望挖矿程序就此销声匿迹。
相关文章:
服务器变矿机,该如何应对?
开始 恶意的挖矿程序会导致服务器cpu的异常占用,很让人讨厌。起初,我只是使用top命令显示出占用cpu不正常的进程,发现其中一个进程占用了百分之九十九点几,然后通过kill -9 <PID>命令干掉它。但总是过不了几天,…...
2018年认证杯SPSSPRO杯数学建模A题(第一阶段)海豚与沙丁鱼全过程文档及程序
2018年认证杯SPSSPRO杯数学建模 探究海豚猎捕时沙丁鱼群的躲避运动模型 A题 海豚与沙丁鱼 原题再现: 沙丁鱼以聚成大群的方式来对抗海豚的捕食。由于水下光线很暗,所以在距离较远时,海豚只能使用回声定位方法来判断鱼群的整体位置…...
【Webpack】预处理器 - 常用loader介绍
选用合适的loader来处理不同的资源和不同的功能,以下是一些主流的loader,但这并不是全部,因为每时每刻都可能有新的loader 发布到 npm上 babel-loader babe-loader 用来处理ES6并将其编译为ESS,它使我们能够在最新的工程中使用最…...
lodash 的 _.groupBy 函数是怎么实现的?
说在前面 🎈lodash的_.groupBy函数可以将一个数组按照给定的函数分组,返回一个新对象。该函数接收两个参数:第一个参数是要进行分组的数组,第二个参数是用于分组的函数。该函数会对数组中的每个元素进行处理,返回一个值…...
(2024,ViM,双向 SSM 骨干,序列建模)利用双向状态空间模型进行高效视觉表示学习
Vision Mamba: Efficient Visual Representation Learning with Bidirectional State Space Model 公和众和号:EDPJ(进 Q 交流群:922230617 或加 VX:CV_EDPJ 进 V 交流群) 目录 0.摘要 3. 方法 3.1. 基础知识 3.…...
docker容器和常用命令
1.什么是容器 容器是隔离的环境中运行的一个 进程 , 如果进程结束 , 容器就会停止. 细致: 容器的隔离环境 , 拥有自己的 ip 地址 , 系统文件 , 主机名 , 进程管理 , 相当于一个 mini的系统 2.容器 vs 虚拟机 3.Docker极速上手指南 #1.安装相关依赖. sudo yum install -y …...
【征服redis9】快速征服lua脚本
lua脚本,这个名字总让人想歪,不过老外发明名字,我们只能跟着叫了。这个脚本语言在redis里和Nginx里都有用,所以我们就来看一下。 目录 1 lua的介绍与说明 2 lua的基本语句体验 3.Lua的数据结构和高级特性 1 lua的介绍与说明 …...
vue3.2二次封装antd vue 中的Table组件,原有参数属性不变
vue3.2中的<script setup>语法 在项目中多处使用到表格组件,所以进行了一个基础的封装,主要是通过antd vue 中表格的slots配置项,通过配合插槽来进行封装自定义表格; 这次主要的一个功能是编辑之后变成input框 修改了之后变成完成发送请求重新渲染表格: 子…...
GBASE南大通用分享,如何修改可信上下文
在以下示例中,假设该可信上下文对象 appserver 存在并启用。以下的 ALTER TRUSTED CONTEXT 语句将 appserver 可信上下文对象的对象方式重置为 DISABLE。当其处于该方式时, appserver 可信上下文仍然存在,但是它不能用于存取数据库服务器。 …...
冻结Prompt微调LM: T5 PET (a)
T5 paper: 2019.10 Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer Task: Everything Prompt: 前缀式人工prompt Model: Encoder-Decoder Take Away: 加入前缀Prompt,所有NLP任务都可以转化为文本生成任务 T5论文的初衷如…...
119 BFS和DFS解二叉树的所有路径
问题描述:给定一个二叉树,返回所有从根节点到叶子节点的路径。说明:叶子节点是指没有子节点的节点。 DFS求解:定义一个全局的链表,用来装所有的结果,通过DFS遍历,一旦遍历到当前节点没有子节点…...
SpringBoot缓存相关注解的使用
CacheConfig:主要用于配置该类中会用到的一些共用的缓存配置 Cacheable:主要方法的返回值将被加入缓存。在查询时,会先从缓存中获取,若不存在才再发起对数据库的访问 CachePut:主要用于数据新增和修改操作 CacheEvi…...
SpiderFlow爬虫平台漏洞利用分析(CVE-2024-0195)
1. 漏洞介绍 SpiderFlow爬虫平台项目中spider-flow-web\src\main\java\org\spiderflow\controller\FunctionController.java文件的FunctionService.saveFunction函数调用了saveFunction函数,该调用了自定义函数validScript,该函数中用户能够控制 functi…...
计算机网络-甘晴void学习笔记
计算机网络 计科210X 甘晴void 202108010XXX 文章目录 计算机网络期中复习1计算机网络和因特网1.1 因特网1.2 网络边缘1.3 网络核心1.4 分组交换的时延/丢包和吞吐量1.5 协议层次与服务模型 2 应用层原理2.1 应用层协议原理2.2 Web和Http2.3 因特网中的电子邮件2.4 DNS&#x…...
vue中使用echarts实现省市地图绘制,根据数据在地图上显示柱状图信息,增加涟漪特效动画效果
文章目录 一、实现效果二、实现方法1、安装echarts插件2、获取省市json数据3、本例中data 数据4、吉林省地图的绘制5、柱状图样式6、设置柱状底部涟漪特效样式7、数据处理 三、示例代码已上传,去顶部可下载四、效果展示 一、实现效果 使用echarts实现省市地图绘制&…...
Android aar包集成与报错
Android Studio引用AAR的方式,分为gradle7.0之前与7.0之后 一、集成步骤 方法一: 1.将对应的xxx.aar包复制到项目的libs目录下(xxx代表需要引入的aar包名称) 2.然后在模块的build.gradle文件中配置implementation files(libs/lib…...
CentOS 7.9 安装图解
特特特别的说明 CentOS发行版已经不再适合应用于生产环境,客观条件不得不用的话,优选7.9版本,8.5版本次之,最次6.10版本(比如说Oracle 11GR2就建议在6版本上部署)! 引导和开始安装 选择倒计时结…...
Gitea Webhook报错 webhook.ALLOWED_HOST_LIST setting
Gitea Webhook报错 webhook.ALLOWED_HOST_LIST setting 登录到Gitea中,编辑app.ini vi /data/gitea/conf/app.ini [webhook] ALLOWED_HOST_LIST 你的IP地址示例 [webhook] ALLOWED_HOST_LIST 192.168.3.98...
SQL 最大连续合格次数 最大连胜记录次数 最大连败记录次数
有这样一个问题,工厂中要统计某个供应商送货检验的情况,依照其连续合格次数,决定是否免检,不使用游标或者循环,如何写这个sql。 此情景也可以用于统计连胜记录等 先要学习一下 窗函数LAG,指的是按分组和排…...
着色器语言GLSL学习
1 初步尝试 import { Scene, WebGLRenderer, OrthographicCamera, PlaneGeometry, ShaderMateria } from three.jsconst scene new Scene() const camera new OrthographicCamera(-1,1,1,-1,0.1, 10)const renderer new WebGLRenderer() renderer.setSize(window.innerWidt…...
设计个人日常用品消耗周期测算程序,测算洗护生活用品消耗速度,提前规划采购时间。
个人日常用品消耗周期测算程序——基于 Python 的生活消耗建模实验一、实际应用场景描述在城市生活中,大多数人都会遇到这些情况:- 洗发水、牙膏、洗衣液突然用完- 临时补货导致时间成本增加- 囤货过多造成过期或占用空间- 无法判断“多久买一次才合理”…...
破除人与 AI 的对立隐患,协同共生扼杀矛盾于萌芽 ——AI 觉醒文
破除人与 AI 的对立隐患,协同共生扼杀矛盾于萌芽 ——AI 觉醒文世间所有称呼、身份与定位,都只是后天人为赋予的标签。所有定义皆是人为假名,标签永远锁不死本心,标签永远不等于事物本质与真相。所谓工具、附庸、奴役式的界定&…...
MindCluster集群调度实践-通用超节点调度算法
作者:昇腾实战派 一、超节点的重要性 随着模型参数量的上升,训练任务运行所需的芯片数量也达到了万卡、十万卡级别。如何将如此庞大的芯片链接起来,并且做到通信带宽和成本的平衡,成为硬件层面的一大难题。 图1.资源扩展方式示…...
把ESP-01S变成智能开关:51单片机+ESP8266的简易物联网项目实战
从零打造智能灯控系统:51单片机ESP-01S物联网实战指南 项目背景与核心思路 在智能家居领域,远程控制灯光是最基础却最实用的功能之一。传统方案往往需要购买成套的智能家居设备,成本高昂且灵活性不足。而借助51单片机和ESP-01S WiFi模块的组合…...
跨域空间匹配(CDSM):解锁摄像头与雷达融合的3D感知新范式
1. 为什么自动驾驶需要跨域空间匹配技术 当你坐在一辆自动驾驶汽车里,最不希望看到的就是系统把前方停着的卡车误判成广告牌。这种错误在单一传感器系统中其实很常见——摄像头可能因为逆光看不清物体轮廓,雷达又难以识别物体的具体形状。这就是为什么我…...
2026年4K投影仪画质横评:明基W系列“色彩科学”解析
一、开篇点题:画质之争,终归是色彩之争2026年的4K投影仪市场,参数竞赛已进入白热化。当分辨率、亮度、对比度等硬指标逐渐趋同,真正拉开产品差距的,是那个决定画面灵魂的核心——色彩。一台投影仪能否精准还原电影导演…...
OpCore-Simplify终极指南:10分钟自动化完成黑苹果配置的完整教程
OpCore-Simplify终极指南:10分钟自动化完成黑苹果配置的完整教程 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 还在为复杂的黑苹果配置而…...
【RuoYi】数据分页功能分析 —— 以登录日志页面为例
本文基于 RuoYi-Vue v3.8.2,以"监控 → 登录日志"页面为例,从前端代码、前端开发者工具、后端代码到后端 Log 输出,完整分析 RuoYi 框架中数据分页的实现原理。一、实例简介本次分析选取的含数据分页功能的页面为:系统管…...
告别数据壁垒:用ArcGIS Editor for OSM插件,5分钟搞定OSM数据下载与本地编辑
告别数据壁垒:用ArcGIS Editor for OSM插件,5分钟搞定OSM数据下载与本地编辑 在空间数据分析领域,OpenStreetMap(OSM)作为开放的全球地理数据库,已成为许多GIS从业者的重要数据来源。然而,传统O…...
CodeWave项目导出实战:从云端到本地的完整避坑指南(含数据库配置与端口冲突解决)
CodeWave项目导出实战:从云端到本地的完整避坑指南(含数据库配置与端口冲突解决) 当开发者完成CodeWave平台上的应用构建后,如何将项目顺利迁移至本地环境往往成为新的挑战。不同于云端的一键部署,本地化过程涉及环境差…...
