<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Vulnerability Spoiler Alert</title>
    <link>https://spaceraccoon.github.io/vulnerability-spoiler-alert</link>
    <description>AI-powered early warning for open-source security patches — before the CVE drops.</description>
    <language>en-us</language>
    <lastBuildDate>Fri, 17 Apr 2026 01:52:35 GMT</lastBuildDate>
    <atom:link href="https://spaceraccoon.github.io/vulnerability-spoiler-alert/feed.xml" rel="self" type="application/rss+xml"/>
    <item>
      <title>[MEDIUM] Denial of Service (Stack Overflow) in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/127</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/127</guid>
      <pubDate>Tue, 31 Mar 2026 08:11:46 GMT</pubDate>
      <description>The yaml library before 2.8.3 was vulnerable to a stack overflow during node composition when parsing deeply nested or recursive YAML structures. An attacker could craft a malicious YAML document that causes the parser to recurse deeply enough to exhaust the call stack, crashing the Node.js process. The fix adds stack overflow detection during node composition.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Cross-Site Scripting (XSS) / Code Injection in facebook/react</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/126</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/126</guid>
      <pubDate>Mon, 30 Mar 2026 17:16:08 GMT</pubDate>
      <description>The compiler playground parsed user-supplied config overrides using `new Function(...)`, which executes arbitrary JavaScript code in the browser context. An attacker could craft a malicious URL with a base64/encoded config payload containing arbitrary JS, which when shared and opened by a victim, would execute the attacker&apos;s code in the victim&apos;s browser. The patch replaces `new Function(...)` with JSON5 parsing, which only allows data literals and rejects executable code.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Denial of Service (Unbounded Request Body) in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/125</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/125</guid>
      <pubDate>Mon, 30 Mar 2026 12:36:49 GMT</pubDate>
      <description>The OFREP endpoint&apos;s `validateNamespace` function used `io.ReadAll(r.Body)` without any size limit, allowing an attacker to send arbitrarily large request bodies that would be fully read into memory. This could exhaust server memory and cause a denial of service. The fix applies `http.MaxBytesReader` to limit the body to 1 MiB before reading.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Null Pointer Dereference / Process Crash in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/124</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/124</guid>
      <pubDate>Sun, 29 Mar 2026 12:03:25 GMT</pubDate>
      <description>When an ArrayBufferView backed by a zero-length ArrayBuffer (which has a null backing store data pointer) is passed to crypto functions like cipher.update(), the code unconditionally dereferenced the buffer&apos;s data pointer without checking for null. This caused a process crash (SIGSEGV/access violation). The patch adds a null check so that when buf_data is null, stack_storage_ is used as a fallback, preventing the crash.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Denial of Service (Resource Exhaustion) in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/123</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/123</guid>
      <pubDate>Fri, 27 Mar 2026 14:45:04 GMT</pubDate>
      <description>The fill resampling feature in Grafana&apos;s SQL datasources (MySQL, PostgreSQL, MSSQL) could be exploited to cause excessive memory allocation. By crafting a query with a very large time range and a very small fill interval (e.g., time range spanning years with millisecond intervals), an attacker could trigger `sqlutil.ResampleWideFrame` to allocate an enormous number of data points, exhausting server memory and causing a denial of service. The patch adds a guard that skips the fill operation if the number of fill points would exceed the configured row limit.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Sensitive Data Exposure in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/122</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/122</guid>
      <pubDate>Fri, 27 Mar 2026 08:29:30 GMT</pubDate>
      <description>When a user creates a Kubernetes resource containing inline secure values (raw secrets) via kubectl apply, the kubectl client automatically stores the full object including the raw secret value in the `kubectl.kubernetes.io/last-applied-configuration` annotation. This annotation is persisted in the API server and can be read back by anyone with read access to the resource, effectively leaking the raw secret value. The patch clears this annotation when a raw secret is detected in the inline secure values section, preventing the secret from being stored in plaintext in the annotation.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Use-After-Free in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/121</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/121</guid>
      <pubDate>Thu, 26 Mar 2026 22:22:17 GMT</pubDate>
      <description>The Reset() method in Node.js&apos;s zlib binding did not check the write_in_progress_ flag before resetting the compression stream. This allowed calling reset() while an async write was being processed by a worker thread, causing the internal zlib/brotli state to be freed while still in use, resulting in a use-after-free condition that could lead to memory corruption or process crash. The fix adds a guard that throws an error if a write is in progress, consistent with how Close() and Write() already behave.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Broken Access Control / Authorization Bypass in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/120</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/120</guid>
      <pubDate>Thu, 26 Mar 2026 09:05:25 GMT</pubDate>
      <description>Before this patch, the Kubernetes-style IAM API endpoint `/apis/iam.grafana.app/v0alpha1/namespaces/{ns}/users/{name}/teams` used the generic `ResourceAuthorizer` which only checked `get` permission on the `users` resource itself, but did not properly enforce the `teams` subresource authorization. According to the commit, the RBAC service would ignore the &apos;teams&apos; subresource check, meaning any user with generic `users:read` permission could potentially access team membership data for users they shouldn&apos;t be able to see. The patch adds a dedicated `UserAuthorizer` that explicitly checks `get` permission on the parent user when the `teams` subresource is requested.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Broken Access Control / Information Disclosure in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/119</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/119</guid>
      <pubDate>Wed, 25 Mar 2026 16:21:48 GMT</pubDate>
      <description>The `/api/alertmanager/grafana/api/v2/status` endpoint was protected by the `alert.notifications:read` permission, which is granted to Viewers and Editors by default. This allowed any authenticated user (including low-privileged Viewers) to access Alertmanager system status information including routing configuration, receivers configuration, and other sensitive system details. The patch replaces this with a new dedicated `alert.notifications.system-status:read` permission that is only granted to Admin users.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Authorization Bypass / Improper Access Control in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/118</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/118</guid>
      <pubDate>Wed, 25 Mar 2026 14:48:37 GMT</pubDate>
      <description>Before the patch, the `validateWriteAccess` function did not handle `JobActionFixFolderMetadata` in its switch statement, meaning it fell through to the `default` case which applies no ref-based restriction. This allowed users to trigger a fix-folder-metadata job that would write directly to the default/main branch even when the repository was configured with only a &apos;branch&apos; workflow (meaning the default branch should be read-only). The patch adds the missing case to extract the target ref from `FixFolderMetadata.Ref` and apply proper write permission checks.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Permission Model Bypass in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/117</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/117</guid>
      <pubDate>Tue, 24 Mar 2026 22:57:48 GMT</pubDate>
      <description>The Node.js Permission Model&apos;s `--allow-fs-read` restriction could be bypassed by using `fs.realpath.native()` instead of `fs.realpath()`. Before the patch, `RealPath` in node_file.cc lacked permission checks for both the async and sync code paths, allowing an attacker to read/resolve file paths that should be blocked by the permission model. The patch adds `ASYNC_THROW_IF_INSUFFICIENT_PERMISSIONS` and `THROW_IF_INSUFFICIENT_PERMISSIONS` checks to enforce the `kFileSystemRead` permission scope.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Permission Model Bypass in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/116</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/116</guid>
      <pubDate>Tue, 24 Mar 2026 22:57:35 GMT</pubDate>
      <description>The Node.js Permission Model (introduced with --experimental-permission flag) did not enforce filesystem read/write permission checks on several `fs/promises` API functions including `lstat`, `fchmod`, and `fchown`. This allowed an attacker to bypass the permission model by using the promise-based filesystem API instead of the callback/sync APIs, which did have proper permission checks. The patch adds the missing permission checks to `lstat` (read permission) and disables `fchmod`/`fchown` entirely when the Permission Model is enabled.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Denial of Service (Crash/Abort) in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/115</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/115</guid>
      <pubDate>Tue, 24 Mar 2026 22:57:15 GMT</pubDate>
      <description>Before the patch, `url.format()` called `CHECK(out)` after attempting to re-parse a URL string with `ada::parse&amp;lt;ada::url&amp;gt;`. If the URL (originally parsed by `ada::url_aggregator`) could not be re-parsed by `ada::url` (e.g., special scheme URLs with opaque paths like `ws:xn-ȫ`), the CHECK macro would trigger an abort/crash of the Node.js process. The patch replaces the hard crash with a graceful fallback that returns the original href unmodified.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Uncaught Exception / Denial of Service in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/114</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/114</guid>
      <pubDate>Tue, 24 Mar 2026 22:57:03 GMT</pubDate>
      <description>Before the patch, if an SNICallback function threw a synchronous exception during TLS handshake processing in loadSNI(), the exception would propagate as an uncaught exception, crashing the Node.js process. The patch wraps the owner._SNICallback() invocation in a try/catch block, routing any thrown exceptions through owner.destroy() instead. A remote unauthenticated attacker can crash any Node.js TLS server by sending a TLS ClientHello with a crafted server_name value that causes the SNICallback to throw.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Permission Model Bypass in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/113</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/113</guid>
      <pubDate>Tue, 24 Mar 2026 22:56:45 GMT</pubDate>
      <description>Node.js&apos;s permission model (--permission flag) failed to enforce network access controls for Unix Domain Socket (UDS) connections and server listeners via pipe_wrap.cc. Before the patch, calling net.createServer().listen(&apos;/tmp/sock&apos;) or net.connect({path:&apos;/tmp/sock&apos;}) would succeed even when --allow-net was not granted, bypassing the intended permission restrictions. The patch adds THROW_IF_INSUFFICIENT_PERMISSIONS checks to PipeWrap::Bind and PipeWrap::Listen to enforce the kNet permission scope.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Denial of Service via Prototype Pollution in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/112</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/112</guid>
      <pubDate>Tue, 24 Mar 2026 22:56:32 GMT</pubDate>
      <description>When `headersDistinct` or `trailersDistinct` was accessed on an IncomingMessage, the destination object was initialized as a plain `{}` which inherits from `Object.prototype`. If a request included a `__proto__` header, `dst\[&quot;__proto__&quot;\]` would resolve to `Object.prototype` (a truthy object rather than undefined), causing `_addHeaderLineDistinct` to call `.push()` on `Object.prototype` instead of an array, throwing an uncaught TypeError that crashes the Node.js process. The fix uses `{ __proto__: null }` to create a null-prototype object, preventing prototype chain lookups.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Timing Side-Channel Attack (HMAC/KMAC Verification) in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/111</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/111</guid>
      <pubDate>Tue, 24 Mar 2026 22:56:15 GMT</pubDate>
      <description>The Web Cryptography API&apos;s HMAC and KMAC `verify` operations used the non-constant-time `memcmp` function to compare the computed MAC against the provided signature. This allowed timing-based side-channel attacks where an attacker could measure response times to infer byte-by-byte information about the expected MAC value. The patch replaces `memcmp` with `CRYPTO_memcmp`, which executes in constant time regardless of where the comparison fails.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Memory Leak / Resource Exhaustion (DoS) in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/110</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/110</guid>
      <pubDate>Tue, 24 Mar 2026 22:55:57 GMT</pubDate>
      <description>A malicious HTTP/2 client could send a WINDOW_UPDATE frame on stream 0 (connection level) with an increment that pushes the flow-control window past 2^31-1. nghttp2 internally responds with GOAWAY(FLOW_CONTROL_ERROR) but Node.js&apos;s OnInvalidFrame callback did not handle NGHTTP2_ERR_FLOW_CONTROL, so the Http2Session was never destroyed, causing a memory leak. An attacker can exploit this to exhaust server memory by repeatedly opening connections and sending the malicious frame, enabling denial of service.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Hash Collision / Denial of Service in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/109</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/109</guid>
      <pubDate>Tue, 24 Mar 2026 22:55:39 GMT</pubDate>
      <description>V8&apos;s array index hash values for numeric strings were predictable because they directly encoded the integer value and string length without randomization. Consecutive numeric string keys (e.g., &apos;0&apos;, &apos;1&apos;, &apos;2&apos;, ...) would have consecutive hash values, allowing an attacker to craft inputs that cause O(n^2) hash table probe collisions. This patch adds seeded scrambling of the 24-bit array-index value in Name&apos;s raw_hash_field using a 3-round xorshift-multiply scheme with random secrets derived from rapidhash, preventing an attacker from predicting hash distributions. This is tracked as CVE-2026-21717.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Multiple: Timing Attack, Prototype Pollution, Permission Bypass, DoS, TLS Error Handling in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/108</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/108</guid>
      <pubDate>Tue, 24 Mar 2026 20:47:40 GMT</pubDate>
      <description>This commit patches multiple security vulnerabilities in Node.js 20.x LTS including: (1) CVE-2026-21713: timing-unsafe HMAC comparison in Web Crypto allowing key extraction via timing oracle; (2) CVE-2026-21710: missing null prototype for HTTP headers objects enabling prototype pollution; (3) CVE-2026-21716/21715: missing permission checks in fs.promises and realpath.native bypassing Node.js permission model; (4) CVE-2026-21714: unhandled NGHTTP2_ERR_FLOW_CONTROL causing HTTP/2 DoS; (5) CVE-2026-21637: uncaught SNICallback exception crashing TLS server.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Multiple: Prototype Pollution, Timing Side-Channel, DoS, Permission Bypass, Hash Collision in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/107</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/107</guid>
      <pubDate>Tue, 24 Mar 2026 20:28:54 GMT</pubDate>
      <description>This commit patches multiple CVEs in Node.js 22 LTS. The highest severity issues include CVE-2026-21710 (prototype pollution via HTTP headers using null prototype for headersDistinct/trailersDistinct) and CVE-2026-21637 (uncaught exception DoS via SNICallback). The patch also fixes a timing side-channel in HMAC comparison (CVE-2026-21713), permission bypass in fs.promises and realpath.native (CVE-2026-21715/16), HTTP/2 flow control error handling (CVE-2026-21714), and a V8 array index hash collision (CVE-2026-21717).</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Prototype Pollution in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/106</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/106</guid>
      <pubDate>Tue, 24 Mar 2026 20:28:37 GMT</pubDate>
      <description>The HTTP module used regular objects for headersDistinct and trailersDistinct, which are populated with header names as keys. An attacker could send HTTP headers with names like &apos;__proto__&apos;, &apos;constructor&apos;, or &apos;toString&apos; to pollute the Object prototype, potentially affecting all objects in the Node.js process. The fix uses null-prototype objects (Object.create(null)) to prevent prototype chain pollution.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Prototype Pollution in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/105</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/105</guid>
      <pubDate>Tue, 24 Mar 2026 20:28:21 GMT</pubDate>
      <description>The HTTP module used regular objects (with Object.prototype) for headersDistinct and trailersDistinct, which could allow an attacker to pollute the prototype chain by sending HTTP headers with names like &apos;__proto__&apos; or &apos;constructor&apos;. The fix uses null-prototype objects (Object.create(null)) to prevent prototype pollution attacks. This could lead to security bypasses or unexpected behavior in applications that rely on HTTP header processing.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Authentication Bypass in nginx/nginx</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/104</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/104</guid>
      <pubDate>Tue, 24 Mar 2026 15:49:30 GMT</pubDate>
      <description>In the nginx stream SSL module, the OCSP (Online Certificate Status Protocol) certificate revocation check was not being performed during client certificate validation. The code would verify the certificate chain but skip the OCSP status check, allowing clients with revoked certificates to successfully authenticate. The patch adds the missing `ngx_ssl_ocsp_get_status()` call that properly checks and enforces OCSP certificate revocation status.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Integer Overflow leading to Out-of-Bounds Read/Write in nginx/nginx</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/103</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/103</guid>
      <pubDate>Tue, 24 Mar 2026 14:49:11 GMT</pubDate>
      <description>On 32-bit platforms, multiplying a uint32_t `entries` value by the size of a struct (also size_t/32-bit) could overflow before being compared to the uint64_t `atom_data_size`. This allowed an attacker to craft a malicious MP4 file with a large entries count that, after overflow, appeared to pass the size validation check, causing nginx to process entries beyond the allocated buffer boundaries with out-of-bounds reads and writes. The fix casts `entries` to uint64_t before multiplication to prevent the overflow.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Heap Buffer Overflow in nginx/nginx</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/102</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/102</guid>
      <pubDate>Tue, 24 Mar 2026 14:48:53 GMT</pubDate>
      <description>When nginx WebDAV module (ngx_http_dav_module) processed COPY or MOVE requests with an alias directive configured, supplying a Destination header with a URI shorter than the alias prefix caused an integer underflow in ngx_http_map_uri_to_path(). The underflow resulted in a heap buffer overwrite, which could allow an attacker to manipulate source or destination file paths to be outside the configured location root (path traversal via memory corruption). The patch adds a validation check that rejects Destination URIs shorter than the alias length before the vulnerable path mapping occurs.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Header Injection / SMTP Injection in nginx/nginx</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/101</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/101</guid>
      <pubDate>Tue, 24 Mar 2026 14:48:33 GMT</pubDate>
      <description>Before the patch, when nginx&apos;s mail module resolved a client&apos;s IP address to a hostname, it used the resolved hostname without validation in auth_http requests and SMTP proxy communications. An attacker controlling DNS responses could return a hostname containing newlines, spaces, or other special characters, enabling injection of arbitrary headers into auth_http requests or arbitrary SMTP commands into the proxied SMTP session. The patch validates that the resolved hostname only contains RFC 1034-compliant characters (letters, digits, hyphens, dots).</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Null Pointer Dereference in nginx/nginx</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/100</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/100</guid>
      <pubDate>Tue, 24 Mar 2026 14:48:12 GMT</pubDate>
      <description>When authenticating with CRAM-MD5 or APOP methods, the code set `s-&amp;gt;passwd.data = NULL` but did not reset `s-&amp;gt;passwd.len`. On a subsequent authentication attempt, the non-zero length would cause the code to attempt to use the null pointer as if it pointed to valid password data, resulting in a null pointer dereference and worker process crash. The fix uses `ngx_str_null(&amp;s-&amp;gt;passwd)` which correctly zeroes both the data pointer and the length.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Buffer Overread/Overwrite in nginx/nginx</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/99</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/99</guid>
      <pubDate>Tue, 24 Mar 2026 14:23:08 GMT</pubDate>
      <description>The nginx mp4 module had off-by-one errors in bounds checking for stco and co64 atoms. When `trak-&amp;gt;start_chunk` equaled `trak-&amp;gt;chunks` (i.e., pointing exactly past the end of the chunks array), the old check `trak-&amp;gt;start_chunk &amp;gt; trak-&amp;gt;chunks` would pass, allowing out-of-bounds memory access. Similarly, empty stsz sample arrays could be processed leading to buffer overread/overwrite. The patch changes `&amp;gt;` to `&amp;gt;=` to properly reject these boundary cases.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Denial of Service (Resource Exhaustion) in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/98</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/98</guid>
      <pubDate>Mon, 23 Mar 2026 22:25:24 GMT</pubDate>
      <description>Before the patch, an attacker could send an HTTP Range request with an arbitrarily large byte range (e.g., &apos;bytes=0-&apos; on a large file) and the server would attempt to download and buffer the entire requested range into memory before sending it. This could exhaust server memory and cause a denial of service. The patch adds a `ranges_valid?` check that rejects any byte ranges whose total size exceeds 100MB (configurable via `ActiveStorage.streaming_chunk_max_size`).</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Denial of Service (DoS) via Multi-Range HTTP Requests in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/97</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/97</guid>
      <pubDate>Mon, 23 Mar 2026 22:25:09 GMT</pubDate>
      <description>The ActiveStorage streaming controller allowed multi-range HTTP byte range requests without limiting the number of ranges. An attacker could send a request with thousands of byte ranges, causing the server to download and assemble many chunks from storage in memory, exhausting server resources and potentially causing a DoS. The patch adds a configurable `streaming_max_ranges` limit (defaulting to 1) that rejects requests with more ranges than allowed.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Denial of Service (ReDoS/Resource Exhaustion) in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/96</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/96</guid>
      <pubDate>Mon, 23 Mar 2026 22:24:56 GMT</pubDate>
      <description>BigDecimal in Ruby supports scientific notation (e.g., &apos;9e99999999&apos;), allowing an attacker to pass a short string that causes BigDecimal to allocate an enormous amount of memory when converting the number. Before the patch, any user-controlled string passed to number helper functions (like number_to_currency or number_to_percentage) could trigger this via BigDecimal(number). The patch rejects strings containing &apos;e&apos; or &apos;d&apos; (scientific notation indicators) before attempting BigDecimal conversion.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Improper Input Validation / Internal State Manipulation in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/95</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/95</guid>
      <pubDate>Mon, 23 Mar 2026 22:24:41 GMT</pubDate>
      <description>Before the patch, users could set protected metadata keys (analyzed, identified, composed) during a direct upload by including them in the metadata parameter. These keys control internal Active Storage state (e.g., whether a blob has been analyzed or identified), so a malicious user could set &apos;analyzed: true&apos; or &apos;identified: true&apos; to bypass file analysis/identification steps that might enforce security policies. The patch filters out these protected keys from user-supplied metadata in create_before_direct_upload!.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] XSS (Cross-Site Scripting) in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/94</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/94</guid>
      <pubDate>Mon, 23 Mar 2026 22:24:27 GMT</pubDate>
      <description>The `SafeBuffer#%` method failed to preserve the unsafe status of a SafeBuffer when used for string formatting. Before the patch, formatting an unsafe SafeBuffer (one that had been marked unsafe after mutation via gsub!, etc.) would return a new SafeBuffer that was incorrectly marked as html_safe?, allowing unescaped user input to be rendered as raw HTML. The fix propagates the `@html_unsafe` flag to the result of `%` formatting.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Path Traversal in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/93</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/93</guid>
      <pubDate>Mon, 23 Mar 2026 22:23:58 GMT</pubDate>
      <description>ActiveStorage&apos;s DiskService allowed path traversal via blob keys containing segments like &apos;../../etc/passwd&apos;. The `path_for` method directly joined the root directory with user-controlled key values without validating that the resolved path stayed within the storage root, allowing attackers to read or write arbitrary files on the server filesystem. The patch adds validation that rejects keys with dot segments and verifies the resolved path remains within the storage root directory.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Glob Injection / Arbitrary File Deletion in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/92</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/92</guid>
      <pubDate>Mon, 23 Mar 2026 22:23:41 GMT</pubDate>
      <description>Before the patch, `DiskService#delete_prefixed` passed a user-influenced blob key directly into `Dir.glob` without escaping glob metacharacters. If a blob key contained characters like `*`, `?`, `\[`, `\]`, `{`, or `}`, the glob expansion could match and delete unintended files on the filesystem. The patch escapes all glob metacharacters in the resolved path before passing it to `Dir.glob`.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Mutation XSS (mXSS) in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/91</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/91</guid>
      <pubDate>Mon, 23 Mar 2026 22:23:25 GMT</pubDate>
      <description>When a blank string is used as an HTML attribute name in Rails Action View tag helpers, `xml_name_escape` returns an empty string, producing malformed HTML like `&amp;lt;img src=&quot;/safe.png&quot; =&quot;/onerror=alert(1)&quot;&amp;gt;`. This malformed HTML can be parsed differently by different HTML parsers, enabling mutation XSS attacks where a browser&apos;s HTML parser interprets the malformed attribute as executable code. The patch fixes this by skipping blank attribute keys before they are rendered into HTML.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] XSS (Cross-Site Scripting) in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/90</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/90</guid>
      <pubDate>Mon, 23 Mar 2026 22:23:09 GMT</pubDate>
      <description>The debug exceptions layout template used `raw` to output the exception message inside a `&amp;lt;script type=&quot;text/plain&quot;&amp;gt;` tag without HTML escaping. An attacker who can trigger an exception with a crafted message containing HTML/JavaScript could inject arbitrary script tags that would be rendered in the browser. The patch removes `raw` to use default ERB HTML escaping, ensuring special characters like `&amp;lt;`, `&amp;gt;` are escaped.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Broken Access Control / Privilege Escalation in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/89</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/89</guid>
      <pubDate>Fri, 20 Mar 2026 23:04:40 GMT</pubDate>
      <description>Before this patch, the GET /api/alertmanager/grafana/config/api/v1/alerts endpoint (which returns the raw Alertmanager configuration blob, potentially containing sensitive credentials like SMTP passwords, webhook secrets, and API tokens) was accessible to any user with the broad &apos;alert.notifications:read&apos; permission, which was granted to Viewers and Editors. Similarly, GET /config/history and POST /config/history/{id}/_activate were accessible to users with alert.notifications:read/write. The patch restricts these endpoints to admin-only via new fine-grained RBAC actions (alert.notifications.config-history:read/write).</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Integer Overflow / Division by Zero in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/88</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/88</guid>
      <pubDate>Fri, 20 Mar 2026 17:43:15 GMT</pubDate>
      <description>The patch fixes ICU-23109 in nfrule.cpp where `util64_pow(rule1-&amp;gt;radix, rule1-&amp;gt;exponent)` could overflow to zero, causing a subsequent modulo-by-zero operation (`rule1-&amp;gt;baseValue % util64_pow(rule1-&amp;gt;radix, rule1-&amp;gt;exponent)`). While there was already a comment about preventing `% 0`, the existing check `rule1-&amp;gt;radix != 0` did not guard against the case where the power computation itself overflows to zero. The patch introduces a pre-computed `mod` variable with an explicit overflow check, returning an error status if mod is zero.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[CRITICAL] XML Signature Wrapping / Authentication Bypass in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/87</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/87</guid>
      <pubDate>Fri, 20 Mar 2026 09:44:54 GMT</pubDate>
      <description>GHSA-479m-364c-43vc describes a vulnerability in github.com/russellhaering/goxmldsig (used for SAML XML digital signature validation) where an attacker could bypass XML signature verification. The library also depends on github.com/beevik/etree for XML parsing, and the combination of versions before this fix allowed signature wrapping attacks where a malicious SAML response could include a valid signature over one element while the actual authenticated data came from a different, attacker-controlled element. This allowed authentication bypass in Grafana&apos;s SAML SSO implementation.</description>
      <category>critical</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Open Redirect in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/86</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/86</guid>
      <pubDate>Thu, 19 Mar 2026 11:55:47 GMT</pubDate>
      <description>The Grafana short URL feature allowed authenticated users to create short URLs with arbitrary target paths, including external URLs like `http://evil.com` or protocol-relative URLs like `//evil.com`. When a victim clicked a Grafana short URL, they would be silently redirected to the attacker-controlled external domain. The patch adds validation at both creation time and redirect time to ensure paths are always relative and cannot contain schemes, protocol-relative prefixes, or other external URL patterns.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Denial of Service / HTTP/2 Protocol Vulnerability in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/85</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/85</guid>
      <pubDate>Thu, 19 Mar 2026 10:26:36 GMT</pubDate>
      <description>This commit patches CVE-2026-33186 in the google.golang.org/grpc library by upgrading from v1.79.1 to v1.79.3. The vulnerability exists in the gRPC-Go HTTP/2 implementation and can be exploited to cause a denial of service condition. The patch updates the dependency across multiple Go modules in the Grafana repository to remediate the vulnerability.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Improper Access Control / Authentication Bypass in apache/httpd</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/84</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/84</guid>
      <pubDate>Wed, 18 Mar 2026 20:59:05 GMT</pubDate>
      <description>The original example configuration had &apos;Require all granted&apos; at the Directory level, which grants unauthenticated access to all users by default. The LimitExcept block only required authentication for non-GET/POST/OPTIONS methods, but the outer &apos;Require all granted&apos; could override authentication requirements depending on configuration context. The patch removes &apos;Require all granted&apos; and replaces the LimitExcept approach with a RequireAny block that properly requires either the correct HTTP method OR an authenticated admin user, ensuring write operations require authentication.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Authorization Bypass / Privilege Escalation in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/83</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/83</guid>
      <pubDate>Wed, 18 Mar 2026 11:30:36 GMT</pubDate>
      <description>Before the patch, a resource manager could be changed directly from one manager to another (e.g., from repo:abc to terraform:xyz) in a single update operation without going through a remove-then-add workflow. This allowed one management system (e.g., Terraform) to silently take over resources managed by another system (e.g., a Git repository), potentially leading to unauthorized control over managed resources and unpredictable reconciliation conflicts. The patch adds an explicit check that blocks any update where both old and new objects have a manager set but with different values, returning HTTP 403.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Broken Access Control in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/82</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/82</guid>
      <pubDate>Tue, 17 Mar 2026 23:42:42 GMT</pubDate>
      <description>Before this patch, the Grafana Live push endpoint (`/api/live/push/:streamId`) had no RBAC authorization check, allowing any authenticated user (including Viewers) to push metrics and events to Grafana Live streams. The patch adds an `authorize(ac.EvalPermission(ac.ActionLivePush))` middleware that restricts this endpoint to users with the `live:push` permission (granted to Editors and Admins by default).</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Cross-Origin Request Forgery / Unauthorized Access to Dev Resources in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/81</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/81</guid>
      <pubDate>Tue, 17 Mar 2026 23:13:17 GMT</pubDate>
      <description>Before this patch, Next.js development servers only warned (but did not block) cross-origin requests to internal dev assets and endpoints (/_next/*, /__nextjs*) when `allowedDevOrigins` was not configured. An attacker could craft a malicious webpage that loads or interacts with internal dev-only resources (HMR WebSocket, error feedback endpoints, internal chunks) from any origin. The patch changes the default behavior from warn-only to blocking with a 403 response, preventing unauthorized cross-origin access to dev server internals.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Authentication Bypass in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/80</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/80</guid>
      <pubDate>Tue, 17 Mar 2026 19:06:19 GMT</pubDate>
      <description>The MSSQL connection string was built by directly concatenating the username and password without escaping special characters. Since semicolons are used as key-value delimiters in the connection string, a password containing a semicolon would be truncated at the semicolon, allowing authentication bypass or connection to unintended databases. For example, a password like `StrongPass;database=other` would cause the driver to parse `database=other` as a separate connection string parameter.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Authorization Bypass / Privilege Escalation in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/79</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/79</guid>
      <pubDate>Tue, 17 Mar 2026 15:19:41 GMT</pubDate>
      <description>The provisioning API&apos;s `UpdateContactPoint` endpoint did not perform authorization checks for protected fields (e.g., webhook URLs, API keys) before the patch. Any user with access to the provisioning API could modify protected/sensitive fields in contact points without the required `receivers:update.protected` permission, bypassing the security controls enforced by the regular receiver API. The patch adds a `checkProtectedFields` method that verifies the user has appropriate permissions before allowing modifications to protected fields.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[LOW] Input Validation Bypass / Size Guard Bypass in facebook/react</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/78</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/78</guid>
      <pubDate>Tue, 17 Mar 2026 11:03:07 GMT</pubDate>
      <description>The `$B` (Blob) case in `parseModelString` did not validate that the FormData entry was actually a Blob before returning it. Since `FormData.get()` can return either a string or a Blob/File, an attacker could craft a malformed Server Action payload that stores a large string under a key and references it via `$B`, bypassing the `bumpArrayCount` size guard that applies to regular string values. The patch adds an `instanceof Blob` check that throws an error if the backing entry is not a real Blob, closing this bypass. While the PR notes this doesn&apos;t produce meaningful amplification on its own, it is a defense-in-depth fix against potential combined attacks.</description>
      <category>low</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Open Redirect / Server-Side Request Forgery (SSRF) in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/77</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/77</guid>
      <pubDate>Tue, 17 Mar 2026 02:21:23 GMT</pubDate>
      <description>The commit patches the compiled `http-proxy` / `follow-redirects` library bundled in Next.js, referencing security advisory GHSA-ggv3-7p47-pfv8. The vulnerability involves improper handling of HTTP redirects in the `follow-redirects` library, which could allow an attacker to manipulate redirect targets to leak sensitive request headers (such as Authorization) to unintended hosts or bypass security controls via crafted redirect responses. The patch updates the compiled bundle with fixes to the redirect handling logic.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Cross-Site Request Forgery (CSRF) in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/76</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/76</guid>
      <pubDate>Tue, 17 Mar 2026 02:21:01 GMT</pubDate>
      <description>Before the patch, when the `Origin` header was set to the string `&apos;null&apos;` (which browsers send from privacy-sensitive contexts like sandboxed iframes), Next.js would skip the CSRF origin check entirely because the code treated `&apos;null&apos;` as a missing/invalid origin and fell through without validation. This allowed an attacker to embed a sandboxed iframe that submits a Server Action cross-origin with user credentials (cookies) attached, bypassing CSRF protection. The patch now treats `&apos;null&apos;` as a valid but opaque origin and checks it against the `allowedOrigins` allowlist, blocking unauthorized cross-origin Server Action submissions from sandboxed contexts.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Cross-Site WebSocket Hijacking / CSRF in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/75</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/75</guid>
      <pubDate>Tue, 17 Mar 2026 00:49:23 GMT</pubDate>
      <description>Before the patch, WebSocket connections to Next.js dev server endpoints (e.g., /_next/webpack-hmr) were accepted from privacy-sensitive origins (e.g., pages served with &apos;sandbox&apos; CSP that sets origin to null). The old code only blocked requests when rawOrigin was truthy AND not equal to &apos;null&apos;, meaning requests with origin header &apos;null&apos; (sent by sandboxed iframes/pages) bypassed origin validation entirely. The patch fixes this by treating a &apos;null&apos; origin as a defined but non-allowed origin, causing such requests to be blocked.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Missing Authorization / Broken Access Control in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/74</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/74</guid>
      <pubDate>Mon, 16 Mar 2026 23:39:58 GMT</pubDate>
      <description>Before this patch, the Kubernetes API endpoints for dashboard snapshots (GET, LIST, DELETE, POST /create, DELETE /delete/{deleteKey}, GET /settings) used a default `ServiceAuthorizer` that did not enforce RBAC permissions for snapshot resources. Any authenticated user, regardless of their assigned permissions, could read, list, create, and delete snapshots. The patch adds a `SnapshotAuthorizer` that maps K8s verbs to Grafana RBAC actions (`snapshots:read`, `snapshots:create`, `snapshots:delete`) and applies RBAC checks to the custom HTTP routes as well.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Broken Access Control / Insecure Direct Object Reference in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/73</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/73</guid>
      <pubDate>Mon, 16 Mar 2026 19:56:58 GMT</pubDate>
      <description>Public dashboard CRUD endpoints (Delete, Update, ExistsEnabledByDashboardUid) were only checking the user&apos;s role/permissions but not validating that the public dashboard being operated on belonged to the same organization as the requesting user. This allowed an authenticated user with Editor+ permissions in Org B to delete, update, or check the existence of public dashboards belonging to Org A, without having access to the source dashboard. The patch adds org_id checks to all relevant database queries to enforce org isolation.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] XSS / Prototype Pollution in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/72</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/72</guid>
      <pubDate>Fri, 06 Mar 2026 08:43:52 GMT</pubDate>
      <description>DOMPurify 3.3.1 contained multiple security vulnerabilities: a bypass via jsdom&apos;s faulty raw-text tag parsing that could allow XSS payloads to pass through sanitization, a prototype pollution issue when working with custom elements, and a lenient config parsing issue in `_isValidAttribute`. These vulnerabilities could allow attackers to inject malicious HTML/JavaScript that bypasses DOMPurify&apos;s sanitization, leading to XSS attacks in Grafana&apos;s frontend which uses DOMPurify to sanitize user-supplied content.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Regular Expression Denial of Service (ReDoS) in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/71</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/71</guid>
      <pubDate>Fri, 06 Mar 2026 08:43:36 GMT</pubDate>
      <description>The minimatch package prior to version 3.1.2 (and related versions) contained a ReDoS vulnerability (CVE-2022-3517) where specially crafted patterns could cause catastrophic backtracking in the regular expression engine. This patch upgrades minimatch from vulnerable versions (3.0.5, 9.0.3, 5.0.1, 7.4.6) to patched versions (3.1.4, 10.2.4, 5.1.9, 7.4.9) that fix the ReDoS issue. The vulnerability could allow an attacker to cause denial of service by providing a malicious glob pattern.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Prototype Pollution in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/70</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/70</guid>
      <pubDate>Fri, 06 Mar 2026 08:23:33 GMT</pubDate>
      <description>The immutable library versions prior to 5.1.5 contained a Prototype Pollution vulnerability (Improperly Controlled Modification of Object Prototype Attributes). This allowed attackers to manipulate JavaScript object prototypes through specially crafted keys like &apos;__proto__&apos;, &apos;constructor&apos;, or &apos;prototype&apos;, potentially affecting all objects in the application. The patch upgrades immutable from 5.1.4 to 5.1.5 which fixes this vulnerability.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Use-After-Free / Memory Corruption in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/69</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/69</guid>
      <pubDate>Fri, 06 Mar 2026 06:01:47 GMT</pubDate>
      <description>When pipelined HTTP requests arrive in a single TCP segment, llhttp_execute() processes all of them in one call. If a synchronous &apos;close&apos; event handler calls freeParser() mid-execution, cleanParser() nulls out parser state while llhttp_execute() is still on the call stack, causing use-after-free/null-pointer dereference crashes on subsequent callbacks. The patch adds an is_being_freed_ flag that causes the Proxy::Raw callback to return early (HPE_USER) when set, aborting llhttp_execute() before it accesses freed/nulled parser state.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] ReDoS (Regular Expression Denial of Service) in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/68</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/68</guid>
      <pubDate>Tue, 03 Mar 2026 23:22:09 GMT</pubDate>
      <description>The minimatch library versions before 3.1.5 contained a ReDoS vulnerability where specially crafted glob patterns could cause catastrophic backtracking in regular expression matching, leading to excessive CPU consumption and denial of service. The fix in 3.1.5 includes limiting recursion in pattern matching to prevent exponential backtracking. However, this affects only developer tooling (clang-format), not the Node.js runtime itself, limiting real-world impact.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Path Traversal / Arbitrary File Overwrite in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/67</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/67</guid>
      <pubDate>Tue, 03 Mar 2026 15:02:11 GMT</pubDate>
      <description>The `tar` npm package versions 6.x and earlier contain a path traversal vulnerability (CVE-2024-28863 and related CVEs) where specially crafted tar archives can write files outside the intended extraction directory. By bumping `tar` from version 6.x to 7.x, this patch removes the vulnerable version and its dependency chain (including the old `cacache@^15.2.0` which depended on `tar@^6.0.2`). The vulnerability allowed an attacker to craft a malicious tarball that, when extracted, could overwrite arbitrary files on the filesystem.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Denial of Service (DoS) in django/django</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/66</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/66</guid>
      <pubDate>Tue, 03 Mar 2026 14:31:49 GMT</pubDate>
      <description>Django&apos;s URLField.to_python() used urlsplit() to detect URL schemes, which on Windows performs NFKC Unicode normalization. This normalization is disproportionately slow for inputs containing certain Unicode characters (e.g., characters like &apos;¾&apos;), allowing an attacker to craft a POST payload that causes excessive CPU consumption. The patch replaces urlsplit() with str.partition(&apos;:&apos;) for scheme detection, avoiding Unicode normalization entirely.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[LOW] Incorrect Permissions / Race Condition (umask) in django/django</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/65</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/65</guid>
      <pubDate>Tue, 03 Mar 2026 14:31:34 GMT</pubDate>
      <description>In multi-threaded Django applications, the file-based cache backend and filesystem storage used temporary umask changes (via os.umask()) to control directory permissions when creating directories. Because os.umask() is a process-wide operation, a temporary umask change in one thread could affect directory/file creation in other threads, resulting in file system objects being created with unintended (potentially overly permissive) permissions. The patch replaces the umask manipulation approach with a safe_makedirs() function that uses os.chmod() after os.mkdir() to enforce the exact requested permissions.</description>
      <category>low</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] HTTP Header Injection (CRLF Injection) in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/64</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/64</guid>
      <pubDate>Mon, 02 Mar 2026 19:13:15 GMT</pubDate>
      <description>The `path` property on `ClientRequest` was only validated against `INVALID_PATH_REGEX` at construction time. After construction, an attacker (or vulnerable application code) could reassign `req.path` to include CRLF sequences (`\\r\\n`), which would then be flushed verbatim to the socket in `_implicitHeader()`, allowing injection of arbitrary HTTP headers or request smuggling. The patch adds a getter/setter using a symbol-backed property so validation runs on every assignment.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] CRLF Injection in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/63</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/63</guid>
      <pubDate>Mon, 02 Mar 2026 13:23:35 GMT</pubDate>
      <description>The `writeEarlyHints()` function in Node.js HTTP server directly concatenated user-supplied header names and values into the raw HTTP/1.1 response without any validation. Unlike `setHeader()` and `writeHead()`, no calls to `validateHeaderName()`, `validateHeaderValue()`, or `checkInvalidHeaderChar()` were made, allowing CRLF sequences to pass through unchecked and inject arbitrary HTTP headers or entire responses. The patch adds proper validation for header names, values, and Link header URLs.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Header Injection / Information Disclosure in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/62</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/62</guid>
      <pubDate>Mon, 02 Mar 2026 00:50:37 GMT</pubDate>
      <description>The cache interceptor was spreading `result.vary` headers directly into revalidation requests without filtering out `null` values. When a request header specified in the `Vary` header was absent from the original request, it was stored as `null` in the cache entry&apos;s `vary` map. Spreading this `null` value into the revalidation headers could corrupt the header object and potentially send unintended null-valued headers to the server. The patch adds a null-check guard so only present header values are forwarded during revalidation.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] ReDoS (Regular Expression Denial of Service) in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/61</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/61</guid>
      <pubDate>Sun, 01 Mar 2026 14:38:38 GMT</pubDate>
      <description>This update to minimatch 10.2.4 adds mitigations for ReDoS vulnerabilities by introducing `maxGlobstarRecursion` and `maxExtglobRecursion` limits to prevent catastrophic backtracking when processing untrusted glob patterns. The README explicitly acknowledges that user-controlled glob patterns can be weaponized for DoS attacks. The patch adds depth tracking and recursion limits for extglob and globstar patterns to cap the complexity of the generated regular expressions.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Information Disclosure (Uninitialized Memory Exposure) in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/60</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/60</guid>
      <pubDate>Fri, 27 Feb 2026 18:45:58 GMT</pubDate>
      <description>Before the patch, Buffer.concat() computed the total allocation size using the user-controllable `.length` property of each element, then allocated with `Buffer.allocUnsafe(length)`. For typed arrays, an attacker could spoof a larger `.length` via a getter, causing an oversized uninitialized Buffer to be returned, leaking process memory contents. The patch fixes this by using the typed array’s intrinsic byte length (`TypedArrayPrototypeGetByteLength`) and by allocating via `allocate` plus explicit zero-filling of any slack.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Improper Authentication / Cryptographic Token Misbinding (QUIC Stateless Reset token exposure leading to DoS) in nginx/nginx</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/59</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/59</guid>
      <pubDate>Fri, 27 Feb 2026 15:44:28 GMT</pubDate>
      <description>Before the patch, the QUIC stateless reset token was derived only from a shared secret and the connection ID, making the token identical across workers. In a multi-worker configuration with packet steering, an attacker could intentionally route a victim connection&apos;s packet to a different worker to trigger emission/observation of the stateless reset token, then forge a QUIC Stateless Reset to immediately terminate the victim connection (remote DoS). The patch binds the derived token to the worker number by incorporating ngx_worker into the KDF input, making tokens differ per worker and preventing cross-worker token acquisition/abuse.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] NULL Pointer Dereference (Remote Denial of Service) in nginx/nginx</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/58</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/58</guid>
      <pubDate>Fri, 27 Feb 2026 15:44:07 GMT</pubDate>
      <description>Before the patch, the QUIC OpenSSL compatibility keylog callback discarded failures from ngx_quic_compat_set_encryption_secret(). Under memory pressure (allocation failure), the encryption context (secret-&amp;gt;ctx) could remain NULL, yet ngx_quic_compat_create_record() would proceed to encrypt and dereference the NULL ctx, crashing the NGINX worker. The patch checks the return value, marks the QUIC connection as errored to fail the handshake cleanly, and adds a NULL guard in record creation to prevent the crash.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Sensitive Data Exposure (Secrets persisted to cache) in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/57</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/57</guid>
      <pubDate>Thu, 26 Feb 2026 14:22:19 GMT</pubDate>
      <description>Before the patch, `ProcessEnv::read_all()` returned a serializable `EnvMap`, which could be automatically persisted into Turbopack/Next.js&apos; on-disk persistent cache. This meant any process environment variable (including secrets like API keys and tokens) could be written to disk and later recovered by anyone with read access to the cache directory (e.g., another local user, CI artifact consumers, or a compromised build agent). The patch introduces `TransientEnvMap` with `serialization = &quot;none&quot;` and changes `read_all()` to return it, preventing env vars from being persisted and forcing them to be re-read from the process environment after cache restore.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Denial of Service (DoS) / Amplification via Stateless Reset flooding in nginx/nginx</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/56</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/56</guid>
      <pubDate>Thu, 26 Feb 2026 14:19:34 GMT</pubDate>
      <description>Before the patch, nginx would generate and send a QUIC Stateless Reset for every incoming packet that triggered the stateless reset path, with no per-source rate limiting. An attacker could spoof many UDP packets (often with spoofed source IPs) to force the server to spend CPU on hashing/random generation and to emit many Stateless Reset packets, creating resource exhaustion and reflected traffic. The patch adds a per-second Bloom-filter-based limiter keyed by source address so repeated triggers from the same address are declined.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Cross-Site Scripting (XSS) in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/55</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/55</guid>
      <pubDate>Tue, 24 Feb 2026 20:59:12 GMT</pubDate>
      <description>The markdown conversion functionality was vulnerable to XSS attacks through malicious javascript: URLs that could bypass protocol filtering using obfuscation techniques like leading whitespace, HTML entity encoding, or case variations. The patch fixes this by delegating URI validation to Rails::HTML::Sanitizer.allowed_uri? which properly handles these bypass attempts.</description>
      <category>medium</category>
      <category>confirmed</category>
    </item>
    <item>
      <title>[HIGH] Authentication Bypass in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/54</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/54</guid>
      <pubDate>Tue, 24 Feb 2026 20:06:18 GMT</pubDate>
      <description>The code allowed SAML authentication to create duplicate user_auth records for SCIM-provisioned users instead of updating existing ones. An attacker could exploit this by logging in via SAML with a SCIM user&apos;s credentials to create a new auth record with their own AuthID, potentially bypassing access controls or creating authentication confusion.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Null Pointer Dereference in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/53</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/53</guid>
      <pubDate>Tue, 24 Feb 2026 19:55:06 GMT</pubDate>
      <description>The code failed to check if BIO_meth_new() returns NULL before passing the result to BIO_meth_set_* functions, causing a null pointer dereference. This could lead to application crashes and potential denial of service when SSL/TLS operations are initiated under memory pressure conditions.</description>
      <category>high</category>
      <category>confirmed</category>
    </item>
    <item>
      <title>[MEDIUM] Regular Expression Denial of Service (ReDoS) in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/52</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/52</guid>
      <pubDate>Tue, 24 Feb 2026 18:15:02 GMT</pubDate>
      <description>The minimatch library had a vulnerability where multiple consecutive asterisks (*) in glob patterns could cause exponential backtracking in the generated regular expression, leading to CPU exhaustion. The patch fixes this by coalescing multiple stars into a single star pattern, preventing the ReDoS condition.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Man-in-the-Middle Attack / Insufficient Certificate Validation in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/51</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/51</guid>
      <pubDate>Tue, 24 Feb 2026 09:33:41 GMT</pubDate>
      <description>The code before the patch used HTTP transport without proper TLS certificate validation when communicating with external image renderer services. This allowed attackers to intercept HTTPS communications through man-in-the-middle attacks, potentially exposing authentication tokens and sensitive data. The patch adds support for custom CA certificates to enable proper certificate validation.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Information Disclosure in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/50</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/50</guid>
      <pubDate>Tue, 24 Feb 2026 09:33:16 GMT</pubDate>
      <description>The custom inspect methods in various Rails classes could potentially expose sensitive internal state or configuration data through debug output, error messages, or logs. The patch replaces these with a controlled inspection mechanism that only shows explicitly whitelisted instance variables.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Information Disclosure in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/49</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/49</guid>
      <pubDate>Tue, 24 Feb 2026 09:32:55 GMT</pubDate>
      <description>The custom inspect methods in various Rails classes exposed sensitive internal state including cryptographic keys, secrets, and other confidential data in debug output, logs, and error messages. The patch replaces custom inspect methods with a standardized approach that only shows safe instance variables, preventing accidental leakage of sensitive information.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Race Condition in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/48</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/48</guid>
      <pubDate>Mon, 23 Feb 2026 17:06:28 GMT</pubDate>
      <description>The code had a concurrency bug where the follower&apos;s aggregation number was read without proper locking, allowing the inner-vs-follower classification decision to be made on stale data if the aggregation number changed concurrently. This could lead to incorrect task classification and potential data corruption in the aggregation system.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Open Redirect in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/47</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/47</guid>
      <pubDate>Mon, 23 Feb 2026 10:32:22 GMT</pubDate>
      <description>The ValidateRedirectTo function was vulnerable to open redirect attacks through URL fragments. Attackers could bypass path validation by using URL fragments containing dangerous patterns like &apos;../&apos; or &apos;//&apos;, which were not sanitized before the redirect. The patch fixes this by validating fragments and returning a sanitized URL string instead of the original user input.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Buffer Overflow/Out-of-bounds Memory Access in nginx/nginx</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/46</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/46</guid>
      <pubDate>Mon, 23 Feb 2026 10:32:03 GMT</pubDate>
      <description>The code failed to validate that sync sample values in MP4 stss atoms are 1-based as required by ISO 14496-12. A zero-valued stss entry caused the key_prefix calculation to exceed consumed samples, leading the backward loop in ngx_http_mp4_crop_stts_data() to walk past the beginning of the stts data buffer, causing out-of-bounds memory access.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Path Traversal in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/45</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/45</guid>
      <pubDate>Sat, 21 Feb 2026 04:12:12 GMT</pubDate>
      <description>The script accepts user-provided file paths without validation and directly converts them to file URLs, allowing attackers to access arbitrary files on the system. The patch adds proper path handling using pathToFileURL() which normalizes paths and prevents directory traversal attacks.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Cross-Site Scripting (XSS) in django/django</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/44</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/44</guid>
      <pubDate>Fri, 20 Feb 2026 14:47:10 GMT</pubDate>
      <description>The Django admin interface was vulnerable to XSS attacks when displaying model string representations that contained only whitespace or malicious scripts. The vulnerability occurred because whitespace-only strings were not properly sanitized before being rendered in HTML contexts, allowing attackers to inject malicious scripts through model __str__ methods.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Authorization Bypass in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/43</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/43</guid>
      <pubDate>Fri, 20 Feb 2026 08:43:39 GMT</pubDate>
      <description>The old authorization system used deprecated Compile method which performed authorization checks item-by-item during iteration, potentially allowing unauthorized access to resources due to race conditions or incomplete authorization state. The patch replaces this with FilterAuthorized using BatchCheck which performs more robust batch authorization before returning results.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Stack Overflow DoS in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/42</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/42</guid>
      <pubDate>Fri, 20 Feb 2026 04:55:06 GMT</pubDate>
      <description>The unhandled rejection filter module was being bundled twice, causing mutual recursion when handling unhandled Promise rejections. Each instance captured the other&apos;s handler, creating an infinite loop that would overflow the stack and crash the server on any unhandled rejection.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Hash Collision in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/41</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/41</guid>
      <pubDate>Thu, 19 Feb 2026 18:31:51 GMT</pubDate>
      <description>The code was truncating SHA256 hashes to only 10 characters when generating secret names, dramatically increasing collision probability from negligible to ~1 in 16^10. This allows attackers to craft field names that collide with existing secret field names, potentially accessing or modifying secrets they shouldn&apos;t have access to.</description>
      <category>medium</category>
      <category>confirmed</category>
    </item>
    <item>
      <title>[MEDIUM] Prototype Pollution in facebook/react</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/40</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/40</guid>
      <pubDate>Thu, 19 Feb 2026 17:05:56 GMT</pubDate>
      <description>The original code used JSON.parse with a reviver function that could potentially allow __proto__ property manipulation during RSC payload deserialization. The patch explicitly deletes __proto__ keys during the walking phase and moves away from the reviver approach to prevent prototype pollution attacks.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] HTTP Response Splitting / Cache Poisoning in pallets/flask</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/39</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/39</guid>
      <pubDate>Thu, 19 Feb 2026 17:05:30 GMT</pubDate>
      <description>The session was not properly marked as accessed when only reading session metadata (keys, length checks), allowing responses to be cached without the Vary: Cookie header. This could lead to cache poisoning where one user&apos;s cached response is served to another user, potentially exposing session-dependent data.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Information Disclosure in pallets/flask</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/38</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/38</guid>
      <pubDate>Thu, 19 Feb 2026 17:05:19 GMT</pubDate>
      <description>The session was not being marked as accessed when only checking keys/metadata, allowing caching proxies to cache pages for different users. This could lead to session data being served to wrong users through shared caches. The patch fixes this by tracking session access at the request context level.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Information Disclosure in pallets/flask</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/37</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/37</guid>
      <pubDate>Thu, 19 Feb 2026 17:05:03 GMT</pubDate>
      <description>The session was not being marked as accessed when only reading operations like checking keys or length occurred, causing the &apos;Vary: Cookie&apos; header to not be set. This could allow caching proxies to serve the same cached response to different users, potentially leaking session-dependent data between users.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Race Condition in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/36</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/36</guid>
      <pubDate>Thu, 19 Feb 2026 13:27:44 GMT</pubDate>
      <description>The code had a race condition vulnerability during database migrations where concurrent writes to legacy tables could occur during unified storage migrations in rolling upgrade scenarios. This could lead to data corruption or inconsistent state as multiple processes could simultaneously modify the same database tables without proper synchronization.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Authentication Bypass in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/35</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/35</guid>
      <pubDate>Thu, 19 Feb 2026 10:13:09 GMT</pubDate>
      <description>The code had a fallback authentication mechanism that would allow any request to bypass authorization checks when the primary authenticator failed. The fallback would accept requests with only namespace validation, effectively allowing unauthorized access to resources.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Access Control Bypass in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/34</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/34</guid>
      <pubDate>Wed, 18 Feb 2026 22:42:29 GMT</pubDate>
      <description>The scope resolver cache was not invalidated when datasources were deleted, causing stale name-to-UID mappings. When a datasource was deleted and a new one created with the same name, the cached entry would resolve to the deleted datasource&apos;s UID, leading to incorrect authorization decisions. The patch fixes this by invalidating the cache entry for the datasource name scope during deletion.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Information Disclosure in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/33</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/33</guid>
      <pubDate>Wed, 18 Feb 2026 22:42:17 GMT</pubDate>
      <description>The code exposed encrypted datasource secrets even when they were empty, potentially leaking secret metadata or encrypted empty values to unauthorized users. The patch fixes this by filtering out empty secrets before returning them in API responses.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Denial of Service / Resource Exhaustion in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/32</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/32</guid>
      <pubDate>Wed, 18 Feb 2026 17:06:36 GMT</pubDate>
      <description>The code had a missing size check for postponed request bodies in self-hosted setups, allowing attackers to send arbitrarily large payloads that would consume server memory and potentially crash the application. The patch ensures maxPostponedStateSize is consistently enforced across all code paths that buffer postponed bodies.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Information Disclosure in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/31</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/31</guid>
      <pubDate>Wed, 18 Feb 2026 12:05:51 GMT</pubDate>
      <description>The audit logging configuration was exposing sensitive data source request and response bodies by default. This could lead to credentials, API keys, and sensitive query data being logged in plaintext audit files accessible to system administrators.</description>
      <category>medium</category>
      <category>confirmed</category>
    </item>
    <item>
      <title>[HIGH] Authorization Bypass in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/29</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/29</guid>
      <pubDate>Tue, 17 Feb 2026 16:03:27 GMT</pubDate>
      <description>The rolebindings API was accessible to all authenticated users without proper authorization checks. This allowed any user to potentially view, modify, or create role bindings, leading to privilege escalation. The patch restricts access to only access policy identities.</description>
      <category>high</category>
      <category>confirmed</category>
    </item>
    <item>
      <title>[MEDIUM] HTTP Request Smuggling / Content Length Mismatch in nginx/nginx</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/27</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/27</guid>
      <pubDate>Tue, 17 Feb 2026 13:53:09 GMT</pubDate>
      <description>The vulnerability allows attackers to cause a mismatch between the Content-Length header sent to SCGI backends and the actual request body size in unbuffered mode. This can lead to HTTP request smuggling or desynchronization between nginx and SCGI backends, potentially allowing request smuggling attacks.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Code Injection in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/25</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/25</guid>
      <pubDate>Mon, 16 Feb 2026 14:59:50 GMT</pubDate>
      <description>The code used eval() to parse configuration data, which allows arbitrary Python code execution if an attacker can control the node_builtin_shareable_builtins configuration value. The patch replaces eval() with json.loads() to safely parse JSON data.</description>
      <category>high</category>
      <category>confirmed</category>
    </item>
    <item>
      <title>[MEDIUM] Authorization Bypass in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/22</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/22</guid>
      <pubDate>Mon, 16 Feb 2026 10:04:29 GMT</pubDate>
      <description>The endpoint allowed any authenticated user to access team member information without proper authorization checks. The patch adds a permission check requiring &apos;GetPermissions&apos; verb on the Team resource before returning member data.</description>
      <category>medium</category>
      <category>confirmed</category>
    </item>
    <item>
      <title>[MEDIUM] Resource Deletion Bypass in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/21</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/21</guid>
      <pubDate>Mon, 16 Feb 2026 08:00:28 GMT</pubDate>
      <description>The code allowed updating Repository resources to remove all finalizers, which would cause immediate deletion without proper cleanup when the resource is later deleted. This bypasses the intended cleanup workflow and could lead to orphaned resources or incomplete cleanup operations.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Authorization Bypass in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/20</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/20</guid>
      <pubDate>Mon, 16 Feb 2026 07:36:22 GMT</pubDate>
      <description>The files API endpoints were not enforcing quota limits, allowing authenticated users to bypass resource quotas and create unlimited files/dashboards. This could lead to resource exhaustion and denial of service. The patch adds quota checks before allowing POST/PUT operations on files.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Data Integrity Violation in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/19</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/19</guid>
      <pubDate>Sat, 14 Feb 2026 08:55:44 GMT</pubDate>
      <description>The Deduplicable module incorrectly treated virtual (generated) columns and regular columns as identical when they had the same name and type, causing regular columns to be silently excluded from INSERT/UPDATE operations. This resulted in NULL values being stored instead of the intended data, leading to silent data corruption.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Data Integrity Violation in rails/rails</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/18</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/18</guid>
      <pubDate>Sat, 14 Feb 2026 08:55:37 GMT</pubDate>
      <description>The vulnerability allows silent data corruption where regular columns can be incorrectly deduplicated with virtual columns, causing INSERT and UPDATE statements to exclude legitimate columns and store NULL values instead of the intended data. This occurs when the deduplication registry encounters a virtual column first, then treats a regular column with the same name and type as identical.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[CRITICAL] Code Injection in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/17</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/17</guid>
      <pubDate>Fri, 13 Feb 2026 19:07:44 GMT</pubDate>
      <description>The feature allows arbitrary webpack loader execution through import attributes without proper validation or sandboxing. An attacker can specify malicious loader code that gets executed during the build process, potentially leading to remote code execution on the build server.</description>
      <category>critical</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Authorization Bypass in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/16</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/16</guid>
      <pubDate>Fri, 13 Feb 2026 18:44:38 GMT</pubDate>
      <description>The MT IAM API server was using a no-op storage backend for RoleBindings, which silently dropped all write operations and returned empty results for reads. Additionally, the authorizer denied all access to rolebindings. This created an authorization bypass where RBAC role bindings were completely non-functional, potentially allowing unauthorized access or preventing proper access controls from being enforced.</description>
      <category>high</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Use-After-Free / Socket Corruption in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/15</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/15</guid>
      <pubDate>Fri, 13 Feb 2026 17:31:31 GMT</pubDate>
      <description>A race condition in HTTP keep-alive socket reuse allowed responseKeepAlive() to be called twice, corrupting socket state and causing the agent to hand an already-assigned socket to multiple requests. This could cause requests to hang, timeout, or potentially leak data between requests sharing the same corrupted socket.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[LOW] Race Condition (TOCTOU) in nodejs/node</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/14</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/14</guid>
      <pubDate>Fri, 13 Feb 2026 16:47:01 GMT</pubDate>
      <description>A Time-of-Check Time-of-Use race condition in worker thread process.cwd() caching allowed workers to cache stale directory values. The counter was incremented before the directory change completed, creating a race window where workers could read the old directory but cache it with the new counter value.</description>
      <category>low</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[HIGH] Privilege Escalation in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/11</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/11</guid>
      <pubDate>Wed, 11 Feb 2026 12:26:16 GMT</pubDate>
      <description>The vulnerability allows attackers to bypass time range restrictions on public dashboards when time selection is disabled. By manipulating request time parameters, attackers can access annotations outside the intended dashboard time range, potentially exposing sensitive data from unauthorized time periods.</description>
      <category>high</category>
      <category>confirmed</category>
    </item>
    <item>
      <title>[MEDIUM] XSS in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/10</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/10</guid>
      <pubDate>Wed, 11 Feb 2026 12:26:10 GMT</pubDate>
      <description>The code was vulnerable to Cross-Site Scripting (XSS) by directly rendering user-controlled data via dangerouslySetInnerHTML without sanitization. Malicious trace data could inject JavaScript that would execute in users&apos; browsers. The patch fixes this by sanitizing HTML content with DOMPurify before rendering.</description>
      <category>medium</category>
      <category>confirmed</category>
    </item>
    <item>
      <title>[MEDIUM] Header Injection in grafana/grafana</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/9</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/9</guid>
      <pubDate>Wed, 11 Feb 2026 00:53:34 GMT</pubDate>
      <description>The code forwards arbitrary HTTP headers from incoming requests to outgoing gRPC calls without proper validation or sanitization. An attacker can inject malicious headers that could be used to bypass security controls, manipulate downstream services, or perform request smuggling attacks.</description>
      <category>medium</category>
      <category>confirmed</category>
    </item>
    <item>
      <title>[MEDIUM] Prototype Pollution in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/6</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/6</guid>
      <pubDate>Tue, 10 Feb 2026 13:16:21 GMT</pubDate>
      <description>The code was directly accessing the `$typeof` property on potentially untrusted objects without proper validation, allowing attackers to exploit prototype pollution to inject malicious `$typeof` properties. The patch introduces a `readReactElementTypeof` function that uses `hasOwnProperty.call()` to safely check for the property&apos;s existence on the object itself rather than the prototype chain.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Integer Division by Zero / Panic-based DoS in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/5</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/5</guid>
      <pubDate>Tue, 10 Feb 2026 13:14:12 GMT</pubDate>
      <description>The code performed integer division without checking for division by zero, which could cause a panic and crash the application. The patch replaces direct division with checked_div() to handle zero divisors safely.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Integer Overflow / Denial of Service in vercel/next.js</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/4</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/4</guid>
      <pubDate>Tue, 10 Feb 2026 13:11:00 GMT</pubDate>
      <description>The code incorrectly used max() instead of min() to clamp worker counts, causing all systems to be treated as having 64+ cores and potentially overflowing usize on systems with many actual cores. This could lead to memory exhaustion or application crashes.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Path Traversal in facebook/react</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/3</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/3</guid>
      <pubDate>Tue, 10 Feb 2026 13:07:10 GMT</pubDate>
      <description>The code had improper path resolution that allowed attackers to access files outside the intended directory structure. The patch fixes relative path resolution by properly normalizing paths relative to PROJECT_ROOT instead of allowing arbitrary relative paths from the current working directory.</description>
      <category>medium</category>
      <category>confirmed</category>
    </item>
    <item>
      <title>[MEDIUM] Denial of Service (Stack Overflow) in facebook/react</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/2</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/2</guid>
      <pubDate>Tue, 10 Feb 2026 13:06:22 GMT</pubDate>
      <description>The recursive traversal of async node chains in visitAsyncNode causes stack overflow when processing deep async sequences. Database libraries creating long linear chains of async operations can trigger this DoS condition. The patch converts recursive traversal to iterative to prevent stack exhaustion.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
    <item>
      <title>[MEDIUM] Denial of Service in facebook/react</title>
      <link>https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/1</link>
      <guid isPermaLink="true">https://github.com/spaceraccoon/vulnerability-spoiler-alert/issues/1</guid>
      <pubDate>Tue, 10 Feb 2026 13:04:53 GMT</pubDate>
      <description>The code incorrectly checked for debugChannel existence instead of debugChannelReadable, causing the server to signal debug info availability even with write-only channels. This could cause clients to block indefinitely waiting for debug data that never arrives, resulting in a denial of service condition.</description>
      <category>medium</category>
      <category>unverified</category>
    </item>
  </channel>
</rss>