服务器被攻击排查记录

起因

我的深度学习的所有进程突然被killed,我以为是检修,后面发现好像简单的python代码可以正常运行。但是我的训练进程一启动就会被killed
在这里插入图片描述
第一时间没有用htop查看cpu,用top看着挺正常的,但是后面看htop,全是绿的,但是看不到那个进程占用了cpu,然后我怀疑是我的深度学习进程异常关闭,是不是产生了僵尸进程或者孤儿进程,然后把我的用户下的所有进程全部关闭了,依然无法解决。
在这里插入图片描述

排查

sysdig -c  topprocs_cpu #查看cpu占用情况

好家伙终于被我发现了,这个nettools,删不掉会一直重启,果然是中病毒了
在这里插入图片描述
这个时候但凡启动一个大点的应用都会被自动killed,所有我这里想使用杀毒软件已经晚了,也会自动被killed

IP排查

netstat -napt

把几个可疑的异常流量拧出来
在这里插入图片描述
在这里插入图片描述
不过这里我尝试把他们禁止掉,但又会自动生成新的连接,所有最重要的应该是找到木马程序和服务

 sudo iptables -A INPUT -s 185.18.222.159 -j DROP
 sudo ss -K src 185.18.222.159

本地连接日志查询

然后我就想看看是不是最近异常有异地的登录记录

last

查看最近登陆情况
以及检查是不是有新增的用户

cat /etc/passwd

不过都没有收获

然后离谱的来了,当我查询最近的失败登录日志的时候发现密密麻麻从上个月就开始的暴力破解

sudo cat /var/log/auth.log.0 | grep "Failed"

在这里插入图片描述
如果顺着这个ip找到了最近的一次的情况,好好好,这个用户密码太简单,被暴力试出来来了

sudo tail -n 5000 /var/log/auth.log

在这里插入图片描述

我采取的措施

我再查询日志分析,这个ip好像是学校内部的ip 应该是某个学校的内部设备被黑了 一直换着ip来尝试 今天早上突然试成功了 然后9-30开始到9-43 启动root权限 连接了13分钟 。
首先就是赶紧把密码给换了,然后就是想把test用户所有的进程删掉不过没用,再排查test用户目录下的文件,不过没什么收获,操作日志应该都被清楚了。
在这里插入图片描述

sudo crontab -u test –e # 查看是否有定时任务
* * * * * /var/tmp/.cache/upd >/dev/null 2>&1
* * * * * /tmp/.cache/go.sh

然后再从已经启动的服务里面查看是否有可疑的服务

systemctl list-unit-files --state=enabled

我发现有个服务启动了两次,而且命名很奇怪
NPvm2nhT.service enabled enabled
NPvm2nhT.service enabled enabled

追溯服务源头

systemctl status NPvm2nhT.service #详细信息
sudo systemctl cat NPvm2nhT.service #查路径
systemctl is-active NPvm2nhT.service # 是否还在执行

sudo systemctl stop NPvm2nhT.service  #停止服务
sudo systemctl disable NPvm2nhT.service #防止自动重启
sudo rm -f /lib/systemd/system/NPvm2nhT.service #删除服务文件

sudo systemctl daemon-reload #重新加载配置文件

下面是这个服务的信息,就是木马服务没跑了
/lib/systemd/system/NPvm2nhT.service
[Unit]
Description=service
After=network.target

[Service]
Type=simple
ExecStart=/bin/XoGefczg #恶意软件位置
RemainAfterExit=yes
Restart=always #总是自动启动
RestartSec=60s #每60秒重启

[Install]
WantedBy=multi-user.target

查看查看系统级别的 Cron 任务

sudo ls /etc/cron.d/

7IEutd27 anacron e2scrub_all popularity-contest sysstat

 sudo cat /etc/cron.d/7IEutd27

*/1 * * * * root /bin/XoGefczg 1 1

sudo rm -f /etc/cron.d/7IEutd27 #删除cron任务

sudo rm -f /bin/XoGefczg #删除可执行文件

做了上面的操作,目前暂时把cpu解放了,后续就安装杀毒软件,对全盘进行查杀

sudo apt-get update
sudo apt-get install clamav clamav-daemon chkrootkit rkhunter -y
sudo freshclam
sudo clamscan -r / --bell -i
sudo chkrootkit
sudo rkhunter --check

又发现了两个木马文件
在这里插入图片描述

在这里插入图片描述

目前来说,经过去前面的操作,cpu没有再出现问题,但我感觉可能还有残余的东西没有清除干净,后面再慢慢排查。

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

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

相关文章

安卓好软-----电脑端查看apk全部信息的工具 查看包名 名称以及权限等等

有时候从网络下载的应用很多是英文。时间久了会忘记到底是什么apk应用。这款工具可以方便的查看apk应用的名称 包名以及各种权限 图标 大小版本号等等。方便用户随时查看 APK Helper能够详细地获得安装包名、软件名称、APK证书、真实版本号、要求的手机版本、系统权限、以及证书…

算法每日双题精讲——双指针(移动零,复写零)

🌟快来参与讨论💬,点赞👍、收藏⭐、分享📤,共创活力社区。 🌟 别再犹豫了!快来订阅我们的算法每日双题精讲专栏,一起踏上算法学习的精彩之旅吧!💪…

【SQL】在 SQL Server 中创建数据源是 MySQL 数据表的视图

背景:Windows系统已安装了mysql5.7和sqlServer数据库,现在需要在sqlServer创建视图或者查询来自mysql的数据,视图的数据来源mysql数据库。下面进行实现在sqlserver实现获取mysql数据表数据构建视图。 1、打开 ODBC 数据源管理器,…

Git 入门篇(一)

前言 操作系统:win11 64位 与gitee搭配使用 Git 入门篇(一) Git 入门篇(二) Git 入门篇(三) 目录 git下载、安装与配置 下载 安装 配置 git下载、安装与配置 下载 官网:git-…

【React】条件渲染——逻辑与运算符

条件渲染——逻辑与&&运算符 你会遇到的另一个常见的快捷表达式是 JavaScript 逻辑与(&&)运算符。在 React 组件里,通常用在当条件成立时,你想渲染一些 JSX,或者不做任何渲染。 function Item({ nam…

Ubuntu 的 ROS 操作系统安装与测试

引言 机器人操作系统(ROS, Robot Operating System)是一个用于开发机器人应用的开源框架,它提供了一系列功能丰富的库和工具,能够帮助开发者构建和控制机器人。 当前,ROS1的最新版本为Noetic Ninjemys,专为…

无人驾驶汽车——AI技术在交通领域的进展与未来展望

文章目录 前言什么是无人驾驶汽车?特斯拉的无人驾驶愿景无人驾驶的技术进程:从DARPA挑战赛到特斯拉中国无人驾驶技术的现状谷歌的加入与优步的竞争深度学习的到来与特斯拉的独特优势无人驾驶的未来:机遇与挑战总结前言 今天,我想通过讲一个故事,帮助大家更好地理解无人驾…

MCU面试题

面试题 1、Crotex-M 处理器才用的架构是"v7" Cortex-M3处理器是基于ARMv7-M架构的处理器,支持更丰富的指令集,包括许多32位指令,这些指令可以高效的使用高位寄存器。另外,M3还支持: 查表跳转指令和条件执行&…

基于多设计模式下的同步异步日志系统

目录 一、项目介绍 1.1 项目功能 1.2 开发环境 1.3 核心技术 1.4 环境搭建 二、日志系统介绍 2.1 日志系统存在的必要性 2.2 日志系统的技术实现 三、相关技术知识的补充 3.1 不定参函数的使用 3.2 设计模式 四、日志系统框架设计 4.1 模块划分 4.2 模块关系图 …

C# 选择导入文件的路径、导出文件的路径

通过C#代码,调出windows风格的文件选择对话框和存储文件对话框。提供界面来选择文件的位置,并将完整路径以字符串形式返回。 1、选择导入文件,获取其路径 C#通过这段代码将弹出一个文件选择对话框,允许用户选择一个文件&#xff…

【Hadoop实训】Hive 数据操作①

目录 一、准备文件 1、创建表 2、 数据映射 二、HIVE的数据操作 1、基本查询 a、全表查询 b、选择特定字段查询 c、查询员工表总人数 d、查询员工表总工资额 e、查询5条员工表的信息 2、Where条件查询 a、查询工资等于5000的所有员工 b、查询工资在500到1000的员工信息 …

Kylin Server V10 下自动安装并配置Kafka

Kafka是一个分布式的、分区的、多副本的消息发布-订阅系统,它提供了类似于JMS的特性,但在设计上完全不同,它具有消息持久化、高吞吐、分布式、多客户端支持、实时等特性,适用于离线和在线的消息消费,如常规的消息收集、…

goroutine 介绍

引子: 线程比如打开腾讯视频然后开始下载多个视频,下载任务就是线程 但是这并不是同时进行的,只是时间片比较短切换的比较快 进程和线程的关系 有些程序可以多进程有些可能不支持 并发和并行 并发和并行的根本区别是:并发在同一时…

AlphaProof IMO 2024 P1 in LEAN 之 简介

AlphaProof 是用于进行数学证明的人工智能,其中,对于 IMO 2024 中的6道题中的 4 道。本系列博文,就 AlphaProof 对于 IMO 2024 P1 给出的答案进行详细讲述。这里是此系列的第一篇。 IMO 2024 P1 题目如下: IMO 2024 P1 答案 α 为…

Android Framework AMS(11)广播组件分析-2(注册/注销流程解读)

该系列文章总纲链接:专题总纲目录 Android Framework 总纲 本章关键点总结 & 说明: 说明:本章节主要解读广播组件的动态注册/注销过程及静态注册过程。关注思维导图中左上侧部分即可。 有了前面startActivity流程和service组件启动流程分…

Llamaindex RAG 实践

大模型支持的最强大的应用程序之一是复杂的问答聊天机器人。这些应用程序可以回答有关特定源信息的问题。这些应用程序使用一种称为检索增强生成 (RAG) 的技术。 1. 什么是RAG? 当你需要给模型注入新的知识时,有两种方法&#xf…

C#基础入门--类的建立与使用

上周刚开C#,这门课,第一节课就感觉不对劲了,感觉跟java很像(上图C#,下图java),进来页面都差不多: 这里介绍以下我C#的第一个程序,以类的思想定义一个student类,用户输入类中的属性信息后&#x…

LangChain Ollama实战文献检索助手(二)少样本提示FewShotPromptTemplate示例选择器

本期是用样例来提示大模型生成我们想要的答案。即在输入中给定提示的样例,以及提示模板,然后匹配较相关的样例进行文献综述。 创建示例样本FewShotPromptTemplate 这里我用GTP-o1生成了几个回答,作为样本 samples [{"theme": &…

GNN系统学习:简单图论、环境配置、PyG中图与图数据集的表示和使用

Reference datawhale开源学习资料 开篇 1.1 为什么要在图上进行深度学习? 在过去的深度学习应用中,我们接触的数据形式主要是这四种:矩阵、张量、序列(sequence)和时间序列(time series)。然…

嵌入式面试八股文(六)·ROM和RAM的区别、GPIO的八种工作模式、串行通讯和并行通讯的区别、同步串行和异步串行的区别

目录 1. ROM和RAM的区别 2. GPIO的八种工作模式 3. 串行通讯和并行通讯的区别 3.1 串行通讯 3.2 并行通讯 3.3 对比 4. 同步串行和异步串行的区别 4.1 时钟信号 4.2 数据传输效率 4.3 应用场景 4.4 硬件复杂性 1. ROM和RAM的区别 ROM(Read-O…