1.
准备与取证基本原则
- 在开始之前,先确保时间同步:sudo timedatectl set-ntp true;记录当前时间并开启只读快照(云盘或dd镜像)。
- 禁止在原始磁盘上做写操作;若必须分析,先做镜像:sudo dd if=/dev/vda bs=4M of=/mnt/forensic/vda.img conv=sync,noerror。
- 保全部署日志与系统状态:保存 /var/log/*、nginx/apache access.log、auth.log、/var/run/、内存转储(必要时使用: sudo gcore
)。
2.
云端日志与权限核查
- 登录阿里云控制台,导出操作审计日志(CloudTrail 类似的操作审计)和云盾/云监控告警记录。
- 导出VPC流日志(Flow Log),记录源/目的IP、端口、协议和NAT映射;在控制台或API中下载CSV并本地分析。
3.
网络抓包与流量保全
- 在受影响实例上用tcpdump抓取关键时间段:sudo tcpdump -i eth0 -s 0 -w /mnt/forensic/capture.pcap host 1.2.3.4 and port 80。
- 若怀疑大量连接,用tshark快速筛选:tshark -r capture.pcap -Y "http.request" -T fields -e ip.src -e http.host -e http.user_agent。
4.
Web日志快速筛查(以nginx为例)
- 提取高频IP:awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr | head。
- 筛选异常URI:grep -E "(\.php|/wp-admin|/xmlrpc.php|base64_encode)" /var/log/nginx/access.log | awk '{print $1,$7,$9,$12}'。
5.
身份与系统日志分析
- 检查登录记录:sudo ausearch -m USER_LOGIN --start recent_time --end now;或查看 /var/log/auth.log:grep "Accepted" /var/log/auth.log。
- 如果怀疑提权或后门,搜索可疑二进制与定时任务:find / -perm -4000 -type f -exec ls -l {} \;,crontab -l(各用户)。
6.
使用ELK/GoAccess做批量分析
- 若日志量大,建议把日志导入Elasticsearch:Filebeat采集 -> Logstash过滤(grok规则)-> Kibana可视化。
- 简单本地替代:goaccess /var/log/nginx/access.log -o report.html 可以快速得到IP、URL、状态统计。
7.
从pcap到协议层解析(zeek/suricata)
- 使用zeek分析pcap:zeek -r capture.pcap;查看 http.log、conn.log、dns.log 来构建时间线。
- 使用suricata做IDS检测:suricata -r capture.pcap -l /tmp/suri_out 然后检查alerts.log 与 eve.json。
8.
IP溯源与旁路情报查询
- 对可疑IP做whois与geoip:whois 1.2.3.4;geoiplookup 1.2.3.4;查询是否为云服务、代理或已知扫描源。
- 使用VirusTotal、AbuseIPDB、Shodan查询其历史行为;保存查询快照作为证据。
9.
关联分析与时间线构建
- 将各类日志(nginx、syslog、auth、cloud audit、flow log、zeek)按时间排序合并(csv/tsv格式),用Excel或ELK构建时间线。
- 确定初始入口、横向移动和外联IP;标注每一步证据来源与hash值。
10.
可疑文件与恶意样本处理
- 对可疑文件计算hash:sha256sum suspect.bin > suspect.sha256;上传到VirusTotal(注意隐私与合规)。
- 若需动态分析,请在隔离的沙箱环境中运行(不要在生产或云实例上直接执行)。
11.
与阿里云协查与法律合规
- 如需上溯到真实源头或公网出口,请通过阿里云工单/安全应急响应(云盾)申请协查,提交事件ID、时间段、pcap及日志样本。
- 保留证据链(hash、时间戳、脚本)并记录所有操作步骤以备法律取证。
12.
响应与防护建议
- 临时封禁恶意IP:sudo iptables -I INPUT -s 1.2.3.4 -j DROP;长期建议在安全组或WAF加入规则。
- 部署WAF规则、限制管理端口、启用MFA、更新系统与应用补丁、启用日志集中化与告警。
13.
问:如何判断日志里的源IP是否为真实攻击者?
答:单凭源IP不可绝对判断,需结合VPC流日志、云NAT映射、Whois/GeoIP、端点进程与会话信息、ISP返回和云厂商协查结果。攻击常通过代理/跳板/僵尸网络发起,因此把握证据链(时间线、会话payload、后续行为)更可靠。
14.
问:抓到的pcap应如何保存以便法务使用?
答:先创建只读镜像并计算sha256、md5,记录采集命令和时间戳。将原始pcap复制到隔离存储,保留原始权限,生成校验文件并在传输/上传时使用加密通道,保留操作日志供法务审查。
15.
问:在阿里云上做溯源有什么特别注意的地方?
答:注意云环境中NAT、弹性公网IP和负载均衡会改变原始IP映射;许多痕迹只在云端审计或VPC流日志可见,必要时通过官方渠道申请协查和日志导出以获得公网出口对应关系。
来源:阿里云香港服务器被打事件中日志分析与溯源实操方法