<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://vulnerability.circl.lu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-16T04:31:51.387802+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@circl.lu</email>
  </author>
  <link href="https://vulnerability.circl.lu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/fkie_cve-2026-84319</id>
    <title>fkie_cve-2026-84319</title>
    <updated>2026-10-16T04:31:51.426039+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>Nginx UI is a web user interface for the Nginx web server. Prior to 2.4.1, the regular HTTP configuration API rejects restricted Nginx directives such as load_module, js_import, and js_content. However, the MCP configuration interface allows a secondary authenticated user to write and apply equivalent restricted configuration content. This allows the user to load ngx_http_js_module.so, import attacker-controlled JavaScript, reload Nginx, and execute NJS in the Nginx worker context. This issue is fixed in version 2.4.1.</p>
      </div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/fkie_cve-2026-84319"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/ghsa-5r62-gj48-897x</id>
    <title>GHSA-5r62-gj48-897x — Nginx UI: MCP configuration tools bypass restricted directive validation and allow secondary authenticated users to exe…</title>
    <updated>2026-10-16T04:31:51.426584+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Go: github.com/0xJacky/Nginx-UI</p>
<p>## Summary</p>
<p>The regular HTTP configuration API rejects restricted Nginx directives such as `load_module`, `js_import`, and `js_content`.</p>
<p>However, the MCP configuration interface allows a secondary authenticated user to write and apply equivalent restricted configuration content. In the lab, this allowed the user to load `ngx_http_js_module.so`, import attacker-controlled JavaScript, reload Nginx, and execute NJS in the Nginx worker context.</p>
<p>This is authenticated and is not OS command execution by itself.</p>
<p>## Affected component</p>
<p>- `/mcp`
- `/mcp_message`
- MCP tool: `nginx_config_add`
- Nginx configuration validation</p>
<p>## Impact</p>
<p>A secondary authenticated user can bypass the restricted directive validation enforced by the HTTP API and execute attacker-controlled NJS inside the Nginx worker context.</p>
<p>This may allow modification of Nginx runtime behavior, including responses, routing, headers, redirects, and request handling.</p>
<p>## Minimal PoC</p>
<p>### Preconditions</p>
<p>- Attacker has a secondary authenticated Nginx UI account.
- MCP is enabled.
- Nginx has NJS available:</p>
<p>```bash
find / -name "ngx_http_js_module.so" 2&gt;/dev/null
```</p>
<p>Observed in the lab:</p>
<p>```text
/usr/lib/nginx/modules/ngx_http_js_module.so
```</p>
<p>### 1. HTTP API blocks the restricted config</p>
<p>Request:</p>
<p>```http
POST /api/configs
Authorization: &lt;SECONDARY_USER_JWT&gt;
Content-Type: application/json
```</p>
<p>Body:</p>
<p>```json
{
 "name": "nginx.conf",
 "base_dir": "",
 "overwrite": true,
 "sync_node_ids": [],
 "content": "load_module…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ghsa-5r62-gj48-897x"/>
  </entry>
</feed>
