linux 应急响应工具整理列表

linux 应急响应工具整理列表

文件
ls  列举文件   
-a   显示所有档案及目录(ls默认将文件或者目录名称为“.”的视为隐藏文件或目录,不会列出);
-l   以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等;
-t   用文件和目录的更改时间排序;

file 查看文件类型  file /etc/init.d/network
stat 查看文件时间  stat /etc/init.d/network  
md5sum 文件名  
sha*  文件名  

lsof abc.txt 显示开启文件abc.txt的进程
lsof 目录名 查找谁在使用文件目录系统   
lsof +D /tmp   某个目录下被打开的文件    

du -h --max-depth=2  /home  # 判断文件夹下总大小  

进程
ps -aux  查看进程信息  
ps -ef  可以查看父进程 
ls -alt /proc/pid,  exe -> XXX 对应的即为文件位置   
top  查看进程信息,挖矿木马 应该很容易识别出来   
pstree -ps 32638  # 查看父进程  

查看隐藏进程 ?

ps -ef | awk '{print $2}' | sort -n | uniq >1
ls /proc | sort -n |uniq >2
diff 1 2   

strace -f -p pid   # 跟踪进程行为 
lsof -c abc 显示abc进程现在打开的文件   
lsof -p 12 看进程号为12的进程打开了哪些文件
lsof -p 123,456,789  列出多个进程号对应的文件信息
lsof -p ^1 列出除了某个进程号,其他进程号所打开的文件信息   
lsof -i -R   -R 显示父进程id    lsof -F?  #显示字段说明信息  
网络
netstat -antlp | more   
-a  显示所有连线中的Socket。 
-n  直接使用IP地址,而不通过域名服务器。
-t   显示TCP传输协议的连线状况。
-u  显示UDP传输协议的连线状况。
-v  显示指令执行过程。
-p  显示正在使用Socket的程序识别码和程序名称。
-s  显示网络工作信息统计表。 
netstat   -anltpe  查看网络链接情况
netstat   -anltpe  | grep -v "127.0.0.1"  过滤掉 127的ip,
netstat   -anltpe  | grep -v "127.0.0.1" | grep "LISTEN"  只显示本地监听的端口
netstat   -anltpe  | grep -v "127.0.0.1" | grep "ESTABLISHED" 只显示已经建立链接
netstat   -anltpe  | grep -v "127.0.0.1" | grep “SYN_SENT” 我们正在扫描别人的机器
netstat   -anltpe  | awk -F' '  '{print $5}' | grep -vE "0.0.0.0|:::|127.0.0.1"  打印所有外网链接的IP
netstat   -anltpe  | awk -F' '  '{print $5, $6}' | grep -vE "0.0.0.0|:::|127.0.0.1"  打印所有外网链接的IP和状态
netstat   -anltpe  | awk -F' '  '$3 >0{print $5, $6, $7}' | grep -vE "0.0.0.0|:::|127.0.0.1"  正在发送数据包
netstat   -anltpec  | awk -F' '  '$3 >0|| $2>0{print $0}'  持续查看当前有流量的请求信息
输出说明: Send-Q  本机已经发送,对方未进行确认的数据,比如本机进行端口扫描时,该值比较明显   


lsof -i:22 通过端口号找进程    
lsof -i 列出所有的网络连接   
lsof -i @192.168.1.111 查看远程已打开的网络连接(连接到192.168.1.111)  
lsof -i tcp 列出所有tcp 网络连接信息   
lsof -i udp 列出所有udp网络连接信息   
lsof -i udp:55 列出谁在使用某个特定的udp端口    
lsof -i @peida.linux:20,21,22,25 -r 3   列出目前连接主机 peida.linux 上端口为:20,21,22,25 相关的所有文件信息,且每隔 3 秒不断地执行 lsof 指令    
账号
last | more 最后登录成功日志  
lastlog  最后一次登录  
lastb   登录失败记录   
w/who/users 目前登录用户信息   
grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more  有多少IP在爆破root   
grep "Accepted " /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more  ssh登录成功的ip  
awk -F: '{if($3==0)print $1}' /etc/passwd  # 查看root权限账号 
cat /etc/passwd  | grep -v nologin   # 查看账号    
awk -F: '{a[$3]++}END{for(i in a)if(a[i]>1)print i}' /etc/passwd  # 检查UID相同的用户,防止克隆用户 
lsof -u username 查看某用户打开哪些文件
lsof -u ^root 列出除了某个用户外的被打开的文件信息
后门
rootkit 检测 www.chkrootkit.org   
webshell 查杀 find /var/www/ -name "*.php" |xargs egrep 'assert|phpspy|c99sh|milw0rm|eval|\(gunerpress|\(base64_decoolcode|spider_bc|shell_exec|passthru|\(\$\_\POST\[|eval \(str_rot13|\.chr\(|\$\{\"\_P|eval\(\$\_R|file_put_contents\(\.\*\$\_|base64_decode'  
webshell 河马查杀 shellpub.com 
ls -alt /etc/init.d/ 
history | head -n 10  # 查看前十个命令   等价于  head -n 10  /root/.bash_history   
cat /etc/passwd  | grep -v nologin   # 查看账号    
find ./ -mtime 0 -name "*.php"(查找24小时内被修改的php文件)
find / -ctime 2(查找72小时内新增的文件)
find /var/webroot -name "*.php" |xargs grep 'eval|shell_exec|system|pasthru' |more  
find / *.jsp -perm 777  # 查询特殊权限的 jsp文件   
chkconfig --list # 开机自启动服务  
more  ~/.bashrc  # 检查shell的配置文件.bashrc和.bash_profile等文件是否有恶意的alias问题 
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取
.~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取.
~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.   
strings /usr/bin/.sshd | grep '[1-9]{1,3}.[1-9]{1,3}.'     # 二进制文件中查找ip
crontab  
-u 指定一个用户  
-l 列出某个用户的任务计划  
-r 删除某个用户的任务  
-e 编辑某个用户的任务  

crontab -l -u user(-u可指定用户)

busybox防止系统文件被替换了

cd /bin/
wget https://busybox.net/downloads/binaries/1.30.0-i686/busybox 
chmod 755 busybox

参考文献

GB/T 24363-2009 信息安全技术 信息安全应急响应计划规范
GB/T 28827.3-2012 信息技术服务 运行维护 第3部分:应急响应规范
GB/Z 20986-2007 信息安全技术 信息安全事件分类分级指南
微软sysinternals工具库
lsof命令介绍
yara基于规则分析程序 开源
apimonitor
processhacker
国家网络安全事件应急预案
奇安信 2020年网络安全应急响应分析报告 2021
上海市网络安全事件应急预案 2019
应急响应笔记非常优秀
溯源和反制总结
各种日志分析

Linux作为一个开源的操作系统,拥有众多的应急响应工具,下面介绍几个较为优秀的工具: 1. Volatility: Volatility是一款专门用于Linux系统的内存取证工具。它可以通过分析内存映像文件来提取各种关键信息,如进程、网络连接、文件系统等,用于分析恶意软件、对抗攻击以及进行取证工作。 2. Wireshark: Wireshark是一款网络分析工具,可用于捕获和分析Linux系统上的网络流量。它能够提供详细的协议分析,帮助检测和分析网络攻击、异常流量以及网络配置问题等。 3. Snort:Snort是一款用于实时检测网络中的恶意流量和攻击的入侵检测系统(IDS)。它可以在Linux系统上部署,并使用规则来识别和拦截可能的恶意流量和攻击,对应急响应非常有效。 4. Open Source Security Platform (OSSEC):OSSEC是一款开源的主机入侵检测系统(HIDS),主要用于监视和分析Linux系统日志、文件完整性以及系统状态的变化。它能够实时监控主机是否受到入侵,及时发现并响应各类安全事件。 5. The Sleuth Kit (TSK):TSK是一套用于数字取证的开源工具集,可以在Linux系统上使用。它包含多个工具,如Autopsy、dd、fls等,可用于文件系统分析、数据恢复、元数据提取等,对于调查和应急响应非常有用。 总之,Linux系统上拥有众多优秀的应急响应工具,能够帮助对抗恶意软件、分析网络攻击、监测主机入侵等。这些工具的使用需要具备一定的专业知识和技能,能够更好地应对各种安全事件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值