選擇語言
繁體中文
繁體中文 Traditional Chinese
简体中文
简体中文 Simplified Chinese
English
English English
日本語
日本語 Japanese
AI 助手

今日情報速問。不用選範圍,直接問今天值得看什麼。

完整分析

通知訊訊

暫無新訊訊

代码分析 漏洞文件:/dede/makehtml_homepage.php 代码 else if($dopost=="make") {     $remotepos = empty($remotepos)? '/index.html' : $remotepos;     $isremote = empty($isremote)? 0 : $isremote;     $serviterm = empty($serviterm)? "" : $serviterm;     $homeFile = _DEDEADMIN_."/".$position;     $homeFile = str_replace("\\","/",$homeFile);     $homeFile = str_replace("//","/",$homeFile);     $fp = fopen($homeFile,"w") or die("你指定的文件名有问题,无法创建文件");     fclose($fp);     if($saveset==1)     {         $iquery = "UPDATE `#@__homepageset` SET templet='$templet',position='$position' ";         $dsql->ExecuteNoneQuery($iquery);     }     _//_ _判断首页生成模式_    if ($showmod == 1)     {         _//_ _需要生成静态_        $templet = str_replace("{style}", $cfg_df_style, $templet);         $pv = new PartView();         $GLOBALS['_arclistEnv'] = 'index';         $pv->SetTemplet($cfg_basedir.$cfg_templets_dir."/".$templet);         $pv->SaveToHtml($homeFile);         echo "成功更新主页HTML:".$homeFile."<br /><a href='{$position}' target='_blank'>浏览...</a><br />";     } else {         _//_ _动态浏览_        if (file_exists(_DEDEADMIN_."/../index.html")) @unlink(_DEDEADMIN_."/../index.html");         echo "采用动态浏览模式:<a href='../index.php' target='_blank'>浏览...</a><br />";     } 其中 代码 $pv->SetTemplet($cfg_basedir.$cfg_templets_dir."/".$templet); 跟进去 代码 function SetTemplet($temp,$stype="file") {     if($stype=="string")     {         $this->dtp->LoadSource($temp);     }     else     {         $this->dtp->LoadTemplet($temp);  //进入到这里     }     if($this->TypeID > 0)     {         $this->Fields['position'] = $this->TypeLink->GetPositionLink(TRUE);         $this->Fields['title'] = $this->TypeLink->GetPositionLink(false);     }     $this->ParseTemplet(); } 代码 function LoadTemplet($filename) {     $this->LoadTemplate($filename);//继续跟进 } 代码 function LoadTemplate($filename) {     $this->SetDefault();     if(!file_exists($filename))     {         $this->SourceString = " $filename Not Found! ";         $this->ParseTemplet();     }     else     {         while($line = fgets($fp,1024))  //将文件内容赋值给$line         {             $this->SourceString .= $line;  //最后赋予$this->SourceString         }         fclose($fp);         if($this->LoadCache($filename))         {             return '';         }         else         {             $this->ParseTemplet();         }     } } 将文件内容赋值给$this->SourceString 代码 $pv->SaveToHtml($homeFile); 这行代码跟进 代码 function SaveToHtml($filename,$isremote=0) {     global $cfg_remote_site;     _//__如果启用远程发布则需要进行判断_    if($cfg_remote_site=='Y' && $isremote == 1)     {         _//__分析远程文件路径_        $remotefile = str_replace(_DEDEROOT_, '', $filename);         $localfile = '..'.$remotefile;         _//__创建远程文件夹_        $remotedir = preg_replace('/[^\/]*\.js/', '', $remotefile);         $this->ftp->rmkdir($remotedir);         $this->ftp->upload($localfile, $remotefile, 'ascii');     }     $this->dtp->SaveTo($filename);   //跟进到这里 } 代码