WebShell 查杀后仍有流量怎么办
第一步:确认并隔离威胁
- 立即隔离:最重要的一步是立即将受感染的服务器从网络中隔离出来。拔掉网线,或者在防火墙上设置策略,切断所有入站和出站的网络连接。这能防止攻击者继续控制服务器,并阻止他们进行横向移动,感染其他内网资产
- 确认流量来源:
- 查看进程:使用
netstat -ano
(Windows)或netstat -anp
(Linux)命令,查找建立异常外连的进程 - 关联PID:找到可疑进程的PID(进程ID),然后使用
ps -ef | grep [PID]
(Linux)或任务管理器(Windows)来确定该进程的详细信息,包括其父进程、启动路径和命令行参数
- 查看进程:使用
第二步:分析与清除持久化机制
当 WebShell 被清除后,外连流量依然存在,这表明攻击者已经利用 WebShell 留下了后门
- 排查计划任务:攻击者最常用的持久化方式之一就是利用计划任务
- Linux:检查
/etc/crontab
、/etc/cron.d/
、/var/spool/cron/
和用户的crontab -l
,查找是否有可疑的定时任务,例如定时执行脚本或下载恶意文件的任务 - Windows:使用
schtasks
命令或任务计划程序来检查是否存在异常的定时任务
- Linux:检查
- 排查自启动项:恶意程序可能会通过系统自启动项实现开机自启
- Linux:检查
/etc/rc.local
、/etc/profile
、~/.bashrc
等文件 - Windows:检查注册表的
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
和HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
- Linux:检查
- 排查系统服务:攻击者可能会创建新的系统服务
- Windows:使用
services.msc
或sc query state=all
命令检查是否有异常服务 - Linux:检查
/etc/init.d/
或/lib/systemd/system/
目录
- Windows:使用
- 排查系统后门文件:恶意文件可能被伪装成系统文件,藏在
/tmp
、/var/tmp
或/var/shm
等临时目录,甚至是/bin
或/usr/bin
下
第三步:取证与溯源
在清除所有威胁后,我们需要进行更深入的取证,以了解攻击者是如何入侵的
- 检查日志:
- Web日志:分析Web服务器的
access.log
和error.log
,查找可疑的入侵路径 - 系统日志:检查
/var/log/secure
或auth.log
,看是否有异常登录或权限提升记录 - 其他日志:检查数据库、FTP 等服务的日志,寻找可疑的活动
- Web日志:分析Web服务器的
- 文件时间戳:使用
ls -alt
命令,查看最近修改的文件,这有助于发现攻击者新创建的恶意文件 - 威胁情报:将可疑的 IP 地址、域名、文件哈希值提交到威胁情报平台,看它们是否与已知的恶意活动相关
第四步:修复漏洞并加固
- 漏洞修复:定位并修复被利用的漏洞。如果攻击者是通过 WebShell 入侵的,很可能是因为 Web 应用存在漏洞,例如文件上传、代码执行或反序列化漏洞
- 权限收紧:
- 应用权限:将 Web 应用以低权限用户运行,限制其对文件系统的读写权限
- 账户权限:删除攻击者创建的任何后门账户,并修改所有关键账户的密码
- 安全设备加固:
- WAF/IPS:更新 WAF 和 IPS 的规则,以阻止已知的攻击 Payload
- 端点安全:在服务器上部署 EDR,增强对恶意进程的检测和响应能力