当前位置: 首页 > news >正文

网站建设psd辽宁省建筑工程造价信息网

网站建设psd,辽宁省建筑工程造价信息网,wordpress 文章内目录,计算机怎么建设网站目录 一、什么是phar phar://伪协议格式: 二、phar结构 1.stub phar:文件标识。 格式为 xxx; *2、manifest:压缩文件属性等信息,以序列化存 3、contents:压缩文件的内容。 4、signature:签名&#…

目录

一、什么是phar

phar://伪协议格式:

二、phar结构

1.stub phar:文件标识。

格式为 xxx;

*2、manifest:压缩文件属性等信息,以序列化存

3、contents:压缩文件的内容。

4、signature:签名,放在文件末尾。

生成模板:

三、绕过方式

1.更改文件格式

2.绕过phar关键词检测

3.绕过 __HALT_COMPILER检测

(1)将Phar文件的内容写到压缩包注释中,压缩为zip文件

(2)将生成的Phar文件进行gzip压缩,压缩命令:


学习参考:

初学phar反序列化-CSDN博客

解决 ‘phar.readonly‘ 设置为 ‘On‘ 的问题,轻松构建可写的 phar 文件

一、什么是phar

phar (PHP Archive) 是PHP里类似于Java中jar的一种打包文件。

可以把多个php文件存放至同一个文件中,无需解压,PHP就可以进行访问并执行内部语句。

一般使用 文件包含中的,phar://伪协议,读取.phar文件

文件包含之——phar伪协议

phar://伪协议格式:

不管后缀是什么,都会当做压缩包来解压

?file=phar://压缩包/内部文件 

e.g 将一句话木马(shell.php)压缩成压缩包形式(shell.zip),将压缩包后缀改为.jpg(shell.jpg)

?file=phar://shell.jpg/shell.php

PHP>=5.3.0压缩包需要是zip协议压缩,rar不行

二、phar结构

1.stub phar:文件标识。

格式为 xxx<?php xxx; __HALT_COMPILER();?>;

PHP通过stub识别一个文件为phar文件,可以利用这点绕过文件上传检测

例如  放入010editor中有<?php __HALT_COMPILER();?>头部信息

*2、manifest:压缩文件属性等信息,以序列化存

这也是反序列化的攻击点,因为这里以序列化的形式存储了用户自定义的Meta-data

3、contents:压缩文件的内容。

4、signature:签名,放在文件末尾。

生成模板:

先设置php.ini中phar.readonly = Off,注意要删除“;”分号

#get_phar.php
<?php 
class test{public $name="line";function __destruct(){echo "This is ".$this->name;}
}
$a = new test();
$a->name="Phar";$phar=new phar('phar.phar',0);//后缀名必须为phar
$phar->startBuffering();//开始缓冲 Phar 写操作
$phar->setMetadata($a);//自定义的meta-data存入manifest
$phar->setStub("<?php __HALT_COMPILER();?>");//设置stub,stub是一个简单的php文件。
$phar->addFromString("test.txt","test");//添加要压缩的文件
$phar->stopBuffering();//停止缓冲对 Phar 归档的写入请求,并将更改保存到磁盘
?>

(小皮搭建phar网站)访问get_phar.php,010分析生成的phar.phar

三、绕过方式

1.更改文件格式

一般可以绕过大多数上传检测

利用Phar反序列化的第一步是需要上传Phar文件到服务器,而如果服务端存在防护,就需要更改文件格式。

e.g 要求文件格式只能为gif

$_FILES["file"]["type"]=="image/gif"

PHP通过Stub里的__HALT_COMPILER();来识别这个文件是Phar文件,对于其他无限制。

故 对文件后缀、文件名进行更改,其实质仍然是Phar文件。

示例代码:

<?phpclass Test {public $name;function __construct(){echo "I am".$this->name;}}$a = new Test();$a -> name = "line";$phar = new Phar('GIF.phar');$phar -> startBuffering(); //开始缓冲 Phar 写操作$phar -> setStub('GIF89a<?php __HALT_COMPILER();?>'); //设置stub,添加gif文件头$phar ->addFromString('test.txt','test'); //要压缩的文件$phar -> setMetadata($a);  //将自定义meta-data存入manifest$phar -> stopBuffering(); //停止缓冲对 Phar 归档的写入请求,并将更改保存到磁盘
?>

在浏览器上访问此文件生成GIF.phar文件,用010editor查看

分析文件格式 为gif

2.绕过phar关键词检测

Phar反序列化中,一般思路是上传Phar文件后,通过给参数赋值为Phar://xxx来实现反序列化,而一些防护可能会采取禁止参数开头为Phar等关键字的方式来防止Phar反序列化,此时需要绕过phar关键词检测。

e.g 正则过滤了头为Phar等关键字

if (preg_match("/^php|^file|^phar|^dict|^zip/i",$filename){die();
}

可使用各种协议来进行绕过

1、使用filter伪协议来进行绕过
php://filter/read=convert.base64-encode/resource=phar://test.phar2、使用bzip2协议来进行绕过
compress.bzip2://phar:///test.phar/test.txt3、使用zlib协议进行绕过
compress.zlib://phar:///home/sx/test.phar/test.txt

3.绕过 __HALT_COMPILER检测

PHP通过__HALT_COMPILER来识别Phar文件,那么出于安全考虑 为了防止Phar反序列化的出现,可能就会对__HALT_COMPILER进行过滤。

e.g 正则过滤__HALT_COMPILER

 if (preg_match("/HALT_COMPILER/i",$Phar){die();
}
(1)将Phar文件的内容写到压缩包注释中,压缩为zip文件
<?php
$a = serialize($a);
$zip = new ZipArchive();
$res = $zip->open('phar.zip',ZipArchive::CREATE); 
$zip->addFromString('flag.txt', 'flag is here');
$zip->setArchiveComment($a);
$zip->close();    
?>
(2)将生成的Phar文件进行gzip压缩,压缩命令:
gzip test.phar
//gzip 文件名.phar

压缩后同样也可进行反序列化。

http://www.yayakq.cn/news/423956/

相关文章:

  • 为什么做网站ppt定制化网站开发
  • 建站代理赚钱吗应届生去外包公司
  • 合众商道网站开发黄冈公司网站建设平台
  • 网站建设技术服务税种分类成都logo设计公司
  • 烟台住房和城乡建设厅网站做的网站显示不了背景图片
  • 灰色系网站网站建设属于无形资产吗
  • wap网站模板下载深圳为华网络科技有限公司
  • 网站建设常用编程语言园林景观设计公司质量环境职业健康安全管控
  • 网站怎么做长尾词网站文章不显示
  • 杭州做卖房子的工作哪个网站好wordpress 表格处理
  • 网站开发培训是不是坑网站建设和托管
  • 网站策划主题中信建设有限责任公司 电话
  • 德育工作网站建设方案做网站建设与推广企业
  • 上海网站建设公司大全百度地图手机网站代码
  • 怎么把网站黑掉wordpress固定链接
  • 相城苏州网站建设淘宝电商怎么做
  • 用点心做点心官方网站个人网站备案名称
  • 官网网站开发框架新建定制网站费用
  • 东营组建网站这几年做啥网站能致富
  • 网站安全管理制度建设下载网站开发所需要的语言
  • 上海网站建设费集团网站设计案例
  • 如皋教育门户网站建设经验自己搭建vps上外网
  • 购书网站开发的意义wordpress 汉化软件
  • 什么样的网站开发比较吃香google网站打不开了
  • 织梦网站最新漏洞入侵中国十大it外包公司
  • 石家庄网站建设模板网站建好怎么发布
  • 公司网站建设 费用入账做网站 空间
  • 网站建设域名有哪些类型清远市住房和城乡建设管理局门户网站
  • 网站建设的五个基本要素可以做仿牌网站
  • 商城网站用什么做优化大师的作用