当前位置: 首页 > news >正文

如何防止 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 的最新版本,以修复已知的安全漏洞。

  • 配置防火墙:
    使用 firewalldiptables 限制不必要的入站和出站流量。

  • 监控系统活动:
    使用工具如 auditdsyslog 监控系统日志,及时发现异常活动。

5. 定期备份和审计:

  • 备份重要数据:
    定期备份关键数据,以防止数据丢失。

  • 审计用户和权限:
    定期检查系统用户和权限,确保没有多余的用户或权限配置。

通过以上步骤,您可以清理系统中的恶意容器和进程,并加强系统的安全性,防止类似事件再次发生。

在 CentOS 7 系统中,若要阻止名为 “x86botnigletjsw” 的进程执行,您可以采取以下步骤:

  1. 查找并终止现有的 “x86botnigletjsw” 进程:

    首先,使用以下命令查找该进程的 PID(进程标识符):

    pgrep x86botnigletjsw
    

    该命令将返回所有名为 “x86botnigletjsw” 的进程的 PID。然后,使用 kill 命令终止这些进程:

    kill -9 <PID>
    

    请将 <PID> 替换为实际的进程 ID。如果有多个 PID,可以重复执行上述命令,或者使用 pkill 命令一次性终止所有同名进程:

    pkill -9 x86botnigletjsw
    
  2. 防止进程重新启动:

    如果该进程由某个父进程监控并自动重启,需要找到其父进程并终止。使用以下命令查看进程的详细信息:

    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,表示有特定的父进程在管理该进程,需要终止该父进程。

  3. 阻止进程再次执行:

    为了防止 “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
      

      这将创建一个空的占位服务,阻止同名的其他服务启动。

  4. 监控系统:

    为了防止类似的进程在未来运行,建议:

    • 安装并配置防火墙: 使用 firewalldiptables 限制不必要的网络访问。

    • 安装防病毒软件: 定期扫描系统,查找并清除恶意软件。

    • 定期检查系统日志: 查看 /var/log/ 目录下的日志文件,监控可疑活动。

    • 更新系统: 确保系统和所有软件包都是最新的,以修复已知的安全漏洞。

通过以上步骤,您可以有效地阻止名为 “x86botnigletjsw” 的进程在 CentOS 7 系统中执行,并提高系统的整体安全性。

相关文章:

如何防止 Docker 注入了恶意脚本

根据您的描述&#xff0c;攻击者通过 CentOS 7 系统中的 Docker 注入了恶意脚本&#xff0c;导致自动启动名为 “masscan” 和 “x86botnigletjsw” 的进程。这些进程可能用于网络扫描或其他恶意活动。为了解决这一问题&#xff0c;建议您采取以下步骤&#xff1a; 1. 停止并删…...

使用python接入腾讯云DeepSeek

本文主要从提供SSE方式接入DeepSeek&#xff0c;并通过fastapi websocket对外提供接入方法。 参考文档&#xff1a; 腾讯云大模型&#xff1a;https://cloud.tencent.com/document/product/1759/109380 fastAPI官网&#xff1a;https://fastapi.tiangolo.com/ WebSocketManager…...

【MySQL】服务正在启动或停止中,请稍候片刻后再试一次【解决方案】

问题呈现 在使用MySQL的过程中我们可能会遇到以上的情况 解决方法 首先以管理员身份打开命令行窗口&#xff0c;注意是管理员身份&#xff0c;不然无权限访问。输入命令tasklist| findstr "mysql"&#xff0c;用于查找mysql的残留进程。这个时候我们就会看到一个…...

测试工程师玩转DeepSeek之Prompt

以下是测试工程师使用DeepSeek的必知必会提示词指南&#xff0c;分为核心场景和高效技巧两大维度&#xff1a; 一、基础操作提示模板 1. 测试用例生成 "作为[金融系统/物联网设备/云服务]测试专家&#xff0c;请为[具体功能模块]设计测试用例&#xff0c;要求&#xff1…...

【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 可观测平台创新应用案例大赛”精选案例&#xff0c;同时荣获IT168“2024技术卓越奖评选-年度创新解决方案”奖。 项目背景 近年来&#xff0c;中国汽车行业进入转型升级阶段&#xff0c;智能网联技术成为行业发展的核心。车联网、自动驾驶等技术的加速…...

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操作教程&#xff08;十三&#xff09;&#xff1a;task api 任务访问函数 STM32CUBE开发环境集成了STM32 HAL库进行FreeRTOS配置和开发的组件&#xff0c;不需要用户自己进行FreeRTOS的移植。这里介绍最简化的用户操作类应用教程。以STM32F401RCT6开发板…...

Jmeter+Jenkins接口压力测试持续集成

项目介绍 接口功能测试应用&#xff1a; http://www.weather.com.cn/data/cityinfo/<city_code>.html 测试功能&#xff1a;获取对应城市的天气预报 请求方法&#xff1a;Get 压测脚本开发工具&#xff1a;jmeter 源码脚本位置&#xff1a; https://github.com/shife…...

深入浅出ES6:现代JavaScript的基石

ES6&#xff08;ECMAScript 2015&#xff09;是JavaScript语言的一次重大更新&#xff0c;引入了许多新特性&#xff0c;使JavaScript更加强大、优雅和易于维护。这些特性已经成为现代JavaScript开发的基石&#xff0c;掌握它们对于任何JavaScript开发者都至关重要。本文将深入…...

实现使用RBF(径向基函数)神经网络模拟二阶电机数学模型中的非线性干扰,以及使用WNN(小波神经网络)预测模型中的非线性函数来抵消迟滞影响的功能

下面将详细介绍如何实现使用RBF&#xff08;径向基函数&#xff09;神经网络模拟二阶电机数学模型中的非线性干扰&#xff0c;以及使用WNN&#xff08;小波神经网络&#xff09;预测模型中的非线性函数来抵消迟滞影响的功能。我们将按照以下步骤进行&#xff1a; 步骤1&#x…...

潜水泵,高效排水,守护城市与农田|深圳鼎跃

洪水是常见的自然灾害&#xff0c;在春夏季节的我国降水多为丰富&#xff0c;容易造成城市内部的洪涝灾害。特别是低洼地区的积水&#xff0c;不仅容易造成城市交通的出行不便&#xff0c;还存在潜在的隐患&#xff0c;严重影响了人们正常生活。 潜水泵作为一种高效、可靠的排水…...

易基因:RNA甲基化修饰和R-loop的交叉调控:从分子机制到临床意义|深度综述

大家好&#xff0c;这里是专注表观组学十余年&#xff0c;领跑多组学科研服务的易基因。 R-loop&#xff08;RNA-DNA杂合结构&#xff09;是转录调控、DNA复制和修复等关键细胞过程的重要组成部分。但R-loop异常积累可能会破坏基因组完整性&#xff0c;从而导致多种疾病的发生…...

115 道 MySQL 面试题,从简单到深入!

1. 什么是数据库事务&#xff1f; 数据库事务是一个作为单个逻辑工作单元执行的一系列操作。事务具有ACID属性&#xff0c;即原子性&#xff08;Atomicity&#xff09;、一致性&#xff08;Consistency&#xff09;、隔离性&#xff08;Isolation&#xff09;和持久性&#xf…...

一周学会Flask3 Python Web开发-flask3上下文全局变量session,g和current_app

锋哥原创的Flask3 Python Web开发 Flask3视频教程&#xff1a; 2025版 Flask3 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili flask3提供了session,g和current_app上下文全局变量来方便我们操作访问数据。 以下是一个表格&#xff0c;用于比较Flask中的…...

MFC学习笔记-1

一、编辑框和按钮 //.h文件private:CString str;//给窗口类加了一个变量&#xff08;定义一个成员变量&#xff09;&#xff0c;关联到IDC_EDIT1中&#xff08;要在实现中关联&#xff0c;源文件文件夹中&#xff09;CString str2;//接收button2&#xff0c;和IDC_EDIT2绑定 p…...

Linux搜索查找类指令

1、find指令 基本语法&#xff1a;find [搜索范围] [选项] 功能&#xff1a;将从指定目录向下递归地遍历其各个子目录&#xff0c;将满足条件的文件或目录显示在终端。 常用选项&#xff1a; 操作 命令示例 说明 查找指定路径下的所有文件 find /path/to/dir 查找指定目…...

江协科技/江科大-51单片机入门教程——P[1-1] 课程简介P[1-2] 开发工具介绍及软件安装

本教程也力求在玩好单片机的同时了解一些计算机的基本概念&#xff0c;了解电脑的一些基本操作&#xff0c;了解电路及其元器件的基本理论&#xff0c;为我们学习更高级的单片机&#xff0c;入门IT和信息技术行业&#xff0c;打下一定的基础。 目录 1.课程简介 2.开发工具及…...

监听load和hashchange事件

监听load和hashchange事件 上篇文章中&#xff0c;我们已经将菜谱的数据给拿到&#xff0c;并且已经可以渲染到页面上&#xff0c;本篇我们将为程序添加一些事件&#xff1b; 注&#xff1a;本项目来自于Jonas Schmedtmann创建&#xff0c;文章仅仅作为学习作用&#xff01; 菜…...

CTF show Web 红包题第六弹

提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框&#xff0c;很难让人不联想到SQL注入&#xff0c;但提示都说了不是SQL注入&#xff0c;所以就不往这方面想了 ​ 先查看一下网页源码&#xff0c;发现一段JavaScript代码&#xff0c;有一个关键类ctfs…...

【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密

在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

css的定位(position)详解:相对定位 绝对定位 固定定位

在 CSS 中&#xff0c;元素的定位通过 position 属性控制&#xff0c;共有 5 种定位模式&#xff1a;static&#xff08;静态定位&#xff09;、relative&#xff08;相对定位&#xff09;、absolute&#xff08;绝对定位&#xff09;、fixed&#xff08;固定定位&#xff09;和…...

WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)

一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解&#xff0c;适合用作学习或写简历项目背景说明。 &#x1f9e0; 一、概念简介&#xff1a;Solidity 合约开发 Solidity 是一种专门为 以太坊&#xff08;Ethereum&#xff09;平台编写智能合约的高级编…...

Rapidio门铃消息FIFO溢出机制

关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系&#xff0c;以下是深入解析&#xff1a; 门铃FIFO溢出的本质 在RapidIO系统中&#xff0c;门铃消息FIFO是硬件控制器内部的缓冲区&#xff0c;用于临时存储接收到的门铃消息&#xff08;Doorbell Message&#xff09;。…...

Docker 本地安装 mysql 数据库

Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker &#xff1b;并安装。 基础操作不再赘述。 打开 macOS 终端&#xff0c;开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...

Vite中定义@软链接

在webpack中可以直接通过符号表示src路径&#xff0c;但是vite中默认不可以。 如何实现&#xff1a; vite中提供了resolve.alias&#xff1a;通过别名在指向一个具体的路径 在vite.config.js中 import { join } from pathexport default defineConfig({plugins: [vue()],//…...

掌握 HTTP 请求:理解 cURL GET 语法

cURL 是一个强大的命令行工具&#xff0c;用于发送 HTTP 请求和与 Web 服务器交互。在 Web 开发和测试中&#xff0c;cURL 经常用于发送 GET 请求来获取服务器资源。本文将详细介绍 cURL GET 请求的语法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的缩写…...

Qt 事件处理中 return 的深入解析

Qt 事件处理中 return 的深入解析 在 Qt 事件处理中&#xff0c;return 语句的使用是另一个关键概念&#xff0c;它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别&#xff1a;不同层级的事件处理 方…...