针对蓝队的一些Linux应急响应的一些常规的命令以及一些思路总结一下分享给大家,内容稍长,可以收藏以备不时之需。
查看Linux中占用资源情况(必须是大写的cpu)
top -c -o %CPU
-c 显示进程的命令行
-p 显示进程的pid
cpu占用前5的信息
ps -eo pid,ppid,%mem,%cpu,cmd --sort=-%cpu | head -n 5
查看网络通信的情况
lsof -i -PnR
寻找pid对应的进程
ps aux | grep [pid]
查看进程打开的文件
lsof -p [pid]
计算文件的md5
md5sum [文件名]
通过比较前后md5值排除是否被改动
安全事件处置:
webshell查杀
www.shellpub.com
病毒/rootkit查杀
www.chkrootkit.org
综合查杀工具
www.xmirror.cn/page/prodon
通常情况下linux的恶意程序处置,靠人工解决
chkrootkit功能:
检测是否被植入后门、木马、rootkit
检测系统命令是否正常
检测登录日志
使用方法:
wget ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
tar zxvf chkrootkit.tar.gz
cd chkrootkit-0.52
make sense
编译完成没有报错的话执行检查
./chkrootkit
Linux下常用安全工具
rkhunter功能:
系统命令(Binary)检测,包括Md5 校验
Rootkit检测
本机敏感目录、系统配置、服务及套间异常检测
三方应用版本检测
使用方法:
Wget https://nchc.dl.sourceforge.net/project/rkhunter/rkhunter/1.4.4/rkhunter-1.4.4.tar.gz tar -zxvf rkhunter-1.4.4.tar.gz
cd rkhunter-1.4.4
./installer.sh --install
rkhunter -c
网络行为分析
系统信息
who
查看系统信息
uname -a
netstat -ano
查看网络和端口情况
netstat -utnpl
查看arp表
arp -a
显示进程和端口的对应关系
lsof -i :[port]
ls -l /proc/[pid]/exe
某个pid对应的文件路径
file /proc/[pid]/exe
使用iptables屏蔽ip
iptables -A INPUT/OUTPUT -s/d [目标ip] -j ACCEPT/DROP
//封闭119.1地址对本机的访问
iptable -L //查看设置的所有规则内容
iptable -F //清理所有规则内容
用iptables封锁和x.com的域名通信
iptables -I INPUT -p tcp --dport 80 -m string --string "x.com" --algo bm -j DROP
进程检查
ps -aux //全面的进程查看
ps -ef //
top -c
lsof -p [pid]
lsof -i :[port]
lsof -c
lsof eval.sh 查看文件占用
//进行对比两个进程
ps -ef | awk '{print}' | sort -n | uniq >1
ls /proc | sort -n | uniq >2
diff 1 2
启动项排查
/etc/init.d/ //各种服务的启动脚本
/etc/xinetd.d/
查看rc.local文件(/etc/init.d/rc.local)
/etc/rc.d/rc[0-6].d/ 0-6是运行级别
/etc/profile.d/
计划任务:
/etc/crontab
/var/spool/cron/[用户名]
crontab -l //查看计划任务
crontab -r //删除计划任务
使用编辑器编辑计划任务
crontab -e
根据上面划线地方介绍最左边是0-59分钟
5是5点
*是1-31天
*月份
1是0-6,周几的意思
后面是使用什么命令做什么事到什么地方
下面是一些重点排查目录
/var/spool/cron/*
/var/spool/anacron/*
/etc/crontab/*
/etc/cron.d/*
/etc/cron.时间/*
服务排查
cat /etc/services
查看网络服务
1-1024 系统保留,只能root使用
1025-4999 客户端程序自由分配
5000-65535 服务器端程序自由分配
服务自动启动
chkconfig --level [运行级别] [服务名] [on/off]
chkconfig --level 2345 httpd on //开启自启动 = chkconfig httpd on
0 - 关机
1 - 单用户模式
2 - 无网络连接的多用户命令行模式
3 - 有网络连接的多用户命令行模式
4 - 不可用
5 - 图形界面多用户模式
6 - 重启
chkconfig --list 查看服务自启动状态
chkconfig --del 删除相关服务
--------------------
文件检查
webshell后门可以通过sftp复制出来
敏感目录文件分析
/etc/init.d
/usr/bin
/usr/sbin
时间排序
ls -alt
file [文件]
特殊权限文件查找
find / *.jsp -perm 4777
隐藏文件 .开头的文件隐藏属性
ls -al /tmp | grep "Feb 10"
敏感目录
/tmp
/root
/bin
/usr/bin
/usr/sbin
/sbin
被入侵的系统,肯定有文件被改动,通过比较文件的md5,创建时间,文件路径
find / -uid 0 -print 查找特权文件
find / -size +10000k -print
find / -name "..." -print
md5sum -b [文件名]
whereis [文件名]
----------------
账号检查
w 查看系统信息
cat /etc/passwd 用户信息文件
cat /etc/shadow 用户密码
less /etc/passwd
ls -l /etc/passwd 查看文件修改时间
usermod -L [user] 锁定用户 -U 解锁用户
userdel [user] 删除用户
userdel -r [user] 删除用户和他的home
用户登录检查
last
数据源所在目录
/var/log/wtmp /var/log/btmp
lastb
数据源所在目录
/var/log/btmp
lastlog所在目录
/var/log/lastlog
last -x reboot
last -x shutdown
/var/log/lastlog /var/log/secure
/var/log/message 存储认证信息,追踪恶意用户登录行为
--------------
查看历史命令
history
history -c 清除
-------------
日志分析
默认日志/var/log/
more /etc/rsyslog.conf 查看日志情况