Docker php文件本地包含--pearcmd.php利用

news2024/9/27 17:33:27

目录

前言

环境搭建

pearcmd.php巧妙利用

渗透


前言

docker包含日志文件,基本不可能,就以我自身的一个项目来说,在尝试包含日志文件时发现,客户将他的日志文件从定向到了设备文件,而php没有包含设备文件的权限

然后我们就想如何包含,发现客户的文件目录里有一个phpinfo(),然后可以使用phpinfo实现临时文件的包含。但是这个包含的成功率经测试不是很高。

所以我们这里再说一个新招

环境搭建

docker环境直接拉就可以了,然后会将你的当前目录映射到docker容器中

docker run -d --name web -p 8080:80 -v $(pwd):/var/www/html php:7.4-apache

pearcmd.php巧妙利用

pecl是PHP中用于管理扩展而使用的命令行工具,而pear是pecl依赖的类库。在7.3及以前,pecl/pear是默认安装的;在7.4及以后,需要我们在编译PHP的时候指定--with-pear才会安装。

docker环境中是有这个文件的如下图

原本pear/pcel是一个命令行工具,并不在Web目录下,我们是访问不到的。但我们遇到的场景比较特殊,是一个文件包含的场景,只要我们可以猜到路径,那么我们就可以包含到pear中的文件,进而利用其中的特性来搞事。  

如何利用

下面来看一下register_argc_argv这个配置,这个配置子docker的php环境中是默认开启的如下图所示,那这么个东西有啥子用,不急我们接着往下看

当开启了register_argc_argv这个选项,用户的输入将会被赋予给$argc$argv$_SERVER['argv']几个变量

如果PHP以server形式运行,且他有$_SERVER变量,而且开启了register_argc_argv这个选项,且request_info.argc不存在,就会出现http数据包中的query-string就会被作为$_server['argv']的值。我们来看一下

 pear中获取命令行argv的函数,他是先获取$argv,如果argv不存在再尝试$_SERVER['argv],我们可通过query-string控制$_SERVER['argv]。 然后pear中会有一个可以利用的参数config-create,这个命令需要传入两个参数,其中第二个参数是写入的文件路径,第一个参数会被写入到这个文件中。我们在query-string中传递config-create,这个东西就会被pearcmd.php调用。然后pearcmd.php两个参数在通过query-string进行获取。这样我们可以构造如下payload。注意config-create前面有一个空格不能忘记

 config-create /&file=/usr/local/lib/php/pearcmd.php&/<?=phpinfo()?> /tmp/hello.php

/&file=/usr/local/lib/php/pearcmd.php 要包含的文件

<?=phpinfo()?> 要包含的内容

/tmp/hello.php要写入的文件

渗透

抓包传值

 我们进入docker容器中查看文件是否成功上传

成功上传虽然有乱码但是代码已经传递上去

尝试包含所写如文件

包含成功

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2088688.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Python Web开发】Flask+HTML学习笔记

目录 Flask框架一、安装flask库二、运行一个网页三、库函数及变量 HTML标签语言一、基本格式二、标签2.1 块级标签2.1.1 标题2.1.2 div2.1.3 图片2.1.4 列表2.1.5 表格 2.2 行内标签2.2.1 span2.2.2 超链接2.2.3 输入 2.3 其他标签2.3.1 提交表单 Flask框架 一、安装flask库 …

Unity 3D学习资料集合

本文包含了unity3D 游戏开发相关的学习资料&#xff0c;包含了入门、进阶、性能优化、面试和书籍等学习资料&#xff0c;含金量非常高&#xff0c;在这里分享给大家&#xff0c;欢迎收藏。 学习社区 1.Unity3D开发者 Unity3D开发者论坛是一个专注于Unity引擎的开发者社区。在这…

国内AI工具分类大盘点,这些神器你都用过了吗?

AI爆发到现成已经快2年了&#xff0c;基本上我自己也使用了近2年的AI产品。国内、外的AI产品体验了很多。 从最初文本聊天类的gpt、new bing、文心一言、通义千问&#xff0c;到后面绘图类Midjourney、Stable Diffusion、文心一格、通义万相等等。 在这里来分享我自己使用的一…

游戏设计师:创造虚拟世界的艺术家

游戏设计师&#xff0c;这个听起来富有创造性和趣味的职业&#xff0c;正逐渐成为数字娱乐行业中备受瞩目和追捧的角色。他们是虚拟世界的建造者、体验的创造者和叙事的编织者。在电子游戏风靡全球的今天&#xff0c;游戏设计师的工作远不只是画画或编故事那么简单&#xff0c;…

如何设计接口测试用例?

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 接口测试是一种软件测试方法&#xff0c;用于验证软件系统中不同组件或模块之间的接口是否正常工作&#xff0c;主要关注于接口的输入和输出&#xff0c;以及接…

Linux的远程登录教程(超详细)

我们在进行远程登录时要用的一种协议叫SSH&#xff0c;那什么叫SSH呢&#xff1f; SSH&#xff08;Secure Shell&#xff09;是一种网络协议&#xff0c;用于在不安全的网络中提供安全的远程登录和其他网络服务。它通过加密技术确保数据在传输过程中的机密性和完整性&#xff…

ESP32-IDF http请求崩溃问题分析与解决

文章目录 esp32s3 http请求崩溃问题代码讨论修正后不崩溃的代码esp32相关文章 ESP32S3板子, 一运行http请求百度网站的例子, 就会panic死机, 记录下出现及解决过程. esp32s3 http请求崩溃 一执行http请求的perform就会崩溃, 打印如图 ESP32-IDF 的http请求代码是根据官方dem…

DDK拧紧控制器AFC1500维修_无法通讯问题怎么解决

‌DDK拧紧控制器在工业装配领域以其高效、精准的性能受到众多企业的青睐。特别是在汽车制造、航空航天、重型机械和其他需要大量螺栓紧固的行业。 ‌工具小巧 拧紧力范围广泛‌ 联网功能强大 配备扭矩和角度传感器 多回路控制器 一、检查电源及插头‌&#xff1a;首先应检…

2024公立医院绩效考核进行中,契约锁电子签章助力电子病历评级

2024年公立医院绩效考核正在进行中&#xff0c;由国家卫健委最新印发的《国家二级公立医院绩效考核操作手册&#xff08;2024版&#xff09;》以及《国家三级公立医院绩效考核操作手册&#xff08;2024版&#xff09;》将“电子病历应用功能水平分析应逐步提高”列为新增考核指…

【相似度计算 / 2】

题目 代码 #include <bits/stdc.h> using namespace std; unordered_set<string> s1, s2; int cnt1, cnt2, cnt; int n, m; void process(string& x) {for(char& c : x){if(c > a) continue;else c a - A;} } int main() {cin >> n >> m;…

加密软件的特殊功能有哪些

1.透明加密&#xff1a;在用户不感知的情况下自动对文件进行加密和解密&#xff0c;保证数据的安全性和使用的便捷性。 2.多种加密模式&#xff1a;提供多种加密模式&#xff0c;如透明加密、智能加密、只解密不加密等&#xff0c;满足不同场景下的数据保护需求。 3.应用加密…

基于协同过滤算法的电影推荐系统的设计与实现(论文+源码)_kaic

摘 要 现在观看电影已逐渐成为人们日常生活中最常见的一种娱乐方式&#xff0c;人们通常会在周末或在休息、吃饭时间不由自主地在各种视频软件中搜索当前火热的影视节目。但是现在的视频软件电影推荐功能不够完善&#xff0c;所以需要开发出一套系统来使用户只需要简单操作就能…

如何实现OpenHarmony的OTA升级

OTA简介 随着设备系统日新月异&#xff0c;用户如何及时获取系统的更新&#xff0c;体验新版本带来的新的体验&#xff0c;以及提升系统的稳定性和安全性成为了每个厂商都面临的严峻问题。OTA&#xff08;Over the Air&#xff09;提供对设备远程升级的能力。升级子系统对用户…

白嫖游戏指南,Epic喜加一:《野卡橄榄球》

前言 Epic喜加一&#xff1a;《野卡橄榄球》《野卡橄榄球》简介&#xff1a; 前言 接下来有时间会分享一些游戏相关可以白嫖的资源&#xff0c;包括游戏本体、游戏素材资源等等。 有需要的小伙伴可以关注这个专栏&#xff0c;不定期更新哦&#xff01; 专栏&#xff1a;白嫖…

微信小程序中Towxml解析Markdown及html

一、Towxml Towxml 是一个让小程序可以解析Markdown、HTML的解析库。 二、引入 2.1 clone代码 git clone https://github.com/sbfkcel/towxml.git2.2 安装依赖 npm install2.3 打包 npm run build2.4 引入文件 将dist文件复制到微信小程序根目录&#xff0c;改名为towx…

简化WPF开发:CommunityToolkit.Mvvm在MVVM架构中的实践与优势

文章目录 前言一、CommunityToolkit.Mvvm1.特点2.优点3.缺点 二、WPF项目应用1.引入到 WPF 项目2.使用示例 总结 前言 CommunityToolkit.Mvvm 是 Microsoft 提供的一个社区工具包&#xff0c;专为 MVVM&#xff08;Model-View-ViewModel&#xff09;模式设计&#xff0c;旨在帮…

基于Virtex UltraScale+ VU13P FPGA的4路FMC接口基带信号处理平台

Virtex UltraScale系列 FPGA处理器&#xff1a;XCVU13P-2FHGB2104I动态存储数量&#xff1a;2组DDR4 SDRAM动态存储容量&#xff1a;每组4GByte&#xff0c;每个颗粒为8GBit动态存储带宽&#xff1a;工作时钟1000MHz&#xff0c;数据率2000Mbps板载6路QSFP光纤接口板载4个FMC高…

echarts 柱状图_堆叠柱状图_数据分区_常用图表配置_数据可视化

Echarts 常用各类图表模板配置 注意&#xff1a; 这里主要就是基于各类图表&#xff0c;更多的使用 Echarts 的各类配置项&#xff1b; 以下代码都可以复制到 Echarts 官网&#xff0c;直接预览&#xff1b; 图标模板目录 Echarts 常用各类图表模板配置一、数据分区显示二、折…

Redis入门篇 - CentOS 7下载、安装Redis实操演示

文章记录了在CentOS 7上&#xff0c;通过源码的形式,下载安装Redis的操作过程 进入要安装Redis的目录 cd /usr/local下载源码压缩包 wget https://download.redis.io/redis-stable.tar.gz # 不同版本可能地址不同下载完成后&#xff0c;使用ll命令检查&#xff0c;可以看到下载…

移动端视频编辑SDK,赋能开发者,共创未来视界

美摄科技&#xff0c;作为移动端视频编辑领域的佼佼者&#xff0c;再次突破技术边界&#xff0c;推出了全面升级的移动端视频编辑SDK解决方案&#xff0c;旨在为广大开发者及内容创作者提供一套强大而灵活的创意工具箱&#xff0c;让视频与图片编辑的每一个细节都焕发无限可能。…