Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify exposed MCP server endpoint
-
DeliverySubmit get-html-skeleton request with 169.254.169.254 URL
-
ExploitValidation accepts link-local address
-
ExecutionInternal browser actor fetches metadata endpoint
-
PersistIAM credentials returned in tool response
-
ImpactUse credentials to access cloud account
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Credential Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The get-html-skeleton tool must be loaded by the MCP server - it is included in default configurations and requires no special enablement flag. The attacker must be able to send MCP tool-call requests to the server, either by direct network access to the MCP endpoint or by controlling an LLM agent that uses the server. Cloud metadata credential theft specifically requires the server to run on a cloud VM (AWS, GCP, Azure) where 169.254.169.254 is reachable without egress restrictions; SSRF to other RFC 1918 hosts is exploitable in any network-adjacent deployment regardless of cloud provider. No authenticated session or elevated privilege is required per the CVSS 4.0 PR:N rating. The limiting factor is MCP server reachability - deployments restricted to localhost or trusted internal callers face lower practical exposure than publicly accessible endpoints. |
| Impact | The CVSS 4.0 vector AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N yielding 8.7 accurately reflects a no-authentication, no-complexity network exploit with high confidentiality impact. EPSS data is absent from available intelligence; no KEV listing and no POC code are confirmed. Despite the absence of public exploits, the real-world risk is material for cloud-hosted deployments: a single SSRF request to 169.254.169.254 can yield temporary IAM credentials enabling lateral movement into the cloud account - a high-impact, low-skill outcome. The attack surface is bounded by who can invoke MCP tool calls on the server; deployments fronted by authentication or restricted to trusted LLM agents face lower practical risk than publicly exposed endpoints. The fix is decisive - complete tool removal in 0.9.12 eliminates the surface entirely, so the primary risk signal for defenders is patch adoption on existing deployments. |
| Exploit ScenarioDerived | An attacker with access to an Apify MCP server running a pre-0.9.12 version calls the get-html-skeleton tool with the URL http://169.254.169.254/latest/meta-data/iam/security-credentials/ as the argument. The server's URL validator accepts the link-local address as syntactically valid, passes it to the internal browser actor, and returns the IAM role credential payload in the tool response. The attacker uses the harvested temporary AWS credentials to authenticate to the cloud account and escalate access. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 27, 2026
Server-Side Request Forgery in Apify actors-mcp-server allows any MCP caller to make the server fetch arbitrary internal URLs, including cloud instance metadata endpoints, exposing IAM credentials. The get-html-skeleton tool's URL validation in src/tools/common/get_html_skeleton.ts accepted any syntactically valid http/https URL without inspecting the destination hostname or resolved address, permitting requests to loopback, link-local, and RFC 1918 ranges. The CVSS 4.0 score of 8.7 with PR:N reflects unauthenticated exploitation; no public exploit is identified at time of analysis, and the issue is resolved in version 0.9.12 by removing the tool entirely.
RemediationAI
Upgrade to Apify actors-mcp-server version 0.9.12 or later, which removes the get-html-skeleton tool entirely as confirmed by PR #572 (https://github.com/apify/apify-mcp-server/pull/572) and advisory GHSA-m28f-9v8h-gg2f. For deployments that cannot immediately upgrade, exclude get-html-skeleton from the loaded tool set using the tools configuration parameter - for example, avoid specifying it in the tools query parameter when starting the server. As a defense-in-depth measure on cloud hosts, block outbound traffic to 169.254.169.254 at the network or host firewall level to prevent metadata endpoint access; note this does not block SSRF to other private-range hosts. Restricting which principals can invoke the MCP server (network ACLs, authentication middleware) reduces overall blast radius on unpatched instances but does not remediate the underlying flaw.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerable component is the get-html-skeleton tool within the Apify actors-mcp-server (CPE: cpe:2.3:a:apify:actors-mcp-server:*:*:*:*:*:*:*:*), a Model Context Protocol server that exposes web automation and scraping actors to LLM agents. CWE-918 (SSRF) identifies the root cause: the isValidHttpUrl utility in src/utils/generic.ts verified only that the caller-supplied string began with an http or https scheme and parsed as a URL - it did not inspect the hostname portion or the IP address it resolves to. As a result, private RFC 1918 addresses, loopback (127.0.0.1), and link-local addresses (169.254.0.0/16) all passed the check and were forwarded to the server's internal web-browser actor. The cloud provider instance metadata service at 169.254.169.254, accessible from any cloud VM by default, was therefore reachable, and the fetched document including IAM credentials was returned directly in the MCP tool response.
Know when Actors Mcp Server gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Network-accessible endpoint, no auth required (PR:N); impact is confidentiality-only via credential disclosure; no integrity or availability effect, scope unchanged.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
The get-html-skeleton tool fetched a URL the caller supplied after checking only its syntax. The handler in src/tools/common/get_html_skeleton.ts validated the url argument with isValidHttpUrl from src/utils/generic.ts, which confirmed the string began with an http or https scheme and parsed as a URL and inspected neither the host name nor the address it resolves to. Loopback, link-local and private ranges therefore passed, including the address cloud providers use to serve instance metadata. The unchecked URL was handed to the web-browser actor and the fetched document was returned in the tool response, so any caller of the MCP server could make it request an endpoint reachable only from the host and read the result, including instance credentials. Version 0.9.12 removes the tool.
Executive ViewAI
Apify actors-mcp-server versions prior to 0.9.12 contain a Server-Side Request Forgery vulnerability (CVSS 8.7) that allows unauthenticated attackers to access internal cloud metadata and extract IAM credentials. Organizations running this tool face immediate risk of credential compromise and unauthorized cloud access. Vendor patch 0.9.12 is available and must be deployed immediately.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
EUVD-2026-67148
GHSA-gghj-77w7-6r3h
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB