🔍 CVE-2026-47769

5.3
CVSS Score
MEDIUM
2026-07-23
2026-10-24 13:10
✅ 완료

🇰🇷 한글 설명

APIFold의 특정 버전에서 `/webhooks/:serverSlug/:eventName` 엔드포인트가 인증 및 서명 검증 없이 임의의 JSON 데이터를 수락하는 취약점이 발견되었습니다. 이로 인해 공격자가 Redis와 PostgreSQL에 조작된 데이터를 주입하여 MCP 클라이언트에 신뢰할 수 없는 리소스 상태를 전달할 수 있습니다. 해당 문제는 커밋 7f19b52280f414f57af2b79a95333d1c8fbeece5에서 수정되었습니다.

💡 쉬운 설명

인증 절차 없이 누구나 가짜 데이터를 서버에 보낼 수 있는 보안 구멍이 있습니다. 공격자가 이 구멍을 통해 가짜 정보를 입력하면, 사용자는 이를 진짜 정보로 착각하게 됩니다.

🇺🇸 원문 (English)

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.

📍 영향받는 시스템

APIFold (commit 7f19b52280f414f57af2b79a95333d1c8fbeece5 이전 버전)

⚔️ 공격 벡터

인증되지 않은 네트워크 클라이언트가 유효한 serverSlug를 사용하여 조작된 JSON 페이로드를 웹훅 엔드포인트로 전송

🛡️ 대응 방법

APIFold를 커밋 7f19b52280f414f57af2b79a95333d1c8fbeece5 이상 버전으로 업데이트하여 validators 맵을 적용하십시오.

🔧 검증 코드

출력된 커밋 해시가 7f19b52280f414f57af2b79a95333d1c8fbeece5와 같거나 그 이후인지 확인하십시오.

Shell / Script
git rev-parse HEAD

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N

💻 영향받는 소프트웨어

PostgreSQL