排查腾讯云服务器被挖矿病毒【pnscan】挟持

一、问题发现

最新在使用腾讯云部署项目应用,具体方式为docker部署。今天早上发现腾讯云发来一条报警信息:
在这里插入图片描述
看到信息中说到攻击行为,怀疑是否中了病毒,决定排查一下问题。

二、排查过程

首先登录腾讯云服务器控制台,发现cpu占用率处于较高水平,接下来登录服务器排查。

1.使用last查看最近登录信息,没有发现什么特别信息;
在这里插入图片描述
2.使用history查看历史指令
在这里插入图片描述
此时发现所有的histroy都被清空,然而本人并没有更改过设置,昨天使用history还正常,此时立马引起了我的警惕。

3.查看/etc/passwd下的账户信息
在这里插入图片描述
此时发现多了一个叫hilde的用户。
此时尝试使用 usermod -L hilde锁定hilde用户,发现并没有权限。
在这里插入图片描述
稍后对此问题进行解决。

4.查看日志文件/var/log/secure
less /var/log/secure|grep ‘Accepted’
在这里插入图片描述

5.查看日志文件/var/log/message,发现有大量的关键词扫描“scan”
在这里插入图片描述
6.使用top查看进程运行信息
在这里插入图片描述
其中pnscan进程可以确定是挖矿病毒,rshim为centos系统自带进程。至此可以判断服务器被挖矿病毒挟持。

7.使用netstat查看端口信息
在这里插入图片描述
发现此时也没有执行权限,和锁定用户同样的现象,心中默想,这个病毒太猖獗了,居然端口权限也给修改,简直不能忍。

8.使用docker ps -a 查看容器运行情况
因为昨天使用docker安装jenkin容器,此时决定去看看容器运行情况,果然发现了两个并不是自己安装的容器,此时进行了容器的关闭。
在这里插入图片描述
9.使用docker images 查看镜像
在这里插入图片描述
10.crontab -l查看定时作业,正常
在这里插入图片描述

三、解决方案

1.杀进程
在这里插入图片描述
杀pnscan进程时突然发现,进程号一直在变化,真是狡猾!于是决定先删除文件;

2.删文件
在这里插入图片描述
文件删除后,并重启服务器,pnscan进程消失,但是又多了[scan]进程,于是使用kill -9杀除此进程,发现这玩意杀完之后马上又起一个进程,根本杀不死!
在这里插入图片描述
此时觉得应该查看一下系统日志,于是打开/var/log/message,顺着日志中的路径打开文件夹,发现[scan]和[ext4]几乎是同一时间段创建的,百度了一下config_background.json,果不其然,monero:门罗币(此处参考文章:做一次“黑客“,入侵一次自己的服务器)

在这里插入图片描述
在这里插入图片描述
顺着文章的意思,去查看authorized_keys,果然多了一个puppet的公钥
在这里插入图片描述3.删秘钥
此处参考Linux服务器发现挖矿病毒(crypto和pnscan)导致CPU爆满100的详细解决方法
后续需要进行一系列操作,如修改权限、删用户、删除镜像以及容器、具体解决办法大家可以自行百度

后续参考:

苍了个天,记一次Linux(被)入侵…

阿里云服务器被恶意程序攻击解决详情:您有服务器因攻击被限制访问部分目的端口

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

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

相关文章

redis 操作

一、自动分配(redis) 数据放缓存了,为的是速度快 redis是支持持久化的,如果关机了以后,数据已经会放在文件里了 先买上一台电脑:装上redis服务器软件 - 这个服务器有个工网IP:47.93.4.198 - 端口…

从另一个角度看大数据量处理利器:布隆过滤器

思路:从简单的排序谈到BitMap算法,再谈到数据去重问题,谈到大数据量处理利器:布隆过滤器。 情景1:对无重复的数据进行排序 给定数据(2,4,1,12,9&#xff0c…

例题练习

1,购物车 功能要求:要求用户输入自己拥有总资产,例如:2000显示商品列表,让用户根据序号选择商品,加入购物车购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功…

并行计算的强大

最近在处理一批数据,10的8次方,处理完毕大概要一个月,并且这个程序占用的CPU只有一个(我从来没有注意到这个问题啊啊啊)。 突然师兄提醒我可以把10的8次方条数据拆成10个10的7次方,作为10条任务并行处理&a…

Kubernetes集群(概念篇)

Kubernetes介绍 2013年docker诞生,自此一发不可收拾,它的发展如火如荼,作为一个运维如果不会docker,那真的是落伍了。 而2014年出现的kubernetes(又叫k8s)更加炙手可热,我想大部分人仅仅是听说过…

$(“#addLowForm“).serialize()同时提交其它参数的写法

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1. 原本写法: 2. 不光传表单参数,还有别的参数的写法:

JAVA自学笔记25

JAVA自学笔记25 1、GUI 1)图形用户接口,以图形的方式,来显示计算机操作的界面,更方便更直观 2)CLI 命令行用户接口,就是常见的Dos,操作不直观 3) 类Dimension 类内封装单个对象…

Map是不是集合?

Map是不是集合? 一、起因 今天在一个群里跟几位朋友就“map是不是集合“”争执了起来;几位朋友一致认为map不是集合,他们说只有Collection接口下的才是集合,而我认为Collection和Map下的实现类都是集合类。二、发展 于是我开始在…

简单安装ELK分析日志及使用心得

ELK是由Elasticsearch、Logstash、Kibana三个组件组成的。Elasticsearch:是ELK的核心插件,是一个基于Lucene的搜索服务器,它提供一个分布式多用户能力的全文搜索引擎,能够达到实时搜索,稳定,可靠&#xff0…

JS单引号嵌套的问题,怎么改才能对呢!

JS单引号嵌套的问题&#xff0c;怎么改才能对呢&#xff01; https://zhidao.baidu.com/question/416584343.html document.getElementById(celbid).innerHTML<inputname""type"text"οnblur"celchangeb(celaid,celbid);">;这段代码是JS显…

前端入门教程(七)CSS属性设置

宽和高 width属性可以为元素设置宽度。 height属性可以为元素设置高度。 块级标签才能设置宽度&#xff0c;内联标签的宽度由内容来决定。 字体属性 文字字体 font-family可以把多个字体名称作为一个“回退”系统来保存。如果浏览器不支持第一个字体&#xff0c;则会尝试下一个…

java 深入了解DTO及如何使用DTO

这篇文章主要来谈论一下DTO使用的场合及其带来的好处。首先要理解DTO是什么&#xff1f; DTO就是数据传输对象(Data Transfer Object)的缩写。DTO模式&#xff0c;是指将数据封装成普通的JavaBeans&#xff0c;在J2EE多个层次之间传输。 DTO类似信使&#xff0c;是同步系统中…

漫谈程序员系列:一张图道尽程序员的出路

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 《推背图》相传由唐太宗时期的司天监李淳风和袁天罡合著&#xff08;此两人其实是超级武学高手&#xff0c;参见小椴的《开唐》&#xf…

restful风格使用小例

1. 页面传参数写法&#xff1a; http://write.blog.csdn.net/ 参数1 / 参数2 / 参数N restful风格是把参数 直接拼在 / 后面&#xff0c;而不是URL地址重写方式。 2. 后台接收用法&#xff1a;

Mac 10.12彻底关闭Dashboard

1、打开【系统偏好设置】。 2、点击进入【Mission Control】。 3、中间有一项【Dashboard】&#xff0c;点击它右边的下拉菜单&#xff0c;选择【关闭】&#xff0c;即可。 转载于:https://www.cnblogs.com/EasonJim/p/9547489.html

多线程读取文件File

Java代码 import java.io.*; class DownThread extends Thread { //定义字节数组&#xff08;取水的竹筒&#xff09;的长度 private final int BUFF_LEN 32; //定义读取的起始点 private long start; //定义读取的结束点 private long end; …

Spring Boot 是什么,有什么用。

见&#xff1a;http://www.csdn.net/article/a/2016-05-12/15838098 maven/Java/web/bootstrap/dataTable/app开发QQ群&#xff1a;566862629。希望更多人一起帮助我学习。 首先&#xff0c;我们来看一下spring boot是什么&#xff0c;它帮助我们解决了哪些问题&#xff1a; …

java获取当前时间戳的方法

获取当前时间戳 //方法 一 System.currentTimeMillis(); //方法 二 Calendar.getInstance().getTimeInMillis(); //方法 三 new Date().getTime(); 获取当前时间 SimpleDateFormat df new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式 String date df.…

解决Linux 忘记root 密码的办法

今天突然遇到一个问题&#xff0c;那别人的 linux 系统发现root 密码竟然不知道&#xff0c;这就尴尬了。经过一番百度&#xff0c;记录下 如何修改root 密码 1&#xff1a;开机linxu 按E 键 2&#xff1a;继续按E 键 3:选择 kernel..... 按E 4&#xff1a;在rhgb quiet 后面加…

简单理解Hadoop(Hadoop是什么、如何工作)

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 一、Hadoop主要的任务部署分为3个部分&#xff0c;分别是&#xff1a;Client机器&#xff0c;主节点和从节点。主节点主要负责Hadoop两个…