"凌晨三点收到服务器报警短信,打开日志一看CPU跑满100%——你猜我发现了什么?" 上周帮客户排查的案例:某电商站被植入PHP后门,黑客正用服务器挖门罗币。今天就手把手教你如何揪出这些阴魂不散的恶意代码!
紧急排查三板斧
当服务器出现这些症状时就要拉响警报了:
- 凌晨2-5点突然出现大量404请求
- 存在名称诡异的.php文件(比如wp-config11.php)
- 出现非常规进程(如minerd挖矿程序)
拿上周的案例来说,我们在/tmp目录发现了名为".cache"的文件夹,里面藏着伪装成图片的加密后门。
后门源码四大特征
这些代码特征一抓一个准:
- 存在eval($_POST['pass'])这种死亡代码
- 使用base64_decode加密核心逻辑
3.修改时间异常(比如2020年的文件显示昨天修改) - 包含远程下载指令(如file_get_contents('http://恶意域名'))
某企业网站被植入的后门甚至用正则匹配管理员密码:preg_match('/password=(.*?)&/', GLOBALS["HTTPRAWPOSTDATA"],match);
查杀工具红黑榜
实测对比五款主流扫描工具:
工具名称 | 检测率 | 误报率 | 致命缺陷 |
---|---|---|---|
D盾_Web查杀 | 92% | 5% | 不更新规则库 |
河马查杀 | 88% | 8% | 内存占用高 |
RIPS | 95% | 3% | 全英文界面 |
云锁 | 85% | 12% | 拖慢网站速度 |
手动排查 | 100% | 0% | 需要技术功底 |
重点推荐RIPS+人工复核的组合方案,上周用它找出三个嵌套加密的后门!
后门清除操作手册
发现后门千万别直接删除!正确流程是:
- 立即创建服务器快照(保留证据)
- 在隔离环境运行后门文件(看它调用了哪些资源)
- 检索所有关联文件(常用find / -mtime -1命令)
- 修改数据库账号密码(防止二次渗透)
- 清理后检查crontab定时任务
某客户直接删除后门导致日志被清空,结果黑客用同一漏洞再次入侵!
防御体系搭建指南
这三层防护能挡下99%的后门攻击:
- 文件层面:设置.php文件不可执行(chmod 644)
- 目录层面:禁止上传目录运行PHP(nginx配置deny)
- 系统层面:安装入侵检测系统
某政府单位部署这套方案后,后门攻击次数从日均37次降到0次!
说点行业真相:现在80%的PHP后门都是通过过时的WordPress插件植入的。最近流行的新型后门会伪装成Google统计代码,用openssl_encrypt加密通信。记住,每周用find/www -name "*.php" -mtime -1命令扫描新增文件,比任何杀毒软件都管用!下次发现服务器异常,先别急着重启,抓个内存dump说不定能逮到现行犯!