discuz7的forumdata/cache被挂马解决经验
最近发现很多使用discuz7的用户都中木马了,我的网站也没逃得过,以前我做Apache2+PHP5+MySQL5+discuz7一直正常,最近为了整合服务器资源,将整个站点改成了IIS6+PHP5+MySQL5+Discuz7.1,使用不久却发现网站被挂马了,打开帖子页面360浏览器不停报警,经过简单查看源代码发现大部分病毒来自forumdata/cache,其实我的IIS6上的asp网站以往被挂马多次,一直未能解决,索性这次花时间把这个系统彻底清理下,经过几轮杀毒,木马专杀,Webshell扫描还是未能解决,到网上找了不少资料,加上自己摸索找到一个可行的办法,如果discuz出现挂马的朋友可以参考,步骤如下:
1、首先对系统的iis的wwwroot以及系统关键位置进行杀毒和木马专杀,建议用360的专杀。
2、对discuz的attachments目录进行杀毒检查,建议将可疑的exe,com,bat,js等文件全部删除。
3、用MDecoder工具对网站进行分析,查看木马外链的url。
4、利用Search and Replace 工具查找此url的关键字,对存在的文件进行批量删除或修改处理,如果文件内容改动太大可以考虑直接恢复原始文件。如果文件有需要的内容不能替换或删除,建议使用Beyond Compare之类的工具对你的中毒文件和原有文件进行比较分析。
5、利用discuz的后台文件检查,查看最近被修改过的文件,建议用原有文件替换被修改过的文件。
6、清空discuz的forumdata文件夹的所有文件,再用MDecoder工具分析一下,看看是否还有外链,多操作几遍直到全部清除。
经过以上操作,我发现此类木马主要存在在include/,templates/default/,attachments/等文件夹内,并且以htm文件为主,已Index.htm文件最多,找到后全部清除,基本就好了。通过对IIS日至分析也可以查看到网站被注入的信息,检查时可以配合使用。
网上也有朋友分析说discuz7的forumdata/cache被大量挂马问题主要出在styles.inc.php文件上,导致用户可以通过discuz后台“自定义模板变量”生成forumdata/cache/style_1.php,从而拿到Shell。
webshell通常调用如下组件:
WScript.Shell (classid:72C24DD5-D70A-438B-8A42-98424B88AFB8)
WScript.Shell.1 (classid:F935DC22-1CF0-11D0-ADB9-00C04FD58A0B)
WScript.Network (classid:093FF999-1EA0-4079-9525-9614C3504B74)
WScript.Network.1 (classid:093FF999-1EA0-4079-9525-9614C3504B74)
FileSystem Object (classid:0D43FE01-F093-11CF-8940-00A0C9054228)
Adodb.stream (classid:{00000566-0000-0010-8000-00AA006D2EA4})
如果你的网站服务器用不到这些组件,可以考虑禁用或者改名,现在利用网站漏洞挂马的方法越来越多,不管程序员把代码写的多严谨,我们还是要做好服务器的安全工作,禁用一些存在安全隐患的文件,还是必要的。
目前对于webshell,还没有非常彻底的解决办法,继续研究。。。。。