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

CentOS服务器被入侵?手把手教你排查暴力破解、后门植入与命令替换(附靶场复现)

CentOS服务器入侵排查实战指南:从暴力破解到后门清除

最近在帮朋友处理一台被入侵的CentOS服务器时,发现黑客不仅留下了后门账户,还替换了关键系统命令。这种经历让我意识到,很多管理员在服务器被入侵后往往手足无措。本文将分享一套完整的排查流程,帮助你像专业安全人员一样应对服务器入侵事件。

1. 入侵迹象初步识别

当服务器出现以下症状时,就该警惕可能已被入侵:

  • 异常资源占用:CPU或内存突然飙升,而业务量并无相应增长
  • 陌生进程tophtop命令显示未知进程持续运行
  • 可疑网络连接:服务器与未知IP地址建立异常连接
  • 命令行为异常:常见命令如psnetstat输出结果与预期不符

提示:建议定期对服务器建立性能基准,这样更容易发现异常变化

快速检查网络连接的实用命令:

# 查看所有活跃的网络连接 netstat -antp | grep ESTABLISHED # 检查异常出站连接(按连接数排序) netstat -antp | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

2. 暴力破解攻击痕迹分析

暴力破解通常是入侵的第一步。CentOS系统的登录尝试记录主要保存在:

/var/log/secure

分析暴力破解的关键命令:

# 统计失败登录尝试TOP IP grep "Failed password" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr # 提取被暴力破解的用户名 grep "Failed password" /var/log/secure | perl -n -e '/for (.+?) from/ && print "$1\n"' | sort | uniq -c | sort -nr

典型暴力破解日志特征:

Jan 14 03:14:22 localhost sshd[12345]: Failed password for root from 192.168.1.100 port 54321 ssh2 Jan 14 03:14:25 localhost sshd[12345]: Failed password for root from 192.168.1.100 port 54321 ssh2

防护建议:

  1. 立即措施

    • 封禁攻击IP:iptables -A INPUT -s 192.168.1.100 -j DROP
    • 更改所有可能被猜中的密码
  2. 长期防护

    • 启用SSH密钥认证,禁用密码登录
    • 安装fail2ban自动封禁暴力破解IP
    • 限制SSH访问IP范围

3. 后门账户深度排查

黑客常会创建隐蔽账户维持访问权限。完整排查流程:

3.1 特权账户检查

# 列出所有UID为0的账户(超级用户) awk -F: '$3==0 {print $1}' /etc/passwd # 检查可远程登录的账户 awk '/\$1|\$6/{print $1}' /etc/shadow

3.2 隐藏账户检测

黑客可能使用特殊字符创建"隐形"账户:

# 检查用户名包含异常字符的账户 cat /etc/passwd | grep -E '[^a-zA-Z0-9_-]'

3.3 登录历史分析

# 最近成功登录记录 last -n 20 # 检查/var/log/wtmp是否被清空(正常应有大量记录) ls -lh /var/log/wtmp

发现可疑账户后的处理步骤:

  1. 记录账户信息(UID、GID、家目录等)
  2. 检查该用户的.bash_history文件
  3. 检查用户crontab:crontab -u 用户名 -l
  4. 确认后删除账户:userdel -r 用户名

4. 系统命令篡改检测

黑客常替换常用命令如psnetstat来隐藏恶意进程。检测方法:

4.1 RPM包验证

# 验证系统关键命令是否被修改 rpm -Va | grep -E '^..5' # 检查特定命令(如ps) rpm -Vf /usr/bin/ps

输出解读:

S.5....T. /usr/bin/ps
  • S:文件大小改变
  • 5:MD5校验值改变
  • T:修改时间改变

4.2 命令文件分析

对可疑命令进行深入检查:

# 查看命令真实路径 which ps # 检查文件属性 ls -l /usr/bin/ps # 查看文件内容(警惕脚本类命令) file /usr/bin/ps cat /usr/bin/ps

典型后门ps脚本示例:

#!/bin/bash # 隐藏恶意进程的后门脚本 /hidden/.malware &> /dev/null & /bin/ps.orig $@ | grep -v "malware"

4.3 恢复被篡改命令

  1. 从官方源重新安装:

    yum reinstall procps-ng
  2. 手动恢复:

    # 查找备份文件(黑客可能保留原始命令) find / -name "ps.orig" -type f # 恢复命令 mv /usr/bin/ps.malware /usr/bin/ps

5. 恶意进程与定时任务排查

5.1 进程深度分析

# 完整进程树查看 pstree -apnh # 检查异常CPU占用 ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head -n 20

5.2 定时任务检查

常见后门位置:

/var/spool/cron/* /etc/cron.*/* /etc/crontab

检查命令:

# 查看系统所有定时任务 ls -la /etc/cron* /var/spool/cron # 检查root用户的crontab crontab -l

5.3 启动项排查

# 检查系统启动项 ls -la /etc/rc.d/rc.local ls -la /etc/init.d/ # 检查当前运行级别服务 chkconfig --list | grep '3:on'

6. 入侵后的系统加固建议

完成入侵处理后,应立即进行系统加固:

  1. SSH安全增强

    # 修改SSH默认端口 sed -i 's/#Port 22/Port 2222/' /etc/ssh/sshd_config # 禁止root远程登录 sed -i 's/PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config # 仅允许密钥认证 sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
  2. 防火墙配置

    # 仅开放必要端口 iptables -A INPUT -p tcp --dport 2222 -j ACCEPT iptables -A INPUT -j DROP
  3. 系统更新与审计

    # 更新所有软件包 yum update -y # 安装审计工具 yum install audit -y systemctl start auditd systemctl enable auditd
  4. 定期安全检查脚本

    #!/bin/bash # 每日安全检查脚本示例 echo "===== 安全检查报告 $(date) =====" echo "1. 特权账户检查:" awk -F: '$3==0 {print $1}' /etc/passwd echo "2. 最近登录:" last -n 10 echo "3. 网络连接:" netstat -antp | grep ESTAB

在处理完几十台被入侵的服务器后,我发现大部分入侵都始于弱密码或未修复的漏洞。建立日常安全检查机制,比事后应急响应重要得多。建议至少每周检查一次关键日志,并保持系统更新。

http://www.jsqmd.com/news/496480/

相关文章:

  • 4个维度掌握RoboMaster-SDK:从入门到实践
  • 2026 年国内粉末冶金制品厂家实力推荐:高品质精密零件供应商深度解析 - 速递信息
  • 讯飞星火3.5API实战:从零搭建智能对话系统
  • 为什么92%的MCP 2.0部署跳过消息完整性校验?源码级追踪3大主流SDK签名绕过路径(含PoC片段)
  • Steam账号保姆级养号教程:从注册到交易避坑全流程(附RPA脚本)
  • 微信小程序tree组件实战:无限递归实现多级菜单(附完整代码)
  • MedGemma X-RayGPU算力方案:单卡部署+多并发请求性能压测
  • 终极文件去重指南:用dupeGuru释放50%存储空间的完整方案
  • 盒马鲜生礼品卡怎么变现?快速回收流程全解析! - 团团收购物卡回收
  • SAP AA 事务代码AFAB报错“AA687”的深度解析与TABA表修复方案
  • Android 12指纹框架避坑指南:TEE环境加载与HAL层服务启动常见问题解决
  • 深入解析mlx5 RDMA网卡hw_counter指标及其故障排查应用
  • 纽维逊领航,2026全国五大材料领军品牌:灌浆料、注浆料、环氧砂浆等 - 深度智识库
  • AI背景处理:从像素级分割到全场景应用的技术实践
  • 从VSCode无缝迁移到Cursor:AI编程工具完整配置指南(含DeepSeek模型接入)
  • 天空星HC32F4A0PITB开发板AT24C02 EEPROM I2C驱动移植与数据存储实战
  • RK3568平台OpenHarmony 4.0 Docker容器化部署实战:从环境适配到问题排查
  • 解放设计师双手:AI驱动的Illustrator自动化工作流革命
  • 基于Qt框架开发丹青识画系统桌面管理工具
  • 用cs-demo-manager提升3倍复盘效率:从录像混乱到战术精进的3个实战场景
  • Creality Print 6.0开源切片工具全解析:从技术原理到工业级应用指南
  • CLIP ViT-H-14图像编码服务参数详解:temperature、top_k、normalize设置说明
  • SGLang调度器核心机制剖析:四大队列与动态流转的艺术
  • 从1080P到4K:不同监控画质下的存储成本对比(附2023年主流摄像头码流实测数据)
  • TCP协议漏洞实战:半开攻击与RST攻击的攻防解析
  • Docker镜像拉取失败?手把手教你解决‘no such host‘错误(附国内镜像源大全)
  • 别再被Element Radio换行问题困扰了!5种实用CSS技巧帮你轻松搞定
  • JS正则表达式实战:构建高安全性密码验证器
  • 【资料包免费领】海报模板 | 学术工具 | 学术海报模板 | 学术会议海报 | 学术会议必备 | 科研展示 | 科研海报 | 参会交流 | 科研成果展示 | 海报展示 | 科研交流 | 科研干货必收藏
  • 制造业多产线环境下的数据治理与自动化归档实践