文件包含之——phar伪协议

这篇具有很好参考价值的文章主要介绍了文件包含之——phar伪协议。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、文件包含漏洞原理解析

因为PHP语言所提供的文件包含功能包含功能太强大,太灵活,所以大部分文件包含的漏洞都出现在PHP的程序中
当被包含的文件在服务器本地时,就形成的本地文件包含漏洞
当包含的文件在远程服务器时,就形成远程文件包含漏洞
文件包含这个点在php中涉及是个函数
require()
require_once()
include()
include_once()
其设计初衷是方便程序员通过调用其他页面的函数所以include这个文件。就可以将这个文件解析到b页面

二、文件包漏洞中常用的伪协议

php://输入输出流
PHP提供了一些杂项输出流,允许访问PHP的输入输出流。标准输入输出和错误描述,内存中。磁盘备份的临时文件流以及可以操作其他读取写入文件资源的过滤器。
php://filter(本都磁盘文件进行读取)
用法:>filter=php://filter/cinvert.base64-encode/recource=xxx.php
条件:只是读取开始allow_url_fopen,不需要开始allow_url_include;

phar://伪协议
这个就是php解压缩报的一个函数,不管后缀是什么,都会当做压缩包来解压,用法:?file=phar://压缩包/内部文件 phar://xxx.png/shell.php 注意 PHP>=5.3.0压缩包需要是zip协议压缩,rar不行,将木马文件压缩后,改为其他任意格式的文件都可以正常使用。步骤:写一个一句话木马shell。php,然后用zip协议解压缩为shell.zip。然后将后缀改为png等其他格式文章来源地址https://www.toymoban.com/news/detail-471727.html

找个靶场练一下

文件包含之——phar伪协议
这里我们直接看看他tips访问include.php
文件包含之——phar伪协议
关键点看源码正则匹配到上面关键字(preg_match(‘/http|test1|ftp|input|%00/i’, f i l e ) ∣ ∣ s t r s t r ( file) || strstr( file)strstr(file,“…”) !== FALSE || strlen($file)>=70) 其中一条都返回error
而且我们发现file参数可控但是有一点就是无论后面传参后面都会给你拼接一个.php

直接访问新资产upload.php显然想让我们先传马
文件包含之——phar伪协议尝试尝试上传一个一句话木马,思路:
1,写一个一句话木马1.php
2 把一句话木马压缩成1.zip
3.把压缩包后缀改名为1.jpg发现上传成功。
文件包含之——phar伪协议
再结合上面介绍的phar://伪协议进行解压木马
文件包含之——phar伪协议
木马成功被解析链接放到蚁剑中成功过getshell(ps:注意因为链接后面会给你强制拼接一个.php后缀所以后面就不用加后缀了)

总结

phar://伪协议
这个就是php解压缩报的一个函数,不管后缀是什么,都会当做压缩包来解压,用法:?file=phar://压缩包/内部文件 phar://xxx.png/shell.php 注意 PHP>=5.3.0压缩包需要是zip协议压缩,rar不行,将木马文件压缩后,改为其他任意格式的文件都可以正常使用。步骤:写一个一句话木马shell。php,然后用zip协议解压缩为shell.zip。然后将后缀改为png等其他格式

到了这里,关于文件包含之——phar伪协议的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络安全-kkFileViews任意文件读取漏洞原理解析

    在学习的过程中,了解到kkFileView存在任意文件读取、SSRF、文件上传漏洞。 为了更深刻的理解其原理,我从git拉取了项目,由于该漏洞在最新版本已经修复,所以这只是历史版本中存在的。 写这篇文章来提醒自己代码中容易出问题的地方。 来到kkFileView官网,发现支持Gitee,

    2024年04月11日
    浏览(12)
  • 【文件包含漏洞-03】文件包含漏洞的利用及如何利用本地文件包含漏洞GetShell

    我们可以利用文件包含漏洞读取任意文件,读取文件的时候有利用条件 目标主机文件存在(目标文件的路径、绝对路径、相对路径) 具有文件可读权限 提交参数 http://localhost/include/include.php?path=C:windowssystem32driversetchosts ,读取本地host文件 提交参数 http://localhost/include/includ

    2024年02月11日
    浏览(20)
  • php伪协议之phar

    用于将多个 PHP 文件、类、库、资源(如图像、样式表)等打包成一个单独的文件。这个归档文件可以像其他 PHP 文件一样被包含(include)或执行。PHAR 归档提供了一种方便的方式来分发和安装 PHP 应用程序和库,尤其是当它们包含许多文件和目录时 将一句话木马(shell.php)压

    2024年02月20日
    浏览(7)
  • 文件包含漏洞及漏洞复现

    程序开发人员通常会把可重复使用函数或语句写到单个文件中,形成“封装”。在使用某个功能的时候,直接调用此文件,无需再次编写,提高代码重用性,减少代码量。这种调用文件的过程通常称为包含。 程序开发人员都希望代码更加灵活,所以会把被包含的文件的路径设

    2024年02月10日
    浏览(17)
  • pearcmd文件包含漏洞

    pecl是PHP中用于管理扩展而使用的命令行工具,而pear是pecl依赖的类库。在7.3及以前,pecl/pear是默认安装的;在7.4及以后,需要我们在编译PHP的时候指定 --with-pear 才会安装 不过,在Docker任意版本镜像中,pcel/pear都会被默认安装,安装的路径在 /usr/local/lib/php 原本pear/pcel是一个命

    2024年01月21日
    浏览(10)
  • 文件包含漏洞全面详解

    1.文件包含漏洞概述 和SQL注入等攻击方式一样,文件包含漏洞也是一种注入型漏洞,其本质就是输入一段用户能够控制的脚本或者代码,并让服务端执行。 什么叫包含呢?以PHP为例,我们常常把可重复使用的函数写入到单个文件中,在使用该函数时,直接调用此文件,而无需

    2024年02月02日
    浏览(12)
  • 文件包含漏洞利用思路

    通过 PHP 函数引入文件时,传入的文件名没有经过合理的验证,从而操作了预想之外的文件,导致意外的文件泄漏甚至恶意代码注入。 php中常见的文件包含函数有以下四种: include() require() include_once() require_once() include与require基本是相同的,除了错误处理方面: include(),只生成

    2024年02月16日
    浏览(17)
  • 【web安全】文件包含漏洞

    目录 1.什么是文件包含漏洞 2.产生原因 3.文件包含的类型 3.1本地文件包含 3.2远程文件包含 4.攻击利用手法 4.1 file:协议 4.2 php://协议 ​4.3 zip://,bzip2://,zlib://协议  4.4 data://协议 4.5 PHP伪协议总结  5.如何防御? 6.常见系统的默认路径 7.文件包含漏洞的奇技淫巧 LFI+日志文件gets

    2024年02月07日
    浏览(13)
  • DVWA之文件包含漏洞

    1、什么是文件包含 程序开发人员一般会把重复使用的函数写到单个文件中,需要使用某个函数时直接调用此文件,而无需再次编写,这中文件调用的过程一般被称为文件包含。 2、文件包含漏洞 程序开发人员一般希望代码更灵活,所以将被包含的文件设置为变量,用来进行

    2024年02月04日
    浏览(12)
  • 文件包含漏洞学习笔记

    相同内容或方法在多个页面显示或调用,文件包含漏洞又称为目录遍历漏洞或任意文件访问漏洞。分为本地文件包含(LFI:Local File Inclusion),远程文件包含(RFI:Remote File  Inclusion),也可分为静态文件包含,动态文件包含。 页面中直接引用静态文件。 main.php内容如下:

    2023年04月08日
    浏览(11)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包