Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-102649— Burrito: Unauthenticated webhooks trigger unauthorized Terraform plans when webhookSecret is unset

Quick assessment

Affected
padok-team burrito
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Burrito 是一款用于 Terraform 自动化协作(TACoS)的 Kubernetes 控制器。在 0.13.0 版本之前, 接口在 的凭据中省略 或将其设置为空值时(包括为 Git 身份验证和轮询配置的凭据),会接受未签名的 GitHub 和 GitLab 事件。由于 是可选字段,且 库在密钥为空时会跳过签名或令牌验证,因此任何能够访问 端点并知晓受跟踪仓库 URL 的攻击者,均可伪造事件来创建或删除 自定义资源,并指定攻击者选择的 、 和 字段。 针对 GitHub 的 事件,控制器会使用真实的拉取请

CVSS 9.9 · Critical
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-102649

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Burrito: Unauthenticated webhooks trigger unauthorized Terraform plans when webhookSecret is unset
Source: CVE Program / CVE List V5
Vulnerability Description
Burrito is a Terraform Automation Collaboration Software (TACoS) Kubernetes operator. Prior to 0.13.0, `POST /api/webhook` accepts unsigned GitHub and GitLab events when a `TerraformRepository`'s credentials omit `webhookSecret` or set it to an empty value, including credentials configured for git authentication and polling. `Credential.WebhookSecret` is optional, and `go-playground/webhooks` skips signature or token verification when the secret is empty. Anyone who can reach `burrito-server`'s endpoint and knows a tracked repository's URL can forge events to create or delete `TerraformPullRequest` custom resources with attacker-chosen `Branch`, `Base`, and `ID` fields. For GitHub `pull_request` events, the controller fetches changed files using the real pull request number but does not cross-check the payload's branch against that pull request. Pairing a real, existing pull request number with an unrelated existing branch in the same repository can therefore cause an unauthorized `terraform plan` for affected layers using the operator's stored git and cloud credentials. Code analysis also indicates that the resulting plan can be posted to the real pull request's comment thread, exposing and misattributing another branch's infrastructure changes. Auto-apply is disabled for these temporary layers, so this vulnerability alone cannot force a `terraform apply`; plan-time provider and data-source code execution depends on the selected branch's contents. This issue is fixed in version 0.13.0.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
关键功能的认证机制缺失
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
padok-team burrito < 0.13.0 -

II. Public POCs for CVE-2026-102649

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-102649

请登录查看更多情报信息。

Vendor Pages for CVE-2026-102649 (1)

IV. Related Vulnerabilities