你有没有发现自己用帝国CMS做的站好好的,突然就跳奇怪的广告、首页关键词被改得乱七八糟?甚至后台登进去还多了一堆陌生的管理员账号?这基本就是被挂恶意代码了,别慌,我这几年清了不下百个帝国CMS的恶意脚本,踩过的坑能绕服务器三圈,今天把压箱底的招都给你抖出来。
这事儿吧你上来就删文件铁定要后悔,万一删错系统核心文件,站直接炸了哭都没地方哭。先把整个站点目录+数据库全量备份到本地,哪怕你后面清崩了也能回滚,啥损失都没有。备份完先别碰线上文件,先拉个本地副本扫,省得清到一半黑客又给你重新挂马,白忙活。
帝国CMS的坑就在它的动态目录、缓存目录、上传目录很多人权限开得太大,黑客随便就能写文件。你不用全目录瞎翻,重点盯这几个文件夹准没错:
扫文件的时候别光看修改时间,很多黑客会把木马的修改时间改成和系统文件一模一样,蒙混过关。你直接搜特征码就行,常见的恶意代码特征:eval、base64_decode、gzinflate这些加密函数,要是普通的系统文件里突然出现一大段乱码一样的加密内容,十有八九是马,直接删没商量。

很多人清完文件就以为完事了,结果过两天恶意代码又出来了,骂完服务器骂帝国,其实是你没清数据库里的残留。先去搜数据库里的所有text、varchar长字段,尤其是后台配置、模板内容、栏目内容这几块,黑客最喜欢把跳转脚本插在网站公共头部尾部的模板里,你后台改模板的时候看不见,实际前端一加载就触发。
举个例子你可以直接用这条SQL搜,记得把前缀换成你自己的数据库前缀: ```SELECT FROM phome_enewspubtemp WHERE temptext LIKE '%