常见挖矿病毒处理方法(qW3xT/Ddgs.3011/S01wipefs/acpidtd/MSFC)

本文详细介绍了五种常见挖矿病毒及其处理方法,包括qW3xT、Ddgs.3011、S01wipefs、acpidtd和MSFC。提供了病毒现象分析、传播原理、处理步骤及系统防护措施,帮助读者有效应对挖矿病毒攻击。

常见挖矿病毒处理方法

1、常见病毒
病毒名称:qW3xT:
现象:占用超高CPU,进程查杀之后自启动。
中毒案例:(……)
2、病毒名称:Ddgs.3011
现象:占用超高CPU,进程查杀之后自启动。
中毒案例:(……)
3、病毒名称:S01wipefs
现象:占用超高CPU,无定时任务,但是病毒源文件存放在较多位置,比较难清除干净。
中毒案例:(……)
4、病毒名称:acpidtd
现象:占用超高CPU,无定时任务,但是病毒源文件存放在较多位置,比较难清除干净。
中毒案例:(……)
5、病毒名称:MSFC
现象:占用超高CPU及内存,病毒源文件单一,较容易查杀。
中毒案例:(……)

2、中毒基本现象
系统CPU占用接近100%;
在这里插入图片描述
系统卡顿,执行基本命令响应缓慢;
系统出现异常进程,无法正常kill;
在这里插入图片描述
系统内存异常,占用不稳定。
在这里插入图片描述
3、基本分析过程
检查是否存在占用CPU较高的进程:
命令:ps –aux|sort –rn –k +3 |head
在这里插入图片描述
检查是否存在占用内存较高的进程:
命令:ps –aux|sort –rn –k +4 |head
在这里插入图片描述
检查是否有异常定时任务:
命令:Crontab -l
检查是否有异常自启服务:
命令:ll /etc/rc.d/init.d
Cat /etc/rc.local
检查是否有异常登录记录:
命令:last –a
4、病毒传播及生存原理
通过ssh暴力破解,U盘等物理介质,sql注入等形式将病毒源文件传播到服务器中,并以脚本,定时任务,自启动服务形式,执行挖矿程序,且kill之后能够再次启动。
如下:
在这里插入图片描述
5、处理过程
以上涉及的所有病毒,基本上都可以通过以上方法定位,并通过以下步骤进行处理:
1)top 检查可疑进程,pkill 杀死进程,如果进程还能存在,说明一定有定时任务或守护进程(开机启动),检查/var/spool/cron/root 和/etc/crontab 和/etc/rc.lcoal
2)找到可疑程序的位置将其删除,如果删除不掉,查看隐藏权限。lsattr chattr 修改权限后将其删除即可。
3)查看/root/.ssh/目录下是否设置了免秘钥登陆,并查看ssh_config配置文件是否被篡改。
4)在防火墙关闭不必要的映射端口号,重启再测试是否还会有可疑进程存在。
以上提及的所有病毒查杀方法如下附件:

6、结果验证
系统资源占用恢复正常:
在这里插入图片描述
无病毒相关进程:
在这里插入图片描述
系统使用恢复正常,无明显卡顿:
不再自动生成异常定时任务:
在这里插入图片描述
在/etc/rc* 这些目录下,没有病毒相关异常文件:
在这里插入图片描述
7、基本防护
1、建议配置login.defs文件。具体可参考如下:
PASS_MAX_DAYS 90
PASS_MIN_DAYS 1
PASS_MIN_LEN 8
PASS_WARN_AGE 7
FAIL_DELAY 10
2、配置pam.d/system-auth文件,具体可参考如下:
account required /lib/security/pam_tally.so deny=5 no magic_root reset。
password required pam_cracklib.so dcredit=-1 ucredit=-1 ocredit=-1 lcredit=0 minlen=8
3、建议创建其他管理账号,禁用root账号远程管理;
4、建议使用chmod命令修改rc3.d等文件权限,满足配置文件权限不能大于644,可执行文件不能大于755的原则。
5、建议系统部署支持统一管理的恶意代码防范软件,定期对服务器操作系统进行恶意代码扫描。
7、建议限制登录终端的操作超时锁定时间,具体可参考如下:
配置/etc/profile文件,添加TMOUT=300,超时退出参数。
8、配置 /etc/hosts.deny和/etc/hosts.allow文件,限制终端登陆地址范围
针对每种病毒的特性,也有相应的防护方法,具体请参照以下内容防护部分。

F:\anaconda\envs\airsim3\python.exe F:/AirSim/pythoncode/aircode/trysmol.py Loading checkpoint shards: 100%|██████████| 5/5 [00:10<00:00, 2.20s/it] The image processor of type `Qwen2VLImageProcessor` is now loaded as a fast processor by default, even if the model checkpoint was saved with a slow processor. This is a breaking change and may produce slightly different outputs. To continue using the slow processor, instantiate this class with `use_fast=False`. Note that this behavior will be extended to all models in a future release. You have video processor config saved in `preprocessor.json` file which is deprecated. Video processor configs should be saved in their own `video_preprocessor.json` file. You can rename the file or load and save the processor back which renames it automatically. Loading from `preprocessor.json` will be removed in v5.0. F:\anaconda\envs\airsim3\lib\site-packages\smolagents\default_tools.py:135: RuntimeWarning: This package (`duckduckgo_search`) has been renamed to `ddgs`! Use `pip install ddgs` instead. self.ddgs = DDGS(**kwargs) ┌────────────────────────────────── New run ──────────────────────────────────┐ │ │ │ Could you give me the 118th number in the Fibonacci sequence? │ │ │ └─ TransformersModel - F:/qwen/Qwen2.5-VL-7B-Instruct ────────────────────────┘ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Step 1 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ The attention mask is not set and cannot be inferred from input because pad token is same as eos token. As a consequence, you may observe unexpected behavior. Please pass your input&#39;s `attention_mask` to obtain reliable results. 如何修改上个问题的代码解决这个问题
08-02
你遇到的警告信息: ``` The attention mask is not set and cannot be inferred from input because pad token is same as eos token... ``` 是由于模型内部在处理输入时,`pad_token` 与 `eos_token` 相同,导致无法正确生成 `attention_mask`。虽然不是错误,但可能影响模型行为。为了解决这个问题,我们可以在调用模型前向传播时,**手动传入 `attention_mask`**。 --- ### ✅ 修改后的代码如下(针对你使用的 `smolagents` + `TransformersModel` 架构): ```python from smolagents import CodeAgent, TransformersModel # 自定义 TransformersModel 并确保在调用时使用 attention_mask class MyTransformersModel(TransformersModel): def __call__(self, prompt, **kwargs): # 编码输入 inputs = self.tokenizer(prompt, return_tensors="pt", padding=True, truncation=True) input_ids = inputs["input_ids"] attention_mask = inputs["attention_mask"] # 手动传入 attention_mask outputs = self.model.generate( input_ids=input_ids, attention_mask=attention_mask, max_new_tokens=4096, pad_token_id=self.tokenizer.eos_token_id ) # 解码输出 response = self.tokenizer.decode(outputs[0], skip_special_tokens=True) return response # 模型路径 model_id = "F:/qwen/Qwen2.5-VL-7B-Instruct" # 使用自定义模型 model = MyTransformersModel(model_id=model_id, use_fast=False) # 创建 agent agent = CodeAgent(tools=[], model=model, add_base_tools=True) # 运行任务 agent.run( "Could you give me the 118th number in the Fibonacci sequence?", ) ``` --- ### ✅ 关键点说明: 1. **自定义 `MyTransformersModel` 类**:重写 `__call__` 方法,确保每次调用模型时都显式传入 `attention_mask`。 2. **设置 `pad_token_id=self.tokenizer.eos_token_id`**:明确指定填充 token,避免与 `eos_token` 冲突。 3. **使用 `skip_special_tokens=True`**:去除输出中的特殊符号,提升可读性。 ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值