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=842
的
SSH
进程的可执行文件
# 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,是通过系 统漏洞或者中间件漏洞入侵的;如果没有发现被植入的文件,但是系统就是有异常,这种一般是通过代码漏洞 来入侵的。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?