Kali挖掘PHP漏洞与后渗透技巧
时间:2026-01-26 20:36:44 127浏览 收藏
本篇文章给大家分享《Kali如何挖掘PHP漏洞及后渗透技巧》,覆盖了文章的常见基础知识,其实一个语言的全部知识点一篇文章是不可能说完的,但希望通过这些问题,让读者对自己的掌握程度有一定的认识(B 数),从而弥补自己的不足,更好的掌握它。
phpsploit 是基于 HTTP 的交互式后渗透通信框架,不能直接拿 shell,需先获得可控 PHP 执行入口(如 eval($_GET['x'])),再通过构造正确 payload endpoint 建立稳定会话。

phpsploit 是什么,能直接拿 shell 吗
phpsploit 不是自动漏洞利用工具,它本身不“挖洞”,也不扫描 PHP 服务是否存在 eval()、system() 或反序列化漏洞。它是一个轻量级的、基于 HTTP 的交互式后渗透通信框架,前提是——你已经通过其他方式(比如手动代码审计、sqlmap --os-shell、或已知 RCE payload)拿到了一个可控的 PHP 执行入口(例如 shell.php?cmd=ls 这类可执行命令的页面)。
它的核心作用是:把零散的、一次性的 PHP 命令调用,封装成稳定、带会话管理、支持插件和文件传输的交互式 shell 环境。
- 不能替代
gobuster或nikto扫目录、找phpinfo.php - 不能绕过
disable_functions—— 它只是帮你更方便地调用已有的可用函数 - 依赖目标服务器上能成功执行
base64_decode()和eval()(或assert()、create_function()等等)
怎么让 phpsploit 连上一个已有 PHP 执行点
关键不是“装 phpsploit”,而是构造好那个 payload endpoint。常见失败原因是 payload 格式不对或被 WAF 拦截。
假设你已确认 http://target.com/test.php 存在如下代码:
eval($_GET['x']);
那么你启动 phpsploit 的命令应该是:
./phpsploit -u "http://target.com/test.php?x="
-u后面必须是完整 URL,且参数名(这里是x)要和目标脚本里接收的变量名一致- 如果目标用的是
$_POST['cmd'],就得配合-X POST -d "cmd="参数,不能只靠-u - 若目标开了
open_basedir或禁了proc_open,shell插件会卡住,此时应先用run ls -la测试基础命令是否通 - 遇到 403/500 但手工 curl 能执行,大概率是 phpsploit 默认 User-Agent 被 WAF 拦了,加
--user-agent "Mozilla/5.0"试试
disable_functions 绕过失败时,phpsploit 还能做什么
当 system、exec、shell_exec 全被禁用,但 file_get_contents、scandir、readfile 还开着,phpsploit 依然有用——重点转向信息收集和横向移动准备。
- 用
run file_get_contents('/etc/passwd')读敏感文件(注意路径是否受限) - 用
run print_r(scandir('/var/www/html'))列目录,找备份文件、配置文件、数据库连接脚本 - 用
upload /local/config.php /var/www/html/config.php.bak备份原始配置,为后续改写铺路 - 如果
curl或file_put_contents可用,可通过download插件拉取远程恶意 payload 再eval,绕过本地上传限制
此时别硬刚 shell,优先导出数据库连接串、JWT 秘钥、API token —— 很多时候比弹 shell 更快见效。
为什么连上了却卡在 “Loading plugins…” 或 “No response”
这是最常被忽略的网络与环境细节问题。phpsploit 本质是发 HTTP 请求并解析响应体里的 base64 编码结果,任何破坏这个闭环的环节都会中断。
- 目标响应里不能有额外输出:比如
echo "debug";、print_r($GLOBALS)、甚至末尾多一个空格或换行,都会导致 base64 解码失败 - 确保目标 PHP 脚本以
die()或exit()结尾,避免输出 HTML 模板或 footer - 如果目标用了 gzip 压缩(
ob_start('ob_gzhandler')),phpsploit 默认不处理压缩响应,会解码失败 —— 此时需手动 patch 源码或换用未压缩的 endpoint - 某些 CDN(如 Cloudflare)会缓存 200 响应,导致你改了 payload 脚本但 phpsploit 仍收到旧响应,加时间戳参数绕过:
?x=...&t=171xxxx
真正卡住的时候,别急着换工具,先用 curl -v 抓原始请求/响应,看 body 是否干净、是否含不可见字符、是否被重定向 —— 这些细节比选什么 payload 更决定成败。
今天带大家了解了的相关知识,希望对你有所帮助;关于文章的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
165 收藏
-
126 收藏
-
487 收藏
-
308 收藏
-
221 收藏
-
307 收藏
-
261 收藏
-
157 收藏
-
168 收藏
-
291 收藏
-
483 收藏
-
390 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习