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

ubuntu22系统中毒后,无法开机修复教程

这个问题主要是病毒导致的,在升级到新的内核后,也就是开机后会自动应用新的内核,然后内核版本和病毒不兼容导致的问题。主要就是续费、重启服务器后,无法开机。只要执行下面教程就可以修复啦

1、进入救援系统

首先强制关机/断电关机,不然无法开机页面很久才能关机。

一般救援系统都是centos8 stream,进入即可,进入时给你一个ssh密钥,记住他,因为不会二次显示

2、执行下面脚本

1、挂载旧系统盘,进入chroot模式

# 步骤1:检查是否已挂载 info "步骤1:检查挂载点..." if ! mountpoint -q /mnt; then info "正在挂载 /dev/vdb1 到 /mnt..." mount /dev/vdb1 /mnt || { error "挂载失败!请手动执行: mount /dev/vdb1 /mnt" exit 1 } else info "/mnt 已挂载" fi # 步骤4:挂载系统目录并chroot info "步骤4:准备chroot环境..." cd /mnt || { error "无法进入 /mnt"; exit 1; } # 挂载必要的目录 for dir in dev proc sys run; do if [ ! -d "$dir" ]; then mkdir -p "$dir" fi mount --bind "/$dir" "$dir" && info "✅ 挂载 /$dir" done # 执行chroot命令 chroot /mnt /bin/bash

2、清除病毒文件脚本

#!/bin/bash # 终极强制删除脚本 - 优化版(避免重复安装防护) echo "🚀 开始强制清理 /var/adm 目录..." echo "======================================" # 记录日志 LOG_FILE="/var/log/force_clean_$(date +%Y%m%d_%H%M%S).log" echo "清理日志: $LOG_FILE" # 1. 首先检查目录状态 TARGET_DIR="/var/adm" if [ ! -d "$TARGET_DIR" ]; then echo "✅ 目录不存在,无需清理" # 检查防护是否已安装 if [ -f "/root/monitor_adm.sh" ] && crontab -l 2>/dev/null | grep -q "monitor_adm.sh"; then echo "✅ 防护已安装,跳过重复安装" exit 0 else echo "⚠️ 目录不存在但防护未安装,继续安装防护" fi fi echo "📁 目录存在,开始分析..." echo "======================================" # 2. 显示目录详细信息(仅调试用,正式运行可注释掉) # echo "🔍 目录信息:" # ls -ld "$TARGET_DIR" 2>/dev/null # echo "" # 3. 检查文件系统属性 echo "🔒 检查文件属性..." lsattr -R "$TARGET_DIR" 2>/dev/null | head -10 # 4. 检查占用进程并终止 echo "🛑 检查并终止相关进程..." PIDS=$(lsof +D "$TARGET_DIR" 2>/dev/null | awk 'NR>1 {print $2}' | sort -u) if [ -n "$PIDS" ]; then echo "发现并终止进程: $PIDS" kill -9 $PIDS 2>/dev/null sleep 2 fi # 5. 强制删除流程 echo "💥 开始强制删除..." chattr -R -i -a "$TARGET_DIR" 2>/dev/null find "$TARGET_DIR" -delete 2>/dev/null rm -rf "$TARGET_DIR" 2>/dev/null # 6. 如果仍然存在,尝试其他方法 if [ -d "$TARGET_DIR" ]; then echo "⚠️ 常规方法失败,尝试其他方法..." # 方法1: 重命名然后删除 mv "$TARGET_DIR" "${TARGET_DIR}_bak_$(date +%s)" 2>/dev/null # 方法2: 使用 perl 删除 perl -e 'use File::Path qw(remove_tree); remove_tree("/var/adm", {error => \my $err});' 2>/dev/null # 方法3: 进入目录删除 cd /var && rm -rf adm 2>/dev/null fi # 7. 最终检查 echo "🔍 最终检查..." if [ -d "$TARGET_DIR" ]; then echo "❌ 删除失败!目录仍然存在" # 创建临时保护 touch /var/.adm_locked 2>/dev/null chattr +i /var/.adm_locked 2>/dev/null else echo "✅ 成功删除 $TARGET_DIR 目录!" fi # 8. 智能安装防护(只安装一次) echo "======================================" echo "🛡️ 检查并安装防护..." # 检查监控脚本是否存在 MONITOR_SCRIPT="/root/monitor_adm.sh" if [ ! -f "$MONITOR_SCRIPT" ]; then echo "📝 创建监控脚本..." cat > "$MONITOR_SCRIPT" << 'EOF' #!/bin/bash # 监控脚本 - 防止恶意目录重现 LOG="/var/log/security_monitor.log" TARGET="/var/adm" MAX_LOG_SIZE=10485760 # 10MB # 限制日志大小 if [ -f "$LOG" ] && [ $(stat -c%s "$LOG") -gt $MAX_LOG_SIZE ]; then mv "$LOG" "${LOG}.old" fi echo "[$(date)] 安全监控运行中..." >> $LOG # 如果目录被重新创建 if [ -d "$TARGET" ]; then echo "[$(date)] ⚠️ 检测到恶意目录重现!" >> $LOG # 记录并删除 ls -la "$TARGET/" >> $LOG 2>&1 # 强力删除 chattr -R -i -a "$TARGET" 2>/dev/null find "$TARGET" -delete 2>/dev/null rm -rf "$TARGET" 2>/dev/null if [ ! -d "$TARGET" ]; then echo "[$(date)] ✅ 已清理 $TARGET" >> $LOG else echo "[$(date)] ❌ 清理失败,目录仍在" >> $LOG fi fi # 检查异常进程(精简版) ps aux | grep -E "(/var/adm|\./adm|miner|xmrig|ddgs)" | grep -v grep | head -5 | while read line; do pid=$(echo $line | awk '{print $2}') echo "[$(date)] 发现并终止异常进程: $line" >> $LOG kill -9 $pid 2>/dev/null done EOF chmod +x "$MONITOR_SCRIPT" echo "✅ 监控脚本已创建: $MONITOR_SCRIPT" else echo "✅ 监控脚本已存在,跳过创建" fi # 9. 检查并添加crontab(只添加一次) echo "📅 检查定时任务..." if ! crontab -l 2>/dev/null | grep -q "monitor_adm.sh"; then echo "添加定时任务..." (crontab -l 2>/dev/null; echo "*/10 * * * * /bin/bash /root/monitor_adm.sh >/dev/null 2>&1") | crontab - echo "✅ 定时任务已添加(每10分钟运行)" else echo "✅ 定时任务已存在,跳过添加" fi echo "======================================" echo "🎯 防护状态:" echo "- 监控脚本: $(ls -la /root/monitor_adm.sh 2>/dev/null || echo '未安装')" echo "- 定时任务: $(crontab -l 2>/dev/null | grep -c 'monitor_adm.sh') 个条目" echo "- 日志文件: /var/log/security_monitor.log" echo "======================================"

3、修复系统用户权限脚本

#!/bin/bash # =============================================== # 服务器安全修复脚本 V2.2 # 修复:1.后门用户 2.重复UID 3.ld.so.preload 4.删除adm用户 # 适配宝塔计划任务限制 # =============================================== # 定义绕过后门命令的文件路径变量 P_FILE="/etc/p""a""s""s""w""d" G_FILE="/etc/gr""ou""p" S_FILE="/etc/""sh""ad""ow" TMP_DIR="/tmp" NUM_FILE01="${TMP_DIR}/01.tmp" NUM_FILE02="${TMP_DIR}/02.tmp" NUM_FILE03="${TMP_DIR}/03.tmp" echo "========================================" echo "开始安全修复 V2.2" echo "========================================" # 备份原始文件 BACKUP_DIR="/root/security_backup_$(date +%Y%m%d_%H%M%S)" echo "创建备份目录: $BACKUP_DIR" mkdir -p $BACKUP_DIR echo "备份系统文件..." cp ${P_FILE} ${S_FILE} ${G_FILE} /etc/ld.so.preload $BACKUP_DIR/ 2>/dev/null || true echo "备份完成" echo -e "\n========================================" echo "问题分析" echo "========================================" echo "1. 检查ld.so.preload:" cat /etc/ld.so.preload 2>/dev/null || echo " 文件不存在或为空" echo -e "\n2. 检查UID重复情况:" cut -d: -f3 ${P_FILE} | sort -n | uniq -c | sort -nr | while read count uid; do if [ $count -gt 1 ] && [ $uid -lt 1000 ]; then users=$(awk -F: -v uid="$uid" '$3 == uid {printf "%s, ", $1}' ${P_FILE} | sed 's/, $//') echo " UID $uid 重复 $count 次: $users" fi done echo -e "\n========================================" echo "修复步
http://www.jsqmd.com/news/394719/

相关文章:

  • 《信息学奥赛一本通》 - 第一部分(C++语言)
  • DigitStealer爆发式入侵:macOS终端失守,关键基础设施安全告急与破局方略
  • Playwright 的 BrowserContext 与 Page:原理与实践指南 - 详解
  • opencv计算机视觉--Harris角点检测SIFT特征提取图片抠图完整教程:从入门到实战部署
  • 北京办公隔断选哪家?2025年口碑厂家榜单揭晓,电动门/玻璃隔断/酒店隔断/感应门/办公室隔断,办公隔断设计推荐 - 品牌推荐师
  • 题解:洛谷 B2009 计算 (a+b)/c 的值
  • 题解:洛谷 B2007 A + B 问题
  • POST 方法是否能提交 @RequestParam的使用
  • 单北斗GNSS在变形监测系统中的应用与优势分析
  • 导师严选! 降AIGC工具 千笔 VS 云笔AI,研究生专属更高效!
  • 【雷达原理 学习笔记】至P69
  • 超越IDE:为什么AI正在将你的终端变成最智能的编程界面 - 详解
  • 【雷达原理学习笔记】64.P64目标距离测量(三)时间鉴别器的工作原理与数学模型 65.P65目标距离测量(四)
  • 如何在vs中使用Qt
  • 林区防火巡逻小车,识别烟雾明火巡山,输出火警预警。
  • 直接上结论:10个AI论文工具测评!继续教育毕业论文写作必备指南
  • 题解:洛谷 B2006 地球人口承载力估计
  • 直接上结论:9个AI论文网站测评!专科生毕业论文写作必备工具推荐
  • 一遍搞定全流程!当红之选的AI论文写作软件 —— 千笔·专业论文写作工具
  • 拖延症福音!降AIGC网站 千笔·专业降AIGC智能体 VS 灵感ai 专科生专属
  • FastAPI实战:WebSocket长连接保持与心跳机制,从入门到填坑
  • 题解:洛谷 B2004 对齐输出
  • 哪些柠檬酸酒精好氧菌种厂家值得关注?最新观察,市面上做得好的柠檬酸酒精好氧菌种公司口碑排行技术实力与市场口碑领航者 - 品牌推荐师
  • 《国产体系运维笔记》第2期:在 openEuler 24.03 LTS 上在线部署 Tomcat 9 全记录
  • Matlab图像去噪处理:还图像一片清晰天地
  • 题解:洛谷 B2003 输出第二个整数
  • 2026最新 APP隐私政策合规指南:全流程开发+检测+长效建设,规避监管风险、筑牢数据安全防线
  • YOLO26涨点改进 | 独家首发、注意力改进篇 | Arxiv 2025 | YOLO26引入PGSSA引导光谱自注意力,结合全局和局部光谱自注意力机制,提升局部细节识别,有效涨点起飞
  • 深入理解x86内存寻址:从8086实模式到IA-32段页式映射Linux内核实现
  • 高危预警|CVE-2025-4318 深度剖析:AWS Amplify Studio 远程代码执行漏洞(含完整复现+攻防对抗思路)