HIGH

nginx-ui MCP Authentication Bypass Vulnerability

60 Views 0 Replies Harry Potter
#
Today, 05:42 AM |
1. Vulnerability DescriptionNginx UI is a widely used open-source graphical management tool for Nginx. A critical authentication bypass vulnerability, codenamed MCPwn and identified as CVE-2026-33032, exists in its integrated MCP (Model Context Protocol) interface due to an oversight in code implementation.

   
The root cause of this vulnerability lies in a logical error during route registration: while the 
 
CODE
/mcp
 endpoint is protected by the 
 
CODE
AuthRequired()
 middleware, its paired 
 
CODE
/mcp_message
 endpoint, which is responsible for receiving actual tool invocation commands, was deployed without this authentication middleware. This allows any attacker capable of accessing the UI over the network to take control of the Nginx service without requiring any credentials.
2. Impact of the Vulnerability
  • CVE ID: CVE-2026-33032
  • Alias: MCPwn
  • CVSS 3.1 Score9.8 (Critical) (Vector: AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
  • Vulnerability Type: Authentication Bypass (CWE-306)
  • Affected Versions: nginx-ui < 2.3.4
  • Fixed Versions: nginx-ui ≥ 2.3.4
  • Technical Impact:
    • Arbitrary Configuration Modification: Attackers can rewrite server blocks via the 
       
      CODE
      edit_config
       tool, inserting attacker-controlled upstream servers.
    • Service Takeover: Malicious configurations can be immediately applied via 
       
      CODE
      reload_nginx
      , or a Denial of Service (DoS) can be caused by 
       
      CODE
      stop_nginx
      .
    • Sensitive Information Disclosure: Attackers can use the 
       
      CODE
      read_file
       tool to exfiltrate sensitive files such as TLS private keys and system credentials.
    • Persistent Control: Attackers can leverage 
       
      CODE
      create_cert
       to re-issue controlled certificates or combine with other vulnerabilities to maintain long-term persistence.
3. Proof of Concept (POC)
Hidden Content


Please Log In or Register to view this content.
4. Remediation Suggestions or Solutions4.1 Core Fix
  • Immediate Upgrade: Upgrade nginx-ui to version 2.3.4 or higher. The official patch has added the 
     
    CODE
    AuthRequired()
     call during route registration.
    CODE
    // Fixed code snippet
    r.POST("/mcp_message", AuthRequired(), mcpMessageHandler)
4.2 Mitigation and Hardening
  • Port Isolation: Do not expose the nginx-ui management port (default 9000) directly to the public internet. Instead, use a VPN, bastion host, or firewall (with a whitelist policy) for access control.
  • Disable Feature: If AI-assisted management is not required, the MCP module can be completely disabled in the configuration file.
  • Key Rotation: After upgrading, it is crucial to rotate the 
     
    CODE
    node_secret
    , SSL private keys, and all other sensitive credentials stored within the panel.
4.3 Detection Methods
  • Automated Detection: Non-destructive detection can be performed using the Python script or Nmap NSE plugin provided by 
     
    CODE
    keraattin/CVE-2026-33032
    .
5. References
  1. AGI Security: 9.8 High-Risk Vulnerability Being Exploited, Nginx Servers Face Major Threat!
  2. GitHub: keraattin/CVE-2026-33032 - MCPwn Detection Tooling
  3. Picus Security: MCPwn - How a Missing Middleware Call Hands Attackers Full Takeover
  4. GitHub Advisory: GHSA-g9w5-qffc-6762 (CVE-2026-27944)
  5. NVD: CVE-2026-33032 Detail
Thread Info
AuthorHarry Potter
Posted
Views60
Replies0
Participants1

This board is for authorized security research only. Attacking systems without permission is illegal. The community follows responsible disclosure.