0xBlackash/CVE-2026-60004
GitHub: 0xBlackash/CVE-2026-60004
针对 Gitea diffpatch API 端点的严重远程代码执行漏洞(CVE-2026-60004)的概念验证与技术分析项目。
Stars: 0 | Forks: 0
# 🚨 CVE-2026-60004 - RCE
### Gitea 通过 `diffpatch` Git Hook 实现的严重远程代码执行
# 📖 概述
**CVE-2026-60004** 是一个影响 **Gitea** 的**严重远程代码执行 (RCE)** 漏洞。该缺陷存在于 `diffpatch` endpoint 的实现中,在应用补丁期间,特别构造的补丁可以滥用 Git 的 hook 机制。
成功利用该漏洞允许具有仓库写权限的已认证攻击者,以 Gitea 服务的权限在 Gitea 服务器上执行任意命令。
# 🔥 严重性
| 指标 | 值 |
|---------|------:|
| CVE | CVE-2026-60004 |
| 严重性 | 🔴 严重 |
| CVSS v3.1 | **9.8** |
| 攻击途径 | 网络 |
| 所需权限 | 低(仓库写访问权限) |
| 用户交互 | 无 |
| 影响 | 远程代码执行 |
# 🎯 受影响的产品
- Gitea **1.17**
- Gitea **1.18**
- Gitea **1.19**
- Gitea **1.20**
- Gitea **1.21**
- Gitea **1.22**
- Gitea **1.23**
- Gitea **1.24**
- Gitea **1.25**
- Gitea **1.26**
- Gitea **1.27.0**
# ✅ 已修复版本
```
Gitea 1.27.1
```
# ⚡ 漏洞摘要
该漏洞源于 **`POST /api/v1/repos/{owner}/{repo}/diffpatch`** endpoint。
恶意补丁可以在补丁处理期间创建的临时仓库中引入 **Git hook**。当 Git 随后执行仓库操作时,注入的 hook 会自动运行,从而导致在服务器上执行任意命令。
# 🛠 攻击要求
攻击者通常需要:
- 已认证的账户
- 创建或修改仓库的能力
- 该仓库的写权限
# 💥 潜在影响
成功利用该漏洞可能允许攻击者:
- 执行任意操作系统命令
- 完全控制 Gitea 服务器
- 访问私有仓库
- 窃取 SSH 密钥
- 获取 CI/CD 密钥
- 提取 API token
- 访问部署凭证
- 在内部基础设施中进行横向移动
# 🔍 利用流程
```
Attacker
│
▼
Craft malicious diff patch
│
▼
POST /api/v1/repos/.../diffpatch
│
▼
Git applies patch
│
▼
Malicious Git Hook installed
│
▼
Git executes hook
│
▼
Arbitrary Command Execution
```
# 📌 攻击面
```
Internet
│
▼
Authenticated User
│
▼
diffpatch API
│
▼
Temporary Git Repository
│
▼
Git Hook Execution
│
▼
Remote Code Execution
```
# 🛡 缓解措施
立即采取以下措施:
- 升级到 **Gitea 1.27.1** 或更高版本。
- 如果不必要,请禁用公开注册。
- 限制仓库创建。
- 限制仓库写权限。
- 监控异常的 `diffpatch` 请求。
- 审计 Git 仓库以检查是否存在未经授权的 hook。
- 如果怀疑遭到入侵,请轮换暴露的凭证。
# 🔎 入侵指标
调查人员应关注:
- 意外的 Git hook 文件
- 由 Gitea 衍生的可疑子进程
- 未知的 shell 执行
- 对 `/diffpatch` 的异常 API 调用
- 未经授权的仓库修改
- 意外的外部网络连接
# 📊 风险评估
| 类别 | 评级 |
|----------|---------|
| 可利用性 | 🔴 极高 |
| 影响 | 🔴 严重 |
| 复杂性 | 🟢 低 |
| 公开暴露程度 | 🟠 高 |
| 补丁可用性 | ✅ 是 |
# 📚 技术细节
| 属性 | 值 |
|----------|-------|
| CWE | 通过 Git Hook 进行的代码执行控制不当 |
| 组件 | `diffpatch` API |
| 利用方式 | 远程 |
| 认证 | 需要 |
| RCE | ✅ 是 |
| 公开 PoC | ✅ 可用 |
# 🚨 安全建议
✔ 立即升级。
✔ 监控 API 日志。
✔ 限制仓库权限。
✔ 禁用未使用的注册功能。
✔ 如果怀疑遭到入侵,请轮换密钥。
✔ 持续监控 Git hook 的完整性。
# 📜 免责声明
此仓库**仅用于教育、防御和研究目的**。
此处提供的信息旨在帮助安全专业人员了解、检测和缓解该漏洞。**未经明确授权**,请勿使用此信息攻击系统。
### Gitea 通过 `diffpatch` Git Hook 实现的严重远程代码执行
### ⚠️ 立即修补 —— 可从互联网访问的 Gitea 实例可能面临重大风险
⭐ 随时关注最新的安全公告并保持您的软件已修补。
标签:Cutter, Gitea, 安全漏洞, 编程工具, 网络安全研究, 远程代码执行