某X CMS任意文件上传、删除、XSS漏洞挖掘
2023-5-31 00:0:39 Author: 渗透安全团队(查看原文) 阅读量:16 收藏

由于微信公众号推送机制改变了,快来星标不再迷路,谢谢大家!

死学没用,劳逸结合,玩累了再学。

不经过任何过滤,张口就来,反射XSS

<?php if ($_GET['art']): ?><dd><span class="state">内容生成完毕 !共 <?php echo $_GET['art']; ?> 条。</span></dd>
实践出真理
可能存在SQL注入和存储型XSS
public function update(){    if(isset($_POST['send'])){      $this->_model->id=$_POST['id'];      $this->getPost();      if($this->_model->update_link()){        tool::layer_alert('链接修改成功!','?a=link',6);      }else{        tool::layer_alert('链接修改失败!','?a=link',5);      }    }    if(isset($_GET['id'])){      $this->_model->id=$_GET['id'];      $_link=$this->_model->get_linkOne();      if($_link){        $this->_tpl->assign('id',StripSlashes($_link[0]->id));        $this->_tpl->assign('linkname',StripSlashes($_link[0]->linkname));        $this->_tpl->assign('linkurl',StripSlashes($_link[0]->linkurl));        $this->_tpl->assign('prev_url',tool::getPrevPage());      }    }    $this->_tpl->display('admin/link/update.tpl');  }

麻了

这老六
//表单提交字符转义  static public function setFormString($_string) {    if (!get_magic_quotes_gpc()) {      if (Validate::isArray($_string)) {        foreach ($_string as $_key=>$_value) {          $_string[$_key] = self::setFormString($_value);  //不支持就用代替addslashes();        }      } else {        return addslashes($_string); //mysql_real_escape_string($_string, $_link);      }    }    return $_string;  }
//转义过滤 static public function setRequest() { if (isset($_GET)) $_GET = Tool::setFormString($_GET); if (isset($_POST)) $_POST = Tool::setFormString($_POST); } //反转义 static public function getFormString($_object,$_field){ if ($_object) { foreach ($_object as $_value) { $_value->$_field = StripSlashes($_value->$_field); } } }
XSS
只验证Content-Type
class LogoUpload {  private $error;      //错误代码  private $maxsize;    //表单最大值  private $type;        //类型  private $typeArr = array('image/png','image/x-png');    //类型合集  private $path;        //目录路径  private $name;      //文件名  private $tmp;        //临时文件  private $linkpath;    //链接路径    //构造方法,初始化  public function __construct($_file,$_maxsize) {    $this->error = $_FILES[$_file]['error'];    $this->maxsize = $_maxsize / 1024;    $this->type = $_FILES[$_file]['type'];    $this->path = ROOT_PATH.'/'.UPLOGO;    $this->name = $_FILES[$_file]['name'];    $this->tmp = $_FILES[$_file]['tmp_name'];    $this->checkError();    $this->checkType();    $this->checkPath();    $this->moveUpload();  }          private function checkType() {    if (!in_array($this->type,$this->typeArr)) {      Tool::alertBack('警告:LOGO图片必须是PNG格式!');    }  }
开搞
嘴上说不行,身体很诚实
上蚁剑
删除功能没过滤../
public function delall(){    if(isset($_POST['send'])){      if(validate::isNullString($_POST['pid'])) tool::layer_alert('没有选择任何图片!','?a=pic',7);      $_fileDir=ROOT_PATH.'/uploads/';      foreach($_POST['pid'] as $_value){        $_filePath=$_fileDir.$_value;        if(!unlink($_filePath)){          tool::layer_alert('图片删除失败,请设权限为777!','?a=pic',7);        }else{          header('Location:?a=pic');        }      }

在C盘根目录新建/etc/passwd.txt文件

没了

未授权访问,老生常谈删cookie


付费圈子

欢 迎 加 入 星 球 !

代码审计+免杀+渗透学习资源+各种资料文档+各种工具+付费会员

进成员内部群

星球的最近主题和星球内部工具一些展示

加入安全交流群

                               

关 注 有 礼

关注下方公众号回复“666”可以领取一套领取黑客成长秘籍

 还在等什么?赶紧点击下方名片关注学习吧!


干货|史上最全一句话木马

干货 | CS绕过vultr特征检测修改算法

实战 | 用中国人写的红队服务器搞一次内网穿透练习

实战 | 渗透某培训平台经历

实战 | 一次曲折的钓鱼溯源反制

免责声明
由于传播、利用本公众号渗透安全团队所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号渗透安全团队及作者不为承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
好文分享收藏赞一下最美点在看哦

文章来源: http://mp.weixin.qq.com/s?__biz=MzkxNDAyNTY2NA==&mid=2247505505&idx=2&sn=79a0e557b40b30b2f0e70a6715e4d629&chksm=c1762bcef601a2d85d8f93064bad9a23a4fe175a07808750bfda4a1b15d28423cbf77847e0ee#rd
如有侵权请联系:admin#unsafe.sh