服务器被入侵了!我们该怎么办?
大家好,服务我是器被坤哥安全问题往往被大家忽视 ,但它轻则导致公司用户数据泄露引发严重的入侵舆论危机,重则导致数据被破坏导致公司破产 ,服务所以安全问题一定要重视 ,器被不过这类问题一旦出现 ,入侵由于大家经验比较少 ,服务往往很难入手,器被今天就给大家带来一篇服务器被入侵的入侵排查思路,相信大家看了肯定有收获!服务
下文中的器被,给文件和目录加锁 ,入侵是源码库服务指给文件和目录增加了一些属性 ,只读等 。器被chattr +ia
一 、入侵服务器入侵现象
近期有一个朋友的服务器(自己做了网站)好像遭遇了入侵,具体现象是:服务器 CPU 资源长期 100%,负载较高 。服务器上面的服务不能正常提供服务 。

朋友处理了一会没有解决 ,我开始想说我不是搞安全的 ,我怎么会,但朋友开出了天价,源码下载一顿海底捞,我在生活和现实面前低头了。开始上手看看了 。
二 、服务器排查和处理
2.1 、服务器被入侵的可能原因
服务器ssh 密码 设置得很简单。腾讯云安全组范围放得很大 。使用了宝塔,宝塔面板的密码也是很简单的密码(应该不是这个入侵入口) 。2.2 、排查和处理步骤
ps -ef /top 找出占用进程最大的建站模板服务问题现象ps/top 命令 已经被替换了。

secure
Aug 26 21:51:37 VM-12-12-centos sshd[19822]: Accepted password for root from 34.215.138.2 port 36720ssh2
Aug 27 08:52:05 VM-12-12-centos sshd[3053]: Accepted password for root from 127.0.0.1 port 57534ssh2
Aug 27 08:58:50 VM-12-12-centos sshd[7038]: Accepted password for root from 127.0.0.1 port 57548ssh2
Aug 27 09:10:02 VM-12-12-centos sshd[14830]: Accepted publickey for lighthouse from 106.55.203.49 port 44204 ssh2: RSA SHA256:123456/UIbl8
Aug 27 09:10:03 VM-12-12-centos sshd[14913]: Accepted publickey for lighthouse from 81.69.102.49 port 60820 ssh2: RSA SHA256:123456/UIbl8
Aug 27 09:14:08 VM-12-12-centos sshd[17307]: Accepted password for root from 127.0.0.1 port 57690ssh2
Aug 27 09:34:22 VM-12-12-centos sshd[29150]: Accepted publickey for lighthouse from 106.55.203.55 port 38044 ssh2: RSA SHA256:123456/UIbl8
Aug 27 09:34:23 VM-12-12-centos sshd[29233]: Accepted publickey for lighthouse from 81.69.102.60 port 51190 ssh2: RSA SHA256:123456/UIbl81.2.3.4.5.6.7.8.9.lighthouse 腾讯云轻量服务器
我们在这里就可以看到 ,有一些境外IP 34.215.138.2 成功登录了 ,这些 IP不是我们的正常登录 。在 /var/log/secure 日志里 ,我看到了 IP 34.215.138.2 尝试登录不到 500 次 就已经破解成功了 。
处理措施这里我们立马采取了第一个措施,
在腾讯云安全组限制了 SSH 的登录IP, 之前的安全组 SSH 是放行所有IP。香港云服务器将 SSH ROOT 密码修改 。/root/.ssh/authorized_keys 备份 ,并清空 。 复制[root@VM-12-12-centos ~]# cp -rp /root/.ssh/authorized_keys /root/.ssh/authorized_keys.bakcp: cannot create regular file ‘/root/.ssh/authorized_keys.bak’: Permission denied1.2.这时我们就遇到了权限的问题 ,这个晚点展开讲,因为我们已经限制了源IP , 所以这个我们可以晚点来处理。
查看最近新增的一些用户问题现象cat /etc/passwd

锁定用户
复制[root@VM-12-12-centos ~]# usermod -L sys11. 我这里不计划去找进程(已经在新建一台版本一致的系统 , 来拷贝top 和ps 命令,需要一小会,我们趁这个时间 ,先看看其他),因为之前朋友重启过服务器,服务器租用发现服务器启动过一会才会负载较高。我认为入侵者应该放了一些定时任务和启动脚本里面。问题现象定时任务
crond 读取配置文件会从以下几个路径读取:
/var/spool/cron/ , 由crontab -e 进行写入 ,配置文件无需指定用户/etc/crontab ,只能root 进行编辑 ,配置文件需指定用户/etc/cron.d/ ,在此文件夹下创建定时任务文件,配置文件需指定用户/etc/cron.*/var/spool/cron/ 未找到(后面会说到这里有障眼法)

/etc/crontab 未找到(后面会说到这里有障眼法)
但是我在 /var/log/cron 一直看到有任务执行。每间隔 5 分钟。
复制Aug 27 22:00:01 VM-12-12-centos CROND[16839]: (root) CMD (/sbin/httpss >/dev/null 2>&1;^M )Aug 27 22:00:01 VM-12-12-centos CROND[16840]: (root) CMD (/usr/local/qcloud/YunJing/YDCrontab.sh > /dev/null 2>&1)Aug 27 22:00:01 VM-12-12-centos CROND[16842]: (root) CMD (/usr/lib/mysql/mysql;^Mno crontab for root )Aug 27 22:05:01 VM-12-12-centos CROND[17486]: (root) CMD (/usr/lib/mysql/mysql;^Mno crontab for root )Aug 27 22:05:01 VM-12-12-centos CROND[17487]: (root) CMD (/sbin/httpss >/dev/null 2>&1;^M )1.2.3.4.5.6. 处理措施这里我们先做的操作就是,先把 /usr/lib/mysql/mysql 和 /sbin/httpss 给删除 。删除的时候还是提示没有权限。模板下载我们知道这些文件应该是加琐了 ,所以我开始解锁 ,我们发现 chattr 也被替换和锁住了。所以不能操作下去了 。
开机启动脚本
/etc/rc.local , 我们也发现了一个脚本。
复制[root@VM-12-12-centos ~]# cat /etc/rc.local#!/bin/bash
# THIS FILE ISADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services orudev rules
# to run scripts during boot instead of using this file.
#
# Incontrast to previous versions due to parallel execution during boot
# this script will NOTbe run after all other services.
#
# Please note that you must run chmod +x /etc/rc.d/rc.localto ensure
# that this script will be executed during boot.
/usr/bin/0f4f80f9ab start1.2.3.4.5.6.7.8.9.10.11.12.13.14.但是这个文件好像不存在的,我们就把这个给注释了 。
还原更改了top 、ps 、chattr、lsattr.首先我们从相同版本的机器拷贝了chattr 、lsattr, 我们得先操作这个 , 因为我们的top 和ps 都被锁住了。
我将文件上传至/tmp 目录,然后增加可执行权限 ,然后先给/usr/bin/chattr 解除锁定 。
复制/tmp/chattr -ai /usr/bin/chattr1.执行完之后,发现还是不能替换/usr/bin/chattr 。最后耗费了一段时间才反应到,入侵者可能不仅仅加锁了文件还加锁了/usr/bin/ 。
解锁目录
复制/tmp/chattr -ai /usr/bin/1.这下才能把/usr/bin/chattr 给替换掉 。
接下来参考这些,我们把top 和ps