[应急手册] - 火山引擎Linux机器入侵排查

最佳实践
检查端口开放与恶意进程
  1. 运行netstat -pantu,查看是否存在异常的IP 端口建联,同时可以查看对应的pid
  • 检查服务器是否存在异常的IP建联,通常恶意进程会与外部控制机器建联用于控制服务器。

    • 解决方案:

      • 若发现存在异常的进程,使用 ls -al /proc/xxxx(恶意PID)/exe 查看pid对应的进程文件路径。
      • 如果确定为恶意进程,删除对应的文件
  1. 使用top命令,或者使用 ps -ef查看异常进程。
  • 查看有无异常占用高cpu等的进程,恶意文件可能会使用大量系统 CPU 或内存资源

  • 查看有无非授权进程

    • 解决方案:

      • 确定为恶意进程之后,使用 kill -9 进程id或者pkill -9 进程名结束进程。
检查弱口令与异常用户
  1. 检查ssh,redis,mysql,hadoop,网站后台管理员等应用是否存在未授权访问,弱密码等,导致被外部攻击者暴力破解后控制机器。
  • 解决方案:

    • 修改应用密码为复杂的密码
    • 在云安全组对相应的端口进行来源限制,限制为固定的IP或IP段可以访问。
  1. 查看近期登陆机器账户的记录,确定是否有异常登陆
  • Centos cat /var/log/secure | grep 'Accepted' Ubuntu cat /var/log/auth.log | grep 'Accepted'查看有无异常IP登陆,可以将 grep 后面的修改为异常IP,查看是否存在多次登陆失败,存在即为恶意用户。

  • 使用 last -x -F 查看近期是否存在异常IP登陆机器

  • 使用 cat /etc/passwd查看有无创建的异常账号

    • 解决方案:

      • 修改机器对应用户的密码,使用命令usermod -L 用户名禁用用户或者使用命令userdel -r 用户名删除用户
检查启动项和定时任务
  1. 检查机器的启动项,查看开机启动项中是否有异常的启动服务。
  • 使用 Centos chkconfig --list Ubuntu systemctl list-unit-files --type=service --state=enabled 查看是否存在异常的启动服务。

    • 解决方案:如发现有恶意进程,可使用 Centos : chkconfig 服务名 off 关闭 或者使用Ubuntu systemctl disable/stop 服务名来禁用/停止,同时检查/etc/rc.local中是否有异常项目,如有可以进行删除或注释。
  • 使用 ls -l /var/spool/cron 每个文件对应一个用户的定时任务,查看是否存在异常的定时任务。

    • 解决方案:如果发现异常的定时任务,可以对相应任务进行删除或注释。
第三方软件

建议定时对第三方软件进行升级,同时建议使用非root账户运行服务,同时限制写权限。

被入侵后加固建议
  • 建议对被入侵的机器进行重装处理。
  • 使用ssh密钥登陆服务器。
  • 定期备份云服务器业务数据。
  • 及时更新软件到最新版本。
  • 可以在安全组对相关端口对入向进行限制。
  • 购买云安全中心等安全产品,在攻击发生之后,及时了解自身风险和入侵点。
0
0
0
0
相关资源
字节跳动 EB 级湖仓一体分析服务 LAS 的实践与展望
火山引擎湖仓一体分析服务 LAS 是面向湖仓一体架构的 Serverless 数据处理分析服务,提供一站式的海量数据存储计算和交互分析能力,完全兼容 Spark、Presto、Flink 生态,在字节跳动内部有着广泛的应用。本次演讲将介绍 LAS 在字节跳动内部的发展历程和大规模应用实践,同时介绍 LAS 在火山引擎上的发展规划。
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论