应直接搜索可疑后门特征代码,重点检查eval、assert、system、exec、shell_exec、base64_decode等函数及其混淆调用,结合文件修改时间、异常命名、日志分析与系统持久化痕迹综合排查。
怎么看 PHP 文件里有没有可疑后门
直接搜常见后门特征代码,比等网站变慢再排查更有效。重点盯 eval(、assert(、system(、exec(、shell_exec(、base64_decode( 这些函数调用,尤其是它们嵌套或参数被混淆的情况。
实操建议:
立即学习“PHP免费学习笔记(深入)”;
- 用
grep -r "eval\|assert\|system\|exec\|shell_exec\|base64_decode" /var/www/html/ --include="*.php"快速扫描(路径按实际改) - 注意伪装写法,比如
$a='ev'.'al'; $a($_POST['x']);或用gzinflate(base64_decode(...))包裹整段逻辑 - 检查文件修改时间异常的 PHP 文件,特别是最近 7 天内被改过但你没动过的
- 留意名字怪异的文件:如
1.php、shell.php、wp-config-backup.php(即使不在 WordPress 目录下)
为什么删了后门网站还是慢
后门可能已执行过命令,留下持久化痕迹,比如在 crontab 里加了定时任务、在系统服务里注册了常驻进程、或往数据库里插了恶意重定向脚本——这些不会因删 PHP 文件而消失。
实操建议:
立即学习“PHP免费学习笔记(深入)”;
- 查定时任务:
crontab -l和cat /etc/crontab,看有没有陌生 URL 或 base64 字符串 - 查可疑进程:
ps aux | grep -E "(php|perl|python|wget|curl)",重点关注非 Web 服务器用户(如 www-data、apache)启动的长期运行脚本 - 查数据库自动注入:
SELECT * FROM wp_options WHERE option_name LIKE '%redirect%' OR option_value LIKE '%eval%';(WordPress 场景,表名前缀按实际调整) - 检查 .htaccess 是否被篡改,比如加了
RewriteRule转发到黑链页面
怎么确认某个 PHP 请求是不是后门触发点
关键不是看“能不能访问”,而是看“谁在访问、访问了什么、返回了什么”。后门往往藏在正常接口里,比如伪装成图片上传回调、API 日志上报、或 CMS 的 AJAX 处理入口。