Skip to main content

APIFold CVE-2026-47769

| EUVDEUVD-2026-48338 MEDIUM
Missing Authentication for Critical Function (CWE-306)
2026-07-23 GitHub_M
5.3
CVSS 3.1 · Vendor: GitHub_M
Share

Severity by source

Vendor (GitHub_M) PRIMARY
5.3 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
vuln.today AI
5.3 MEDIUM

Network-accessible endpoint with no auth or interaction required; scope unchanged as impact is confined to the webhook datastore within the same system boundary.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
Low
Availability
None

Lifecycle Timeline

3
Patch available
Jul 23, 2026 - 19:03 EUVD
Source Code Evidence Fetched
Jul 23, 2026 - 18:24 vuln.today
Analysis Generated
Jul 23, 2026 - 18:24 vuln.today

DescriptionCVE.org

APIFold reads an OpenAPI 3.x or Swagger 2.x specification and generates a live, production-ready MCP server endpoint. Prior to commit 7f19b52280f414f57af2b79a95333d1c8fbeece5, the /webhooks/:serverSlug/:eventName endpoint accepts arbitrary unauthenticated JSON and stores it in Redis and the webhook_events PostgreSQL table without any signature check or authentication requirement. The root cause is that createWebhookRouter is called at server.ts:188 without a validators map, so receivers.ts:80's optional-chaining guard evaluates to undefined and the signature-validation block (receiver.ts:81-95) is unconditionally skipped. Any unauthenticated network client that knows a valid server slug can inject arbitrary payloads, which are subsequently served as trusted resource state to legitimate MCP clients. Commit 7f19b52280f414f57af2b79a95333d1c8fbeece5 patches the issue.

AnalysisAI

Unauthenticated webhook injection in APIFold corrupts trusted MCP server state by allowing any network client to POST arbitrary JSON payloads to the /webhooks/:serverSlug/:eventName endpoint, which are stored in Redis and the webhook_events PostgreSQL table without any signature check. All deployments prior to commit 7f19b52280f414f57af2b79a95333d1c8fbeece5 are affected; the flaw is architectural rather than misconfiguration-dependent, as signature validation was never wired into the webhook router. No public exploit code has been identified at time of analysis and CISA KEV listing is absent, but the attack requires only a valid server slug, making exploitation straightforward for targeted actors.

Technical ContextAI

APIFold is a Node.js runtime that converts OpenAPI 3.x or Swagger 2.x specifications into live MCP (Model Context Protocol) server endpoints. The root cause is CWE-306 (Missing Authentication for Critical Function): createWebhookRouter is invoked at server.ts:188 without a validators map argument. The optional-chaining guard at receivers.ts:80 consequently evaluates to undefined, causing the HMAC signature validation block at receiver.ts:81-95 to be unconditionally skipped on every incoming webhook request. The affected CPE is cpe:2.3:a:work90210:apifold:*:*:*:*:*:*:*:* (all versions before the patch commit). The fix introduced in PR #235 adds GenericHmacValidator using HMAC-SHA256 keyed to a per-server encryptedWebhookSecret, passes a populated webhookValidators Map to createWebhookRouter, and enforces the x-webhook-signature header on all inbound webhook requests, as confirmed by the integration test changes in streamable-http.test.ts.

RemediationAI

Update to or beyond commit 7f19b52280f414f57af2b79a95333d1c8fbeece5 (PR #235: https://github.com/Work90210/APIFold/pull/235). After applying the patch, configure each server record with a webhookProvider and a strong encryptedWebhookSecret; the runtime will then enforce HMAC-SHA256 signature verification on all inbound webhook requests via the x-webhook-signature header. If immediate patching is not feasible, place a reverse proxy or WAF rule in front of all /webhooks/ paths that rejects requests lacking a valid HMAC signature - be aware this requires the proxy to share the webhook secret and adds operational complexity. Alternatively, restrict network access to the /webhooks/:serverSlug/:eventName endpoints to known source IP ranges of legitimate webhook providers; note this control is bypassable if the attacker can reach the endpoint from an allowlisted network. No versioned release artifact has been confirmed as of this analysis - operators should track the upstream repository for a tagged release.

More in Redis

View all
CVE-2026-48172 CRITICAL POC
10.0 May 21

Privilege escalation to root in the LiteSpeed User-End cPanel Plugin (versions 2.3 through before 2.4.5) lets attackers

CVE-2025-49844 CRITICAL POC
9.9 Oct 03

UAF in Redis 8.2.1 via crafted Lua scripts by authenticated users. EPSS 12.4%. Patch available.

CVE-2022-0543 CRITICAL POC
10.0 Feb 18

It was discovered, that redis, a persistent key-value database, due to a packaging issue, is prone to a (Debian-specific

CVE-2018-11218 CRITICAL POC
9.8 Jun 17

Memory Corruption was discovered in the cmsgpack library in the Lua subsystem in Redis before 3.2.12, 4.x before 4.0.10,

CVE-2025-46817 HIGH POC
7.0 Oct 03

Redis is an open source, in-memory database that persists on disk. Versions 8.2.1 and below allow an authenticated user

CVE-2015-4335 CRITICAL POC
10.0 Jun 09

Redis before 2.8.21 and 3.x before 3.0.2 allows remote attackers to execute arbitrary Lua bytecode via the eval command.

CVE-2016-8339 CRITICAL POC
9.8 Oct 28

A buffer overflow in Redis 3.2.x prior to 3.2.4 causes arbitrary code execution when a crafted command is sent. Rated cr

CVE-2026-27574 CRITICAL POC
9.9 Feb 21

Code injection in OneUptime monitoring via custom JS monitor using vm module. PoC and patch available.

CVE-2021-31649 CRITICAL POC
9.8 Jun 24

In applications using jfinal 4.9.08 and below, there is a deserialization vulnerability when using redis,may be vulnerab

CVE-2020-11981 CRITICAL POC
9.8 Jul 17

An issue was found in Apache Airflow versions 1.10.10 and below. Rated critical severity (CVSS 9.8), this vulnerability

CVE-2018-11219 CRITICAL POC
9.8 Jun 17

An Integer Overflow issue was discovered in the struct library in the Lua subsystem in Redis before 3.2.12, 4.x before 4

CVE-2024-23998 CRITICAL POC
9.6 Jul 05

goanother Another Redis Desktop Manager =<1.6.1 is vulnerable to Cross Site Scripting (XSS) via src/components/Setting.v

Share

CVE-2026-47769 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy