🛡️ CVE-2026-47427 — mcp-server

🟠 CVSS 8.0 — High ✅ No Known Exploit CWE-476 NVD
8.0
CVSS Score
0 Low4 Medium7 High9 Critical10

Description

GitHub MCP Server has Nil Pointer Dereference DoS in completion/complete Handler

Summary

A nil pointer dereference vulnerability in the GitHub MCP Server causes it to crash when receiving a malformed completion/complete request with missing or empty parameters. This allows any unauthenticated client to cause a complete denial of service.

Details

The CompletionsHandler function in pkg/github/server.go:198 accesses params.Ref without checking if it's nil first. When a client sends a completion/complete request with a missing ref field, the handler dereferences nil and the Go runtime panics.

The crash occurs before any authentication or token validation, so even requests with fake tokens can trigger it.

PoC

After completing the MCP initialization handshake, send either:

Empty params:

{"jsonrpc":"2.0","id":2,"method":"completion/complete","params":{}}

Missing ref field:

{"jsonrpc":"2.0","id":2,"method":"completion/complete","params":{"argument":{"name":"x","value":"y"}}}

Result:

panic: runtime error: invalid memory address or nil pointer dereference

goroutine 42 [running]:

github.com/github/github-mcp-server/pkg/github.NewMCPServer.CompletionsHandler.func1(...)

pkg/github/server.go:198 +0x24

Impact

Any unauthenticated client that can send JSON-RPC messages to the server can crash it immediately. This is a complete denial of service - the panic is unrecoverable and kills the process.

Automated fuzzing with mcpsec found 108 crashes out of 925 test cases (11.7% crash rate).

Timeline

  • Feb 21, 2026 - Initial report sent to opensource-security@github.com
  • Mar 03, 2026 - Follow-up email sent, no response
  • Mar 21, 2026 - Re-verified on v0.33.0, sent detailed report with PoC, no response
  • Apr 06, 2026 - GHSA filed after 44 days without acknowledgment

Suggested Fix

func (s *Server) CompletionsHandler(ctx context.Context, params *mcp.CompleteParams) (*mcp.CompleteResult, error) {

if params == nil || params.Ref == nil {

return nil, fmt.Errorf("invalid request: missing ref parameter")

}

// ... rest of handler

}

How this vulnerability can be exploited

This issue can be reached over the network, attack complexity is low, an attacker needs no privileges on the target. No user interaction is required. The scope is unchanged, so the impact stays within the vulnerable component. Rated impact: confidentiality none, integrity none, availability high.

Weakness class

CVE-2026-47427 is classified as CWE-476: NULL Pointer Dereference. A pointer that can be null is used without a check, crashing the process.

Affected software

CVE-2026-47427 is recorded against 2 packages.

  • github.com/github/github-mcp-server
  • mcp-server (fixed in 1.1.0)

Timeline and source

Published on 28 July 2026. No public exploit is currently recorded for this entry. A vendor advisory or fix has been published. Record sourced from NVD.

References

github.com (Web)
github.com (Web)
github.com (Web)
github.com (Package)
github.com (Web)

Details

Severity HIGH
CVSS Score 8.0
CVSS Vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CWE CWE-476
Public Exploit ✅ No
Source NVD
Published 2026-07-28
Updated 2026-08-12
Modified 2026-07-28

Affected Packages

Software From version Fixed in
github.com/github/github-mcp-server
mcp-server 1.1.0

Similar Threats

Site Security Check

Is mcp-server part of your stack?

CVE-2026-47427 is rated CVSS 8.0 High. BotEraser scans your installation against known CVE records and tells you whether this vulnerability applies to the versions you actually run.

Scan My Site Free →

No credit card required  ·  Results in minutes

ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.

Browse related advisories

All advisoriesCVECVE 2026