Linux应急处理操作手册
Posted 挖洞的土拨鼠
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux应急处理操作手册相关的知识,希望对你有一定的参考价值。
基础准备--命令防篡改与命令记录
很多黑客入侵到操作系统后,会做两个常见的操作unset history和替换命令文件(或者对应的链接库文件),针对这两点要做好记录shelllog并且检查链接库类文件和命令文件最近有没有改动。
RootkitHunter
#安装
$sudo wget https://jaist.dl.sourceforge.net/project/rkhunter/rkhunter/1.4.4/rkhunter-1.4.4.tar.gz
$sudo tar zxvf rkhunter-1.4.4.tar.gz
$sudo cd rkhunter-1.4.4
$sudo sh install.sh --install
#使用
$/usr/local/bin/rkhunter --propupd
$/usr/local/bin/rkhunter -c --sk --rwo
症状研判--根据主机异常状态判断异常点
性能资源紧张(变现为卡慢)
free -m #以MB为单位查看内存使用情况
free -l #查看内存使用细节
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head #查看内存使用前十名
vmstat -a #查看内存和CPU使用情况
vmstat -s #查看内存和CPU使用详情
vmstat -d #查看读写IO情况
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head # 查看CPU使用前十名
top #查看进程性能资源消耗
主机宕机死机(表现为主机宕机或死锁或重启)
dmesg -T #按时间点查看内核日志
dmesg -T | grep memory #查看和内存相关的日志记录
dmesg -T | grep crash #查看和崩溃相关的日志记录
dmesg -T | grep reboot #查看和重启相关的日志记录
cat /var/log/dmesg #内核日志
cat /var/log/syslog #系统日志
cat /var/log/kernel.log #内核日志(Ubuntu下是kern.log)
断网断连排查(变现为网络不通或间断性连通)
iptables -L #查看防火墙
cat /etc/resolv.conf #查看域名解析
ifconfig -a #查看网卡信息
应用服务问题诊断
HTTP /var/log/httpd/access.log #或者是HTTP服务器配置文件中的日志路径
FTP /var/log/vsftp.log #或者是同路径下的xferlog
Squid /var/log/squid #或者是squid.access.log
NFS /var/log/nfs
IPTABLES /var/log/iptables/……
Samba /var/log/samba
DNS /var/log/message
DHCP /var/log/message #或者/var/lib/dhcp/db/dhcpd.leases
Mail /var/log/maillog
入侵点入侵特征排查
## 可疑网络通信及进程排查 ##
netstat -antlop #查看异常连接和对应的进程、文件
ps -ef #查看进程信息
ps aux # 查看进程信息
lsof #查看进程关联账户信息lsof -g pid
可以登录和爆破排查
last #登录或重启日志
lastb #登录失败日志 或者是/var/log/faillog
who /var/log/wtmp #登录日志 另外可以 last -f /var/run/utmp
cat /var/log/lastlog #最后的登录日志
cat /var/log/secure #安全日志
cat /var/log/cron #计划任务日志
cat ~/.bash_history | more #历史操作
grep "Failed password for root" /var/log/auth.log | awk ‘{print $11}‘ | sort | uniq -nr | more #查看root账户登录爆破尝试
grep "Accepted" /var/log/auth.log | awk ‘{print $11}‘ | sort |uniq -c | sort -nr | more #查看登录成功日志信息
strings /usr/bin/.sshd | egrep ‘[1-9]{1,3}.[1-9]{1,3}.‘ #查看sshd的信息
漏洞利用入侵及后渗透特征
检查~/.ssh/目录下有没有异常的文件(密钥文件)redis未授权访问等
检查/etc/passwd 以及 /etc/shawdow有没有异常账户和权限
检查/etc/rc.local 查看开机启动项
检查/usr/bin /usr/sbin /bin等敏感目录(命令文件所在目录)
检查/tmp 临时文件
检查能登录用户cat /etc/passwd | grep -E "/bin/bash$"
检查环境变量echo $PATH
检查/etc/init.d/rc.local 和 /etc/ssh等等
web入侵点检查
#webshell查找
find /var/www/ -name "*.php" | xargs egrep ‘assert | phpspy | c99sh | milw0rm | eval | ( gunerpress | (bas464_encode | spider _bc | shell_exec | passthru | ($\_POST[|eval(str_rotl3 | .chrc|${"\_P|evalC$\_R | file_put_contentsC.*$\_ | base64_decode‘
# 脚本文件打包
find /var/www/html/ |grep -E ".asp$|.aspx$|.jsp$|.jspx$|.jspf$|.php$|.php3$|.php4$|.php5$|.inc$|.phtml$|.jar$|.war$|.pl$|.py$|.cer$|.asa$|.cdx$|.ashx$|.ascx$|.cfm$|.cgi$ "|xargs tar zcvf /tmp/shellscript.tar.gz
# 文件查找的相关命令:
sudo find / -mtime(atime/ctime) -x #按照创建、修改时间查找
sudo find ./ -perm 4777 #按照权限查找文件
find ./ -mtime -1 -type f #按照文件类型查找
根据历史经验查看access.log 可以使用https://github.com/cisp/AccessLogAnylast工具进行分析(本人开发维护);
附录一:
- 部分后门文件删除是后要先修改权限为000
- rookitHunter 详细使用部分--引用自:https://yq.aliyun.com/ziliao/75349
以上是关于Linux应急处理操作手册的主要内容,如果未能解决你的问题,请参考以下文章