Skip to main content

GitHub MCP Server CVE-2026-47427

| EUVDEUVD-2026-49875 HIGH
NULL Pointer Dereference (CWE-476)
2026-07-28 https://github.com/github/github-mcp-server GHSA-w4q6-qw23-4rg7
7.5
CVSS 3.1 · Vendor: https://github.com/github/github-mcp-server
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Attacker accesses the exposed JSON-RPC endpoint
  2. Delivery
    Completes the MCP initialization handshake
  3. Exploit
    Sends a malformed completion/complete request with missing ref field
  4. Execution
    Nil pointer dereference occurs in CompletionsHandler
  5. Persist
    Go runtime panics and terminates the server process
  6. Impact
    Service becomes unavailable.

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Null pointer safety, defensive checks
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

No special conditions - remote unauthenticated exploitation against default configurations of GitHub MCP Server versions below 1.1.0. The handler does not perform authentication checks before the vulnerable code path, so the attack requires only network reachability to the server’s JSON‑RPC endpoint.

Impact

The CVSS 3.1 score of 7.5 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H) reflects a network‑accessible, low‑complexity vulnerability with no required privileges or user interaction, resulting in complete availability loss. While no KEV listing or EPSS data is available, the existence of a publicly documented proof‑of‑concept increases the practical risk. The vulnerability is trivially reproducible, but the impact is limited to denial of service rather than data compromise. The lack of CISA KEV designation suggests no widespread active exploitation has been observed.

Exploit ScenarioDerived

After completing the MCP initialization handshake, an attacker sends a JSON‑RPC request with the method completion/complete and a missing ref field. The unauthenticated request triggers a nil pointer dereference, causing the Go runtime to panic and the server process to terminate instantly.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 28, 2026

Denial of service in GitHub MCP Server versions below 1.1.0 allows any unauthenticated attacker to crash the server by sending a malformed completion/complete JSON-RPC request with missing parameters. The nil pointer dereference occurs before authentication checks, making exploitation trivial. Publicly available exploit code exists, enabling immediate termination of the process.

RemediationAI

Upgrade to GitHub MCP Server version 1.1.0 or later, which introduces nil checks for the request parameters. The vendor advisory at https://github.com/github/github-mcp-server/security/advisories/GHSA-w4q6-qw23-4rg7 confirms the fix. If immediate upgrade is not feasible, restrict network access to the server’s JSON‑RPC endpoint to trusted clients only, though this may disrupt legitimate AI tool integration.

Affected VersionsENISA

github-mcp-server < 1.1.0

Affected Packages

go github.com/github/github-mcp-server fix: 1.1.0
euvd github_mcp_server fix: 1.1.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in go, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The GitHub MCP Server is a Go application implementing the Model Context Protocol (MCP) to expose GitHub API resources to AI tools. The vulnerability lies in the CompletionsHandler function in pkg/github/server.go, which dereferences params.Ref without first checking for nil. The root cause is a missing null pointer validation (CWE-476), leading to a runtime panic. Affected builds are tracked by the CPE pkg:go/github.com_github_github-mcp-server for versions prior to the fix.

Know when the next one hits your stack

  • 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

Vendor (https://github.com/github/github-mcp-server) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 7.5 HIGH

Network attack with no privileges or user interaction, only availability impact.

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

Primary rating from Vendor (https://github.com/github/github-mcp-server).

CVSS VectorVendor: https://github.com/github/github-mcp-server

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

DescriptionCVE.org

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 }

Threat Intelligence Overview

EPSS Score
0.4%
Top 68% exploitable
Prevalence
Low
niche developer tool for AI integrations, not foundational infrastructure
Threat Intel
1
1 sources
Social Media
1
Sightings
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor CIRCL GitHub VulDB

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A null pointer dereference occurs when a program attempts to access memory through a pointer that has been set to NULL (address 0x0).

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Server 16.1 Affected
SUSE Linux Enterprise Server for SAP applications 16.1 Affected

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