Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-60004-Gitea-RCE-PoC — 🫖 针对 Gitea CVE-2026-60004 的定向单目标 RCE 验证 PoC | Kitploit
工具/GitHubGitHub/infosec-db/cve-2026-60004-gitea-rce-poc
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试学习与教育
GitHubinfosec-db/cve-2026-60004-gitea-rce-poc

CVE-2026-60004-Gitea-RCE-PoC

🫖 针对 Gitea CVE-2026-60004 的定向单目标 RCE 验证 PoC

查看仓库
111小时15分前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

🫖 CVE-2026-60004 — Gitea RCE PoC

一个针对 Gitea diffpatch Git 钩子远程代码执行漏洞的直接、单目标验证工具。

Python 3.10+ License: MIT CVE

本仓库包含专注的 AfterDark 验证器:一个脚本、一个目标、一次运行。没有发现、侦察、验证或其他子命令。

⚠️ 法律与道德免责声明

本项目仅用于授权的安全测试、防御性验证、研究和教育。请仅在您拥有或已获得明确书面许可的系统上使用。

作者和贡献者不对滥用、损害、服务中断、数据丢失或法律后果负责。您有责任遵守适用的法律、合同、交战规则和披露要求。

这是一个活跃的 RCE 概念验证。它会创建账户、创建私有仓库、写入合同标记,并以 Gitea 操作系统用户身份执行命令。请谨慎对待。🛡️

🧠 漏洞摘要

CVE-2026-60004 影响 Gitea 的仓库 diffpatch 工作流。具有仓库写入权限的攻击者可以提交精心构造的补丁内容,从而安装并触发 Git 钩子,导致以 Gitea 服务账户身份执行命令。

项目详情
产品Gitea
受影响版本>= 1.17.0, < 1.27.1
已修复版本1.27.1
影响以 Gitea 操作系统用户身份远程执行命令
上游公告GHSA-rcr6-4jqh-j84m

Forgejo 及其他分支需要手动进行实现审查,不会自动视为受影响。

✨ 脚本功能

每次运行执行一个固定的工作流:

  1. 规范化一个确切的 HTTP 或 HTTPS 目标。
  2. 检查报告的 Gitea 版本,并阻止已知不受影响的版本。
  3. 要求操作员提供合同编号、用户名和密码。
  4. 拒绝复用已能通过认证的账户。
  5. 尝试仅注册所提供的测试账户。
  6. 创建一个唯一命名的私有仓库。
  7. 通过 diffpatch 安装并触发精心构造的 post-index-change 钩子。
  8. 默认写入合同标记并运行 id。
  9. 通过临时 Git 引用检索命令输出。
  10. 保存本地 JSON 证据和完整命令输出。

该工具仅接受单个目标。它没有目标列表、通配符、批量扫描或被动发现模式。

📦 要求

  • Python 3.10 或更高版本
  • PATH 中可用的 Git
  • 对所选目标的明确书面授权
  • 启用 Gitea 自助注册
  • 用于运行的全新一次性用户名和密码

该脚本仅使用 Python 标准库。无需 pip install。

🚀 安装

root@kitploit:~
git clone https://github.com/InfoSec-DB/CVE-2026-60004-Gitea-RCE-PoC.git
cd CVE-2026-60004-Gitea-RCE-PoC
python3 scanner.py --help

🧪 用法

root@kitploit:~
python3 scanner.py \
  --contract-number ENG-2026-001 \
  --username audit-eng-2026-001 \
  --password 'use-a-unique-disposable-password' \
  https://gitea.example

也提供短选项:

root@kitploit:~
python3 scanner.py \
  -c ENG-2026-001 \
  -u audit-eng-2026-001 \
  -p 'use-a-unique-disposable-password' \
  https://gitea.example

🚨 密码在命令行中提供,并显示在最终结果面板中。请仅使用唯一的一次性测试凭据。请注意,命令行参数可能会保留在 shell 历史记录中,或暂时对本地进程检查工具可见。

自定义授权命令

默认命令为 id。可以使用 --cmd 提供范围严格限定的自定义命令:

root@kitploit:~
python3 scanner.py \
  -c ENG-2026-001 \
  -u audit-eng-2026-001 \
  -p 'use-a-unique-disposable-password' \
  --cmd 'uname -a' \
  https://gitea.example

自定义命令故意没有超时。验证器会一直等待远程命令退出,因此除非交战规则明确要求,否则请避免交互式或长时间运行的命令。

输出位置

默认情况下,每次运行写入以下路径之下:

root@kitploit:~
afterdark-results/<contract>/<UTC timestamp>/

您可以选择不同的根目录或确切的运行目录:

root@kitploit:~
python3 scanner.py \
  -c ENG-2026-001 \
  -u audit-eng-2026-001 \
  -p 'use-a-unique-disposable-password' \
  --results-root ./engagement-evidence \
  https://gitea.example
root@kitploit:~
python3 scanner.py \
  -c ENG-2026-001 \
  -u audit-eng-2026-001 \
  -p 'use-a-unique-disposable-password' \
  --output-dir ./engagement-evidence/run-01 \
  https://gitea.example

🧾 证据

每次运行创建私有 0600 文件,并拒绝覆盖现有结果:

  • confirmation.json — 目标、版本结果、账户名称、时间戳、命令、返回代码和捕获的工件
  • confirmation.command-output.txt — 完整的远程命令输出

证据可能包含敏感的参与信息。请勿将其提交到 Git。附带的 .gitignore 排除了默认结果路径和常见证据文件名。

🧹 清理

验证器不会自动删除服务端工件。评估结束后,授权管理员应:

  • 删除所提供的一次性测试账户
  • 删除生成的私有 afterdark-* 仓库
  • 删除 /tmp/gitea-validation-<contract>/client.txt
  • 安全归档或删除本地证据
  • 将 Gitea 升级到 1.27.1 或更高版本
  • 如允许,执行最小化的修复复测

成功的结果证明以 Gitea 服务账户身份执行了命令。这本身并不证明 root 访问权限、持久化、横向移动或完全的主机沦陷。

🛡️ 内置边界

  • 直接执行,无操作子命令
  • 每次运行仅一个确切目标
  • 不支持通配符或目标文件
  • 与合同关联的 HTTP User-Agent 和文件系统标记
  • 在主动验证前进行版本门控
  • 强制操作员选择新账户凭据
  • 拒绝重复账户
  • 创建私有仓库
  • 默认命令限制为 id
  • 私有独占创建的证据文件
  • 从捕获的子进程输出中删除密码
  • 默认验证路径的 180 秒超时

✅ 本地测试

测试在不发起网络请求的情况下演练解析和 PoC 构造:

root@kitploit:~
python3 -m unittest discover -s tests -v

🤝 负责任贡献

欢迎使验证器更安全、更可靠或更易于清理的改进。请勿提交真实目标详情、凭据、私有证据或破坏性载荷。

有关本工具漏洞的信息,请遵循 SECURITY.md。

📚 参考与致谢

  • 官方 Gitea 公告:GHSA-rcr6-4jqh-j84m
  • Gitea 发布
  • 上游公告致谢的 CVE 报告者:NightRang3r
  • 验证器由 AfterDark 安全研究小组维护

为谨慎、受合同约束的安全验证而构建。🫖🛡️

下载工具