kali怎么挖php漏洞_借助skipfish爬php站找逻辑漏洞【技巧】
技术百科
雪夜
发布时间:2026-01-28
浏览: 次 skipfish无法挖掘PHP逻辑漏洞,仅能发现phpinfo泄露、备份文件、可列目录、HTTP头敏感信息及基础反射型XSS等静态问题,因其无会话保持、不解析JS、不支持请求链、缺乏状态机建模能力。
skipfish 不能直接挖 PHP 逻辑漏洞,它只是个被动式 Web 应用扫描器,只做目录枚举、文件泄露、常见配置错误和基础 SQLi/XSS 模板匹配——不理解业务流程,也不执行任何业务逻辑判断。
skipfish 实际能发现的 PHP 相关问题
skipfish 对 PHP 站点的作用非常有限,主要集中在静态暴露面:
-
phpinfo()页面泄露(路径如/info.php、/test.php) - 备份文件:如
index.php.bak、config.php~、.git/泄露 - 可列目录(
Directory listing enabled)导致源码或日志暴露 - HTTP 头泄露敏感信息(
X-Powered-By: PHP/7.4.33+ 已知 CVE 版本组合) - 基础反射型 XSS 检测(靠预设 payload 匹配响应体,误报高、绕过容易)
为什么 skipfish 扫不出逻辑漏洞
逻辑漏洞(如越权访问、支付金额篡改、状态机跳过、密码重置 token 重放)依赖对业务流程的理解和交互式验证。skipfish:
- 不记录会话上下文(不会保持
PHPSESSID并按顺序发请求) - 不解析 JavaScript,无法触发前端控制的逻辑分支
- 不支持自定义请求链(比如“注册→登录→提交订单→修改订单状态”这种序列)
- 所有检测基于单次请求-响应比对,没有状态机建模能力
真要挖 PHP 逻辑漏洞,该换什么工具+怎么配合
skipfish 可以当第一层“资产清点”工具,但后续必须人工介入 + 其他工具辅助:
立即学习“PHP免费学习笔记(深入)”;
- 用
gau或waybackurls拉历史 URL,重点关注含?id=、&action=、api/的 PHP 路径 - 用
curl -I或httpx快速检查Server、X-Powered-By、Set-Cookie头,确认是否为 PHP 站及版本 - 手动抓包重放关键请求(推荐
Burp Suite或mitmproxy),重点改Cookie、Referer、POST参数、JSON字段值 - 搜索 PHP 特有危险函数调用痕迹:在响应中搜
eval(、system(、passthru(、$_GET[、$_REQUEST[(需先拿到源码或备份)
skipfish 输出的报告里如果出现大量 403

401 的 PHP 路径,别急着跳过——这些往往是未鉴权的管理接口或调试入口,得人工点开看返回内容。逻辑漏洞从来不在扫描器报告里,而在你盯着 Burp 的 Repeater 多改了三次参数之后。
# 工具
# js
# json
# curl
# javascript
# java
# git
# 前端
# php
# proxy
# xss
# cookie
# 密码重置
# httpx
相关栏目:
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
AI推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
SEO优化<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
技术百科<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
谷歌推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
百度推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
网络营销<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
案例网站<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
精选文章<?muma echo $count; ?>
】
相关推荐
- Win11怎么设置任务栏对齐方式_Windows1
- Avalonia如何实现跨窗口通信 Avaloni
- 如何在Mac上搭建Golang开发环境_使用Hom
- c++如何实现多态性_c++ 虚函数表原理与动态绑
- Win11怎么退出微软账户_切换Win11为本地账
- Win10如何卸载自带Edge_Win10彻底卸载
- 如何使用Golang安装依赖库_管理模块和第三方包
- Windows服务无法启动错误1067是什么_进程
- Windows执行文件被SmartScreen拦截
- C++如何解析JSON数据?(nlohmann/j
- Win11如何关闭游戏模式 Win11禁用Xbox
- 如何使用Golang安装API文档生成工具_快速生
- Win11怎么连接蓝牙耳机_Win11蓝牙设备配对
- c# Task.ConfigureAwait(tr
- Win11如何隐藏桌面图标 Win11一键隐藏/显
- Win11玩游戏全屏闪退怎么办_Win11全屏优化
- Win10怎么创建桌面快捷方式 Win10为应用创
- Win11怎么打开旧版计算器_Win11恢复传统计
- MAC怎么一键隐藏桌面所有图标_MAC极简模式切换
- 如何在 Go 同包不同文件中正确引用结构体
- Windows 11怎么设置默认解压软件_Wind
- Laravel 查询 JSON 列:高效筛选包含数
- php485返回数据不完整怎么办_php485数据
- Windows10电脑怎么设置防火墙出站规则_Wi
- PythonGIL机制理解_多线程限制解析【教程】
- Win11怎么关闭搜索历史_Win11清除设备上的
- Windows怎样关闭锁屏广告_Windows关闭
- 如何使用Golang构建基础消息队列模拟_Gola
- 如何使用Golang sync.Map实现并发安全
- Win11怎么恢复旧版开始菜单_通过软件还原Win
- C++中的协变与逆变是什么?C++函数指针与返回类
- c++怎么使用std::filesystem遍历文
- 如何在Golang中写入XML文件_生成符合规范的
- 如何提升Golang程序I/O性能_Golang
- Windows10电脑怎么设置自动连接WiFi_W
- Mac如何调整Dock栏大小和位置_Mac程序坞个
- 如何在Golang中捕获HTTP服务器错误_Gol
- Win11怎么设置任务栏图标大小_Windows1
- 如何在 Go 中正确反序列化多个同级 XML 元素
- Win10如何更改电脑休眠时间_Windows10
- Win11怎么清理C盘系统错误报告_Win11清理
- Win11怎么解压RAR文件 Win11自带解压功
- 如何在Golang中实现并发消息队列消费者_Gol
- PHP的FastAdmin架构适合二次开发吗_特点
- 如何使用Golang匿名函数_快速定义临时函数逻辑
- Python数据挖掘核心算法实践_聚类分类与特征工
- 如何使用Golang实现负载均衡_分发请求到多个服
- PHP主流架构如何做单元测试_工具与流程【详解】
- Win11如何设置开机问候语 Win11修改登录界
- php修改数据怎么批量改状态_批量更新status

QQ客服