当服务器遭受攻击时,快速准确地定位攻击源、分析攻击路径并采取应对措施是恢复服务的关键,以下从日志分析、系统检查、网络监控和工具使用四个方面,详细说明服务器被攻击后的排查方法。

日志分析:追踪攻击痕迹
日志是排查攻击的核心依据,需重点关注系统日志、应用日志和安全设备日志。
系统日志:Linux系统可通过/var/log/secure(SSH登录记录)、/var/log/auth.log(认证日志)查看异常登录尝试,例如失败次数过多的IP、异常登录时间或非用户账号的登录记录,Windows系统则需检查“事件查看器”中的“安全日志”,重点关注ID为4625(登录失败)或4624(登录成功)的事件,尤其是来自陌生IP的登录。
应用日志:Web服务器日志(如Nginx的access.log、Apache的access_log)需排查异常请求,如高频访问的恶意URL(如/admin、/wp-login.php)、包含SQL注入或XSS特征的请求参数,以及返回500/403错误异常的IP。
安全设备日志:若部署了防火墙(如iptables、WAF),需查看被拦截的攻击记录,例如高频触发规则的IP、异常协议流量(如ICMP洪水)或恶意载荷。
系统检查:发现异常文件与进程
攻击者常通过植入恶意文件、维持后门进程来控制服务器,需全面排查系统状态。
进程检查:使用top、htop或ps aux命令查看进程列表,重点关注CPU/内存占用异常的进程,尤其是名称可疑(如python3 -c "import os...")、路径异常(如/tmp/.hidden)或伪装成系统服务的进程,可通过lsof -p PID查看进程打开的文件,确认是否访问敏感目录(如/etc/shadow、/home)。
文件完整性校验:使用rpm -Va(RPM系统)或debsums(Debian系统)检查关键系统文件是否被篡改;对于Web目录,可通过find /var/www -type f -mtime -7 -exec md5sum {} \;生成近期文件的MD5值,与正常状态对比发现异常文件。
账号与权限检查:查看/etc/passwd、/etc/shadow中的账号,删除可疑或冗余账号;检查sudoers文件和用户目录下的.ssh授权密钥,移除未授权的公钥。

网络监控:定位异常流量与连接
攻击常伴随异常网络行为,需通过流量分析定位攻击源和攻击类型。
实时流量监控:使用iftop或nethogs查看实时网络带宽占用和进程级流量,识别异常IP的高频连接(如短时间内大量请求同一端口)。
连接状态分析:通过netstat -anp或ss -tulnp查看当前连接状态,重点关注ESTABLISHED状态的异常连接(如IP为境外、端口为非业务常用端口)以及大量TIME_WAIT状态的连接(可能为DDoS攻击)。
恶意IP溯源:将可疑IP输入威胁情报平台(如VirusTotal、ThreatBook)查询是否为已知恶意IP;通过whois命令查看IP归属地、注册信息,辅助判断攻击来源。
专业工具辅助:提升排查效率
借助专业工具可快速定位攻击细节,减少人工排查成本。
入侵检测系统(IDS):如OSSEC、Suricata,通过规则匹配检测异常行为,如文件篡改、暴力破解等,并生成告警。
数字取证工具:如The Sleuth Kit、Autopsy,可深度分析磁盘镜像,恢复被删除的日志文件或恶意程序。
日志分析平台:如ELK(Elasticsearch、Logstash、Kibana),对海量日志进行集中存储、检索和可视化分析,快速定位攻击时间线。

服务器被攻击后的排查需遵循“先隔离、再分析、后处置”原则:立即断开可疑网络连接,避免攻击扩大;通过日志、进程、流量多维度定位问题;利用工具提升效率,彻底清除恶意程序并修复漏洞,事后需加强安全防护,如定期更新系统、配置防火墙规则、启用多因素认证,降低再次被攻击的风险。



















