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

CTFHub Web进阶-PHP:Bypass_disable_function通关4之PHP-FPM - 实践

目录

一、PHP-FPM绕过

1、 PHP-FPM 绕过核心原理

2、使用蚁剑进行PHP-FPM绕过

二、渗透实战

1、开启题目

2、打开靶场

3、源码分析

4、蚁剑直接连接

5、虚拟终端

6、蚁剑程序-disable function

(1)disable function插件

(2)连接新木马

(3)新木马-文件系统

(4)新木马-虚拟终端-获取flag


本文详细讲解CTFHub的Web进阶中disable-functions的PHP-FPM关卡的渗透全流程。通过分析PHP-FPM绕过原理(利用FastCGI协议直接通信),展示如何使用蚁剑工具连接Webshell并加载Bypass插件,最终成功执行系统命令获取flag。实战部分包括靶场环境搭建、源码分析、蚁剑连接、虚拟终端操作等全流程,重点演示了利用生成代理脚本绕过disable_function限制的技术方案。

一、PHP-FPM绕过

1、PHP-FPM 绕过核心原理

PHP-FPM绕过手法的核心在于与PHP-FPM服务直接通信,从而绕过PHP层面的限制。其基本原理能够概括为以下几步:

  • 利用条件:首先,你得有一个Webshell,并且服务器环境是Nginx+PHP-FPMApache+PHP-FPM。PHP-FPM通常会监听一个端口(如9000)或一个Unix Socket文件(如/var/run/php/php7.2-fpm.sock)。

  • 通信协议:PHP-FPM采用FastCGI协议进行通信。凭借向PHP-FPM监听的目标发送精心构造的FastCGI协议数据包,我们许可直接与其交互。

  • 执行任意PHP代码:在FastCGI协议中,可以通过设置某些参数(如PHP_VALUEPHP_ADMIN_VALUE)来动态修改PHP配置。攻击者可以借此开启auto_prepend_file等选项,或者直接传递PHP代码让其执行,从而突破disable_functions的限制

2、使用蚁剑进行PHP-FPM绕过

蚁剑(AntSword)是一款强大的Webshell管理工具,它集成了多种Bypass disable_function的插件,具体步骤如下所示:

  • 连接Webshell:使用蚁剑成功连接到你的Webshell。

  • 选择Bypass插件

    • 在蚁剑中,找到并加载"Bypass Disable Functions"相关插件。根据你的环境,选择Fastcgi/PHP-FPM 模式。

    • 插件通常会要求你填写PHP-FPM的通信地址:就是。这可以

      • TCP地址:例如 127.0.0.1:9000 (如果PHP-FPM监听端口)

      • Unix Socket地址:例如 unix:///var/run/php/php7.2-fpm.sock (你需要知道socket文件的准确路径,可以通过查看PHP配置文件或phpinfo()信息获取)

  • 生成代理脚本:配置好地址后,插件会在服务器上生成一个特殊的代理脚本(例如.antproxy.php)。 这个脚本的作用是将你的请求通过FastCGI协议转发给PHP-FPM服务

  • 切换连接:使用蚁剑重新连接这个新生成的代理脚本的URL。

  • 执行命令通过:连接成功后,你就能够通过这个代理在蚁剑的虚拟终端中正常执行系统命令了,例如 tac /flag

二、PHP-FPM关卡渗透实战

1、开启题目

打开靶场关卡,页面提示“正常情况下, PHP-FPM是不会对外开放的。在有webshell之后,这就变得不一样了。学习通过攻击PHP-FPM达到Bypass的目的”,如下所示。

2、打开靶场

http://challenge-20f79b9735a3d332.sandbox.ctfhub.com:10800/

3、源码分析

这段CTF题目源码通过eval($_REQUEST['ant'])提供远程代码执行入口,但关键系统函数已被禁用。题目要求攻击PHP-FPMFastCGI进程管理器)来绕过限制。攻击原理是利用PHP-FPM的未授权访问风险,通过构造特殊的FastCGI协议数据包,直接与PHP-FPM9000端口通信。当服务器采用FPM/FastCGI模式运行PHP时,攻击者可以伪造请求修改PHP配置,将任意文件扩展名解析为PHP,或直接执行PHP代码。此种技巧不依赖系统命令函数,而是通过网络协议层面的攻击实现代码执行,有效突破disable_function的限制。

http://challenge-20f79b9735a3d332.sandbox.ctfhub.com:10800/

CTFHub Bypass disable_function—— 攻击PHP-FPM

本环境来源于AntSword-Labs

<!DOCTYPE html>
<html>
<head>
<title>CTFHub Bypass disable_function —— 攻击PHP-FPM</title>
</head>
<body>
<h1>CTFHub Bypass disable_function —— 攻击PHP-FPM</h1>
<p>本环境来源于<a href="https://github.com/AntSwordProject/AntSword-Labs">AntSword-Labs</a></p>
</body>
</html>
<?php
@eval($_REQUEST['ant']);
show_source(__FILE__);
?>

很明显php代码是一个高危的Webshell后门,允许攻击者通过ant参数远程执行任意PHP代码,完全控制Web服务器,可进行文件操作、命令执行、数据库访问等恶意行为,严重威胁服务器安全。

  • @操作符:抑制错误显示,增强隐蔽性

  • $_REQUEST['ant']:接收GET或POST参数中的ant参数

  • eval():将字符串作为PHP代码执行,构成任意代码执行安全风险

4、蚁剑直接连接

http://challenge-20f79b9735a3d332.sandbox.ctfhub.com:10800/ 密码ant

5、虚拟终端

通过“选中木马的会话-右键-虚拟终端”进入在木马的虚拟终端窗口,如下所示。

如下所示,命令执行失败。

6、蚁剑器具-disable function

(1)disable function插件

大家通过蚁剑工具的disable function插件绕过服务器的限制,具体操作步骤如下所示。

插件选择Fastcgi/PHP-FPM模式,具体如下所示。

点击后进入如下界面。

FPM/FCGI 地址 localhost:9000,通讯地址我们选择本地的 (相当于他服务器的本地),然后点击开始如下所示。

此时进入根目录,目录中多了.antproxy.php文件,如下所示。

(2)连接新木马

http://challenge-7e5a3b55b4ffb061.sandbox.ctfhub.com:10800/.antproxy.php

密码ant

添加后如下所示。

(3)新木马-文件系统

通过“选中新木马的会话-右键-文件系统”进入在新木马的文件系统窗口,如下所示。

查看根目录,发现/readflag和/flag文件,如下所示。

查看/readflag文件,具体如下所示。

(4)新木马-虚拟终端-获取flag

在新弹木马的虚拟终端窗口,首先大家尝试执行ls命令,如下所示成功返回当前目录结构。

在新木马的虚拟终端中输入ls /、cat /readflag和tac /flag命令成功获取到flag,如下所示。

http://www.jsqmd.com/news/316224/

相关文章:

  • 每日面试题分享164:HTTP与RPC之间的区别?
  • 杰理之使用新版本的plate reverb音效修改方法【篇】
  • 2026年上海丙烯酸酯无硫加臭剂公司权威推荐:精准加臭全站式/安全精准环保加臭全站/气相色谱加臭浓度检测公司精选
  • 测试驱动开发实战:用 Claude 高效编写单元测试与集成测试用例
  • 2026年比较好的高速震动盘/无损震动盘厂家最新用户好评榜
  • 讲讲南方网通GEO加盟,如何选择靠谱合作模式
  • Claude开发进阶 04,Claude 一键生成技术文档:解放开发者的“文档枷锁”
  • 2026年上海婚介公司价格对比,资质齐全的婚介专业公司多少钱
  • 2026年海南地区一站式服务公司盘点,海南睿臻领航靠不靠谱
  • 分析2026年主流风口行业,专业GEO - AI全链路增长服务公司Top10
  • 盘点青虾仁厂家排名,靠谱品牌为你揭晓
  • 盘点招牌大颗粒虾滑供应商,这些品牌值得关注
  • 总结工业液晶屏性价比高的厂商,旭虹科技靠谱吗?
  • 2026年食品级涂料店靠谱推荐,为健康家装保驾护航
  • 嘉立创EDA:自动升级软件下载下来的安装包存放在什么地方
  • 2025年国内比较好的库房货架制造商排名,层板货架/中型货架/隔板货架/仓储货架/重型货架,库房货架制造企业怎么选
  • 删除金仓数据库KingbaseES中的审计记录
  • 2026年知名的无磁弹簧/高压直流继电器弹簧厂家最新权威实力榜
  • 基于Java+Springboot+Vue开发的民宿酒店客房预订管理系统源码+运行步骤+计算机技术
  • 2026.01.29
  • CG-09H超声波风速风向传感器:准确测风,稳定可靠
  • 车机系统触控界面自动化测试实践
  • ubuntu安装SELinux
  • 上海隧道炉供应商有哪些?五家实力企业及设备特点解析
  • 2026年知名的纤维缠绕自润滑轴承/重载型自润滑轴承优质厂家推荐榜单
  • 区块链技术核心指标对比
  • 复杂拖拽交互场景的自动化实现与测试验证策略
  • SAP ABAP 内表全面详解
  • 视频播放器控件全功能测试方案
  • 智慧校园专项资金申报政策解读:重点支持领域的全面解析