linux应急响应具体操作


 

第一件事情应该是切断网络,但是有些环境不允许网络断开,就只能跳过这一步。

1、查看历史命令

?发现Linux 服务器被攻击,要做应急响应,登录主机后的第一件事,就是查看主机的历史命令。

#检查Root用户的.bash_history 文件

cat /root/.bash_history

#检查普通用户的.bash_history 文件

cat /home/[user]/.bash_history

2、排查用户信息

# Linux 服务器中招之后
# whoami 查看当前用户
# 通过who命令查看当前登录系统的所有用户
# w命令显示已经登录系统的所用用户,以及正在执行的指令
# last命令查看最近登录成功的用户及信息
# lastb命令查看最近登录失败的用户及信息
# lastlog命令显示所有用户最近一次登录信息
# 在黑客入侵之前,必须使用chattr +a/var/log/lastlog文件进行锁定,避免被黑客删除或者清空。导致无法使用last命令获得有用的信息了

?

3、排查passwd 文件,重点排查如下内容:

哪些用户不能登录,shell却为/bin/bash —> 修改建议:将shell修改为/sbin/nologin

哪些普通用户的UID=0 —> 修改建议:禁用该用户或删除该用户

是否多出了不明用户。

# 查看可登录用户:
cat /etc/passwd | grep /bin/bash
# 查看UID=0的用户
awk -F: '$3==0{print $1}' /etc/passwd
# 查看sudo权限的用户
more /etc/sudoers | grep -v "^#\|^$" | grep "ALL=(ALL)"

4、排查端口进程

?通过 ps -ef | grep 进程名 找到该进程ID,然后使用kill -9 id 杀掉该进程

# 使用ls -l命令查看某个进程的可执行文件的完整路径
例如:查看 PID=842SSH进程的可执行文件
# ls -l /proc/842/exe
# 使用ps命令查看进程
# 按照CPU使用率从高到低排序
?  ~ ps -ef --sort -pcpu
# 按照内存使用率从高到低排序
?  ~ ps -ef --sort -pmem

5、排查文件修改

?应急响应的核心就是找到黑客植入/修改的文件。

?可以按照以下三种方式查找修改的文件:

按照名称

依据文件大小

按照时间查找

# 根据名称查找文件
?  ~ find / -name a.Test
/root/a.Test
# 依据文件大小查找:
?  ~ find / -size +1000M
/proc/kcore
# +1000M表示大于1000M的文件,-10M代表小于10M的文件
# 依据时间查找
# -atime 文件的访问时间
# -mtime 文件内容修改时间
# -ctime 文件状态修改时间(文件权限,所有者/组,文件大小等,当然文件内容发生改变,ctime也会随着改变)
# 查找最近一天以内修改的文件:
?  ~ find / -mtime -1 -ls  | more 
# 查找50天前修改的文件:
?  ~ find ./ -mtime +50 -ls
#根据属主和属组查找:
-user 根据属主查找
-group 根据属组查找
-nouser 查找没有属主的文件
-nogroup 查找没有属组的文件
# 查看属主是root的文件
?  ~ find ./ -user root -type f
# -type f表示查找文件,-type d表示查找目录
# 注意:系统中没有属主或者没有属组的文件或目录,也容易造成安全隐患,建议删除。

6、清理后门

? 在找到并处理植入/修改的文件之后,还需要清理后门,因为黑客为了下次访问方便,必然会在服务器上留有 后门。常见留后门的方法有如下几种:

将公钥写入到服务器的authorized_keys文件中

创建UID=0的普通用户

解决方法:

清除authorized_keys文件中黑客上传的key

cat /etc/passwd将UID为0的普通用户注释掉

7、查找攻击源

检查系统日志信息:
# tail -100 /var/log/messages
检查登录的账号和IP地址:
# tail -100 /var/log/secure
检查系统是否有异常,例如发包量过大等:
# dmesg
查找到攻击源,可以使用防火墙将此攻击源屏蔽。

原因分析

? 服务器被入侵原因通常有几个:系统漏洞、中间件漏洞(程序漏洞)、代码漏洞、安全设置不正确、网络层面 没有限制等。 如果是系统漏洞和中间件漏洞,需要使用没有发现漏洞的系统和中间件进行升级。 如果是程序/代码漏洞,需要修改程序代码进行修改,或者部署waf防火墙。 如果是安全设置不正确,需要进一步检查安全配置。 如果是网络层面没有限制,需要在防火墙和IPS上进行检查。 通过植入文件启动进程的入侵方式,一般户看到类似这种进程或者文件:aa.sh,.sdofafdjja,是通过系 统漏洞或者中间件漏洞入侵的;如果没有发现被植入的文件,但是系统就是有异常,这种一般是通过代码漏洞 来入侵的。

相关