ToB企服应用市场:ToB评测及商务社交产业平台
标题:
Linux应急响应小结
[打印本页]
作者:
立聪堂德州十三局店
时间:
2024-5-18 14:08
标题:
Linux应急响应小结
目录
用户排查
历史命令
网络排查
进程排查
文件排查
持久化排查
日志分析
通过系统运行状态、安全设备告警,主机非常征象来发现可疑征象通常的可疑征象有:资源占用、非常登录、非常文件、非常连接、非常进程等。
用户排查
如果发现非常用户运动,例如尝试多次登录失败、实行不正常的命令等,应该及时接纳措施,包括禁止用户登录、修改用户密码等。
查看 uid 或 gid 为 0 的用户(默认系统只存在root一个特权账户)
grep :0 /etc/passwd
复制代码
查看 passwd 文件的末了修改记录
stat /etc/passwd
复制代码
统计所有用户的 shell 相干信息
cat /etc/passwd | awk -F: '{print $7}' | sort | uniq
复制代码
重点查抄有登录权限的用户
cat /etc/passwd | grep bash
复制代码
查看用户登录信息
last # 查看用户最近登录信息
lastb # 查看错误的用户登录信息
lastlog # 查看所有用户最后一次登录信息
复制代码
查看答应 sudo 的用户
more /etc/sudoers | egrep -v "^#|^$"
复制代码
继续查抄 wheel 组包含的用户,wheel组通常用于授权用户拥有使用 sudo
grep wheel /etc/group
复制代码
查看空口令的用户
awk -F: 'length($2)==0 {print $1}' /etc/passwd
复制代码
查看可以远程登录的帐号信息
awk '/\$1|\$6/{print $1}' /etc/shadow
复制代码
历史命令
history 记录位于用户 home 目录下的 .bash_history 文件中,可以直接 cat ~/.bash_history 查看历史记录。
网络排查
查抄系统上正在监听的网络连接和端口情况,以及用户的网络运动,发现存在非常的网络行为。
查看本机开放的端口信息
netstat -antulp 或 ss -antulp 或 lsof -i
复制代码
查看当前已建立的 TCP 连接
netstat -antulp | grep ESTABLISHED
复制代码
查看反弹连接
netstat -antulp | grep bash
复制代码
查看某一端口的具体应用
lsof -i:22
复制代码
查看路由表:
route -n
复制代码
查看 DNS 配置信息:
cat /etc/resolv.conf
复制代码
进程排查
Linux 默认的进程权限分离,每个进程有差异的权限,以是从进程用户名上能给我们很多信息。好比 webshell 实行反弹连接,会显示 apache 的用户权限。
查看资源占用
top
复制代码
查看所有进程
ps -ef
复制代码
根据进程 PID 查看进程具体信息
lsof -p PID
复制代码
查看进程的启动时间
ps -p PID -o lstart
复制代码
对于一些非常的文件可以用 strings 显示里面的可读字符串进行开端判断
strings /usr/sbin/sshd | more
复制代码
查看进程可实行文件
ps -eo pid,cmd
复制代码
查看进程树
pstree
复制代码
文件排查
显示文件的具体信息
stat filename
复制代码
查找根目录下,修改时间小于1天的文件
find / -mtime -1
复制代码
结合文件名进一步查找
find /var/www/html/ -mtime -1 -name *.php
复制代码
查看系统命令是否存在非常,如大小、修改时间、创建时间等
ls -altS /usr/sbin | head -30
复制代码
持久化排查
Linux的持久化方式通常有以下这几种方式:定时使命、开机服务、开机启动、驱动加载。
定时使命排查
列出当前用户的定时使命列表:
crontab -l
复制代码
定时使命还应查抄以下文件和文件夹:
/var/spool/cron/*
/etc/crontab
/etc/cron.d/*
/etc/cron.daily/*
/etc/cron.hourly/*
/etc/cron.monthly/*
/etc/cron.weekly/
/etc/anacrontab
/var/spool/anacron/*
复制代码
开机启动项排查
查看系统服务
查看所有系统服务的状态和启动方式
systemctl list-unit-files --type=service
复制代码
查看当前正在运行的服务
systemctl list-units --type=service --all
复制代码
Linux 开机有多种运行级别,差异级别下加载的启动文件也不相同
查看当前启动级别
runlevel
复制代码
差异启动级别会加载差异启动文件,需要关注查抄启动脚本目录
/etc/rc.d/*
/etc/rc.local
/etc/rc[0-6].d
/etc/inittab
复制代码
日志分析
Linux 使用 rsyslog 管理日志,包括系统登录日志、服务访问日志、网站日志、数据库日志等。
日志默认存放位置 /var/log/ 目录,查看日志配置情况 vim /etc/rsyslog.conf。
通常关注的系统日志有:
/var/log/messages:内核及公共消息日志,会记录linux系统的绝大多数重要信息
/var/log/cron:系统定时使命相干的日志
/var/log/dmesg:系统引导日志,系统在开机时内核自检的信息,dmesg命令直接查看
/var/log/boot.log:记录系统在引导过程中发生的,包含系统启动时的日志,包括自启动的服务
/var/log/secure:用户验证相干的安全性变乱,如SSH登录,su切换用户,sudo授权等
/var/run/utmp:正在登录系统的用户信息,默认由who和w记录当前登任命户的信息
/var/log/wtmp:当前登任命户具体信息,二进制文件,使用last命令来查看
/var/log/btmp:记录错误登录日志,二进制文件,使用lastb命令查看
/var/log/lastlog:用户末了一次登录时间的日志,二进制文件,使用lastlog命令查看
/var/log/maillog:邮件系统日志
应用日志:
Nginx日志:
/var/log/nginx/access.log
Apache日志:
/var/log/httpd/access.log
/var/log/apache/ access.log
/var/log/apache2/ access.log
/var/log/httpd-access.log
Mysql日志:
/var/log/mysql/
Linux 可以使用 sed、awk、grep 文件三剑客从日志中快速提取信息。
定位有多少IP在爆破主机的root帐号:
grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more
复制代码
定位有哪些IP在爆破:
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
复制代码
爆破用户名字典:
grep "Failed password" /var/log/secure|perl -e 'while($_=<>){ /for(.*?) from/; print "$1 \n";}'|uniq -c|sort -nr
复制代码
登录成功的IP有哪些:
grep "Accepted " /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more
复制代码
登录成功的日期、用户名、IP:
grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}'
复制代码
若有错误,欢迎指正!o( ̄▽ ̄)ブ
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4