如何防止 Docker 注入了恶意脚本
根据您的描述,攻击者通过 CentOS 7 系统中的 Docker 注入了恶意脚本,导致自动启动名为 “masscan” 和 “x86botnigletjsw” 的进程。这些进程可能用于网络扫描或其他恶意活动。为了解决这一问题,建议您采取以下步骤:
1. 停止并删除可疑容器和进程:
- 列出所有运行中的容器:
docker ps -a
检查输出,寻找与 “masscan” 或 “x86botnigletjsw” 相关的容器。
- 停止并删除可疑容器:
docker stop [CONTAINER_ID]docker rm [CONTAINER_ID]
将 [CONTAINER_ID] 替换为可疑容器的实际 ID。
- 查找并终止可疑进程:
ps aux | grep -E 'masscan|x86botnigletjsw'
找到相关的进程 ID(PID),然后执行:
kill -9 [PID]
将 [PID] 替换为实际的进程 ID。
2. 删除恶意镜像:
- 列出所有镜像:
docker images
检查输出,寻找不明来源或可疑的镜像。
- 删除可疑镜像:
docker rmi [IMAGE_ID]
将 [IMAGE_ID] 替换为可疑镜像的实际 ID。
3. 检查并清理持久化启动项:
- 检查定时任务(Cron Jobs):
crontab -lls -la /etc/cron.d/ls -la /etc/cron.daily/ls -la /etc/cron.hourly/ls -la /var/spool/cron/
查找是否有可疑的定时任务,如果发现,使用合适的编辑器(如 vi)打开并删除相关条目。
- 检查系统服务(Systemd):
systemctl list-units --type=service
查找是否有可疑的服务,如发现,停止并禁用该服务:
systemctl stop [SERVICE_NAME]systemctl disable [SERVICE_NAME]
将 [SERVICE_NAME] 替换为可疑服务的实际名称。
4. 加强 Docker 和系统安全:
-
限制 Docker API 访问:
确保 Docker API 未暴露在公共网络上,检查 Docker 的启动参数,确保未启用远程访问。 -
更新系统和 Docker:
保持操作系统和 Docker 的最新版本,以修复已知的安全漏洞。 -
配置防火墙:
使用firewalld或iptables限制不必要的入站和出站流量。 -
监控系统活动:
使用工具如auditd或syslog监控系统日志,及时发现异常活动。
5. 定期备份和审计:
-
备份重要数据:
定期备份关键数据,以防止数据丢失。 -
审计用户和权限:
定期检查系统用户和权限,确保没有多余的用户或权限配置。
通过以上步骤,您可以清理系统中的恶意容器和进程,并加强系统的安全性,防止类似事件再次发生。
在 CentOS 7 系统中,若要阻止名为 “x86botnigletjsw” 的进程执行,您可以采取以下步骤:
-
查找并终止现有的 “x86botnigletjsw” 进程:
首先,使用以下命令查找该进程的 PID(进程标识符):
pgrep x86botnigletjsw该命令将返回所有名为 “x86botnigletjsw” 的进程的 PID。然后,使用
kill命令终止这些进程:kill -9 <PID>请将
<PID>替换为实际的进程 ID。如果有多个 PID,可以重复执行上述命令,或者使用pkill命令一次性终止所有同名进程:pkill -9 x86botnigletjsw -
防止进程重新启动:
如果该进程由某个父进程监控并自动重启,需要找到其父进程并终止。使用以下命令查看进程的详细信息:
ps -ef | grep x86botnigletjsw输出示例:
root 28628 1 1.3 0.2 200844 36796 ? S 1:01 0:01 x86botnigletjsw在此示例中,
28628是目标进程的 PID,1是其父进程(PPID)。如果 PPID 不为 1,表示有特定的父进程在管理该进程,需要终止该父进程。 -
阻止进程再次执行:
为了防止 “x86botnigletjsw” 进程再次启动,可以采取以下措施:
-
检查启动脚本: 查看
/etc/init.d/、/etc/rc.d/、/etc/systemd/system/等目录,查找是否有与该进程相关的启动脚本。如果存在,删除或禁用这些脚本。 -
设置文件权限: 找到 “x86botnigletjsw” 可执行文件的位置,修改其权限以防止执行:
chmod -x /path/to/x86botnigletjsw或者更改所有者:
chown root:root /path/to/x86botnigletjsw并设置权限:
chmod 700 /path/to/x86botnigletjsw -
使用
systemd限制: 如果该进程通过systemd管理,可以创建一个自定义的systemd服务,将其设置为禁止启动。创建一个新的服务文件/etc/systemd/system/x86botnigletjsw.service,内容如下:[Unit] Description=Disable x86botnigletjsw Service [Service] Type=oneshot ExecStart=/bin/true [Install] WantedBy=multi-user.target然后启用该服务:
systemctl daemon-reload systemctl enable x86botnigletjsw.service这将创建一个空的占位服务,阻止同名的其他服务启动。
-
-
监控系统:
为了防止类似的进程在未来运行,建议:
-
安装并配置防火墙: 使用
firewalld或iptables限制不必要的网络访问。 -
安装防病毒软件: 定期扫描系统,查找并清除恶意软件。
-
定期检查系统日志: 查看
/var/log/目录下的日志文件,监控可疑活动。 -
更新系统: 确保系统和所有软件包都是最新的,以修复已知的安全漏洞。
-
通过以上步骤,您可以有效地阻止名为 “x86botnigletjsw” 的进程在 CentOS 7 系统中执行,并提高系统的整体安全性。
相关文章:
如何防止 Docker 注入了恶意脚本
根据您的描述,攻击者通过 CentOS 7 系统中的 Docker 注入了恶意脚本,导致自动启动名为 “masscan” 和 “x86botnigletjsw” 的进程。这些进程可能用于网络扫描或其他恶意活动。为了解决这一问题,建议您采取以下步骤: 1. 停止并删…...
使用python接入腾讯云DeepSeek
本文主要从提供SSE方式接入DeepSeek,并通过fastapi websocket对外提供接入方法。 参考文档: 腾讯云大模型:https://cloud.tencent.com/document/product/1759/109380 fastAPI官网:https://fastapi.tiangolo.com/ WebSocketManager…...
【MySQL】服务正在启动或停止中,请稍候片刻后再试一次【解决方案】
问题呈现 在使用MySQL的过程中我们可能会遇到以上的情况 解决方法 首先以管理员身份打开命令行窗口,注意是管理员身份,不然无权限访问。输入命令tasklist| findstr "mysql",用于查找mysql的残留进程。这个时候我们就会看到一个…...
测试工程师玩转DeepSeek之Prompt
以下是测试工程师使用DeepSeek的必知必会提示词指南,分为核心场景和高效技巧两大维度: 一、基础操作提示模板 1. 测试用例生成 "作为[金融系统/物联网设备/云服务]测试专家,请为[具体功能模块]设计测试用例,要求࿱…...
【PyTorch】2024保姆级安装教程-Python-(CPU+GPU详细完整版)-
一、准备工作 pytorch需要python3.6及以上的python版本 我是利用Anaconda来管理我的python。可自行安装Anaconda。 Anaconda官网 Free Download | Anaconda 具体Anaconda安装教程可参考 https://blog.csdn.net/weixin_43412762/article/details/129599741?fromshareblogdet…...
精选案例展 | 智己汽车—全栈可观测驱动智能化运营与成本优化
本案例为“观测先锋 2024 可观测平台创新应用案例大赛”精选案例,同时荣获IT168“2024技术卓越奖评选-年度创新解决方案”奖。 项目背景 近年来,中国汽车行业进入转型升级阶段,智能网联技术成为行业发展的核心。车联网、自动驾驶等技术的加速…...
MySQL 使用 `WHERE` 子句时 `COUNT(*)`、`COUNT(1)` 和 `COUNT(column)` 的区别解析
文章目录 1. COUNT() 函数的基本作用2. COUNT(*)、COUNT(1) 和 COUNT(column) 的详细对比2.1 COUNT(*) —— 统计所有符合条件的行2.2 COUNT(1) —— 统计所有符合条件的行2.3 COUNT(column) —— 统计某一列非 NULL 的记录数 3. 性能对比3.1 EXPLAIN 分析 4. 哪种方式更好&…...
Linux运维——网络管理
Linux网络管理 一、Linux网络应用要点二、命令常见用法2.1、curl2.1.1、发送GET请求2.1.2、发送POST请求2.1.3、设置请求头2.1.4、处理cookies2.1.5、处理重定向2.1.6、调试和详细信息2.1.7、使用代理2.1.8、文件上传2.1.9、其它常用选项2.1.10、综合示例 2.2、wget2.2.1、基本…...
STM32CUBEIDE FreeRTOS操作教程(十三):task api 任务访问函数
STM32CUBEIDE FreeRTOS操作教程(十三):task api 任务访问函数 STM32CUBE开发环境集成了STM32 HAL库进行FreeRTOS配置和开发的组件,不需要用户自己进行FreeRTOS的移植。这里介绍最简化的用户操作类应用教程。以STM32F401RCT6开发板…...
Jmeter+Jenkins接口压力测试持续集成
项目介绍 接口功能测试应用: http://www.weather.com.cn/data/cityinfo/<city_code>.html 测试功能:获取对应城市的天气预报 请求方法:Get 压测脚本开发工具:jmeter 源码脚本位置: https://github.com/shife…...
深入浅出ES6:现代JavaScript的基石
ES6(ECMAScript 2015)是JavaScript语言的一次重大更新,引入了许多新特性,使JavaScript更加强大、优雅和易于维护。这些特性已经成为现代JavaScript开发的基石,掌握它们对于任何JavaScript开发者都至关重要。本文将深入…...
实现使用RBF(径向基函数)神经网络模拟二阶电机数学模型中的非线性干扰,以及使用WNN(小波神经网络)预测模型中的非线性函数来抵消迟滞影响的功能
下面将详细介绍如何实现使用RBF(径向基函数)神经网络模拟二阶电机数学模型中的非线性干扰,以及使用WNN(小波神经网络)预测模型中的非线性函数来抵消迟滞影响的功能。我们将按照以下步骤进行: 步骤1&#x…...
潜水泵,高效排水,守护城市与农田|深圳鼎跃
洪水是常见的自然灾害,在春夏季节的我国降水多为丰富,容易造成城市内部的洪涝灾害。特别是低洼地区的积水,不仅容易造成城市交通的出行不便,还存在潜在的隐患,严重影响了人们正常生活。 潜水泵作为一种高效、可靠的排水…...
易基因:RNA甲基化修饰和R-loop的交叉调控:从分子机制到临床意义|深度综述
大家好,这里是专注表观组学十余年,领跑多组学科研服务的易基因。 R-loop(RNA-DNA杂合结构)是转录调控、DNA复制和修复等关键细胞过程的重要组成部分。但R-loop异常积累可能会破坏基因组完整性,从而导致多种疾病的发生…...
115 道 MySQL 面试题,从简单到深入!
1. 什么是数据库事务? 数据库事务是一个作为单个逻辑工作单元执行的一系列操作。事务具有ACID属性,即原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性…...
一周学会Flask3 Python Web开发-flask3上下文全局变量session,g和current_app
锋哥原创的Flask3 Python Web开发 Flask3视频教程: 2025版 Flask3 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili flask3提供了session,g和current_app上下文全局变量来方便我们操作访问数据。 以下是一个表格,用于比较Flask中的…...
MFC学习笔记-1
一、编辑框和按钮 //.h文件private:CString str;//给窗口类加了一个变量(定义一个成员变量),关联到IDC_EDIT1中(要在实现中关联,源文件文件夹中)CString str2;//接收button2,和IDC_EDIT2绑定 p…...
Linux搜索查找类指令
1、find指令 基本语法:find [搜索范围] [选项] 功能:将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或目录显示在终端。 常用选项: 操作 命令示例 说明 查找指定路径下的所有文件 find /path/to/dir 查找指定目…...
江协科技/江科大-51单片机入门教程——P[1-1] 课程简介P[1-2] 开发工具介绍及软件安装
本教程也力求在玩好单片机的同时了解一些计算机的基本概念,了解电脑的一些基本操作,了解电路及其元器件的基本理论,为我们学习更高级的单片机,入门IT和信息技术行业,打下一定的基础。 目录 1.课程简介 2.开发工具及…...
监听load和hashchange事件
监听load和hashchange事件 上篇文章中,我们已经将菜谱的数据给拿到,并且已经可以渲染到页面上,本篇我们将为程序添加一些事件; 注:本项目来自于Jonas Schmedtmann创建,文章仅仅作为学习作用! 菜…...
Python爬虫实战:研究MechanicalSoup库相关技术
一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...
龙虎榜——20250610
上证指数放量收阴线,个股多数下跌,盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型,指数短线有调整的需求,大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的:御银股份、雄帝科技 驱动…...
Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...
TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...
最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
【算法训练营Day07】字符串part1
文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接:344. 反转字符串 双指针法,两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...
【决胜公务员考试】求职OMG——见面课测验1
2025最新版!!!6.8截至答题,大家注意呀! 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:( B ) A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...
MySQL 8.0 OCP 英文题库解析(十三)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...
Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...
