应急响应

这里只做常用知识点记录,更多应急响应处理案例请见Blog

拓展学习推荐

应急响应模型

PDCERF模型

  • P(Preparation) 准备
  • D(Detection) 检测
  • C(Containment) 遏制
  • E(Eradication) 根除
  • R(Recovery) 恢复
  • F(Follow-up) 跟踪

主机排查

排查一下自己的机器和x.x.x.x相关通信的进程 - 直接用火绒剑 - 自己有条件的可以自己写一个运维脚本

1、找到通信的进程 2、找到进程的程序 3、分析程序(可能需要抓包)

Linux木马排查

top检查可疑进程,杀进程

查看进程和对外连接状态
ps -ef | grep process_name/pid

pstree查看

如果查不到,则查看木马进程的所在位置
cat /proc/{pid}  查看进程运行文件位置,删进程运行文件,kill进程

检查定时任务:
1. contab -e
2. cat /etc/crontab
3. contab -l

查看定时任务执行的脚本,删除可疑的脚本和定时任务(一般包括木马源文件)
可以用scp等下载木马样本文件,上传到微步云沙箱等类似平台检查,确认是否是可疑文件。

chattr +i /etc/crontab   
使非root用户无法修改文件。让一个文档不能被删除、改名、设定连结也无法写入或新增数据。
删除脚本中执行的可疑文件。

检查开机启动项:
ls /etc/rc*/
ls /etc/rc.d/init.d

自查开机服务:
chkconfig --list | grep on

检查是否有可疑登陆账号:(被挖矿机器必检)
cat /etc/passwd
有问题的可以的删除

继续检查
cat /etc/shadow

在客户现场的话,查看各个用户的最后登陆时间的日志
lastlog 

检查用户最近登陆的日志
last

在客户环境的话,最好能要重启后再检查一次。

/etc/crontab文件和crontab -l命令的区别

  • /etc/crontab是系统的周期计划任务
  • crontab -l是某用户的周期计划任务

如果cat /etc/crontabcrontab -l都没有信息, 那就检查计划任务的日志:cat /var/log/cron

Linux木马排查常用Linux命令

  • top用于动态查看进程
  • ps aux | grep pid 分析进程
  • kill -9 pid 用于清楚指定pid进程
  • Linux

Windows挖矿木马排查实战

常用工具

Autoruns、TCPview、Process Explorer、PCHunter、D盾、火绒剑

Linux应急响应

刷新DNS缓存

sudo dscacheutil -flushcache

Windows应急响应

刷新DNS缓存

1.使用组合键WIN + R ,启动windows的运行窗口
2.在运行窗口中输入cmd,点击确定按钮
3.启动命令行窗口,在命令行窗口中可以输入和运行cmd命令
4.输入ipconfig /displaydns,可以查看windows上缓存的DNS信息
5.输入命令ipconfig /flushdns用来清空和刷新DNS缓存

查找域名对应的ip地址

nslookup github.global.ssl.fastly.net
nslookup github.com 

攻击跳板排查

验证跳板注意点:进程、文件(启动、隐藏方式、网络流量通信)、网络连接、CPU内存占用。

1.脚本检查:常见的启动下取下来,手动和人工分析。分析异常启动项。(注册表,启动目录、计划任务、屏保)

2.网络检查:哪些进程在访问网络。python打包成exe 打包使用from import方式。(用python psutil模块)

3.简单方式:看下主机防火墙日志。

WebShell的获取与检测及清除

ref: https://www.bilibili.com/video/BV1fS4y1R7Da

第1部分 WebShell的背景和技术

第2部分 WebShell的检测和清除

第3部分 WebShell的防御和加固