遗留PHP osCommerce项目:未知imagers.php文件持续增大排查求助
当前网站异常分析
你的站点已经被入侵,imagers.php是攻击者植入的恶意脚本,用途大概率是批量执行数据库查询并记录结果——可能是在窃取敏感数据(比如用户信息、订单数据),或是进行数据探测。access_log无相关记录,说明脚本并非通过Web请求触发,而是通过服务器本地进程(比如CLI执行、定时任务)运行,也不排除攻击者篡改了日志文件掩盖痕迹。
排查方向
- 排查服务器进程与定时任务
- 执行
ps aux | grep php查找异常PHP进程,重点看持续运行、关联imagers.php的进程,记录进程PID和所属用户; - 检查系统及web用户的定时任务:执行
crontab -l(root和web服务器用户如www-data都要查),看有没有陌生的定时任务触发该脚本。
- 执行
- 检查文件与权限
- 执行
ls -l imagers.php查看文件的所有者、创建/修改时间、权限,对比正常文件判断是否为非授权用户创建; - 搜索近期修改的PHP文件:
find /path/to/your/site -name "*.php" -mtime -3,排查是否有其他被篡改或植入的后门脚本。
- 执行
- 核查osCommerce系统漏洞
- 检查后台管理员账号:查看是否有新增的陌生管理员,或原有账号的登录时间异常;
- 对比核心文件哈希:将当前osCommerce核心文件(如
includes/application_top.php、admin/index.php)和官方原版对比,看是否被插入恶意调用代码; - 检查第三方插件:删除或禁用未经验证的插件,旧版osCommerce插件常存在未修补的文件上传、SQL注入漏洞。
- 深挖服务器日志
- 查看PHP错误日志:通常在
/var/log/php/error.log或站点目录下的error_log,找与imagers.php相关的执行记录; - 检查系统安全日志:
/var/log/auth.log(SSH/FTP登录记录)、/var/log/syslog,排查是否有陌生IP的成功登录或异常操作; - 启用数据库查询日志:临时开启MySQL的通用查询日志,匹配
imagers.php中的查询语句,追踪查询发起的来源进程。
- 查看PHP错误日志:通常在
制止与修复措施
- 立即终止恶意进程:找到关联
imagers.php的PID,执行kill -9 [PID]停止脚本运行; - 清理恶意文件:先备份
imagers.php留作取证,再删除该文件,同时清理排查出的其他后门脚本; - 收紧文件权限:将站点文件权限设置为最小必要值,比如文件设为
644、目录设为755,禁止web服务器用户拥有目录写入权限(仅保留uploads等必要目录的写入权限,并限制上传文件类型); - 封堵入侵入口
- 若为SSH/FTP密码泄露:立即重置所有服务器账号密码,禁用密码登录改用密钥认证,开启fail2ban拦截暴力破解;
- 若为osCommerce漏洞:升级至最新稳定版,修补官方公布的安全漏洞,重置后台管理员密码,删除不必要的功能模块;
- 加固监控
- 启用文件监控工具(如inotify-tools),实时监控站点目录的文件创建/修改操作;
- 修改php.ini禁用危险函数:如
exec、shell_exec、system、passthru,限制PHP执行权限; - 定期备份站点与数据库,避免数据丢失。
内容的提问来源于stack exchange,提问作者user15138019
相关产品推荐
相关产品推荐

