<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://cve.radiocsirt.org</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Tue, 06 Oct 2026 22:55:44 +0000</lastBuildDate>
    <item>
      <title>EUVD-2026-371971</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-371971</link>
      <description>EUVD-2026-371971</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-371971</guid>
    </item>
    <item>
      <title>fkie_cve-2026-63405</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2026-63405</link>
      <description>&lt;p&gt;AnyCable is a realtime server for reliable two-way communication that supports any backend. Prior to 1.6.15, the Pusher-compatible REST API in pusher/http.go includes the caller-supplied body_md5 value in the HMAC input but does not calculate the digest of the received request body or compare it with the signed value. An attacker who obtains a legitimate signed POST request can retain its query parameters and auth_signature while replacing the body, causing Handler and handleEvents to accept and broadcast attacker-selected event content. The absence of an auth_timestamp freshness check also allows the captured signature to be replayed indefinitely. This can forge server-side events, modify application state, or deliver attacker-controlled messages to WebSocket clients within the signed request&amp;#39;s application context. This issue is fixed in version 1.6.15.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;AnyCable is a realtime server for reliable two-way communication that supports any backend. Prior to 1.6.15, the Pusher-compatible REST API in pusher/http.go includes the caller-supplied body_md5 value in the HMAC input but does not calculate the digest of the received request body or compare it with the signed value. An attacker who obtains a legitimate signed POST request can retain its query parameters and auth_signature while replacing the body, causing Handler and handleEvents to accept and broadcast attacker-selected event content. The absence of an auth_timestamp freshness check also allows the captured signature to be replayed indefinitely. This can forge server-side events, modify application state, or deliver attacker-controlled messages to WebSocket clients within the signed request&amp;#39;s application context. This issue is fixed in version 1.6.15.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2026-63405</guid>
    </item>
    <item>
      <title>GHSA-5p54-whvp-x327 — AnyCable: Pusher REST API Does Not Verify Request Body MD5 Enabling Signed-Request Replay with Arbitrary Body</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-5p54-whvp-x327</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: github.com/anycable/anycable&lt;/p&gt;
&lt;p&gt;### Summary
The Pusher-compatible REST API includes `body_md5` in the HMAC signature string but never computes or verifies the MD5 of the received HTTP body, allowing anyone who observes a signed request to replay it with an entirely different body.&lt;/p&gt;
&lt;p&gt;### Details
In `pusher/http.go`, the `Handler` function extracts `body_md5` from the URL query string (line 169) and includes it verbatim in `stringToSign` (line 175). It then verifies `HMAC(stringToSign, secret) == auth_signature`. After verification succeeds, `handleEvents` reads and parses `r.Body` (lines 201-212) without ever computing `md5(body)` and comparing it against the `body_md5` that was signed. The Pusher protocol specification explicitly requires the server to verify this digest to prevent body-substitution attacks. There is also no `auth_timestamp` staleness check, so replays are valid indefinitely.&lt;/p&gt;
&lt;p&gt;### PoC
1. Capture a legitimate signed POST to `/apps/&amp;lt;app_id&amp;gt;/events?auth_key=K&amp;amp;auth_timestamp=T&amp;amp;auth_version=1.0&amp;amp;body_md5=LEGIT_MD5&amp;amp;auth_signature=SIG` carrying body `{&amp;#34;name&amp;#34;:&amp;#34;safe-event&amp;#34;,&amp;#34;channel&amp;#34;:&amp;#34;ch&amp;#34;,&amp;#34;data&amp;#34;:&amp;#34;...&amp;#34;}` (e.g., from TLS-terminating load-balancer logs).
2. Send a new request with the same query string parameters but a different body:
   `{&amp;#34;name&amp;#34;:&amp;#34;injected-event&amp;#34;,&amp;#34;channel&amp;#34;:&amp;#34;admin&amp;#34;,&amp;#34;data&amp;#34;:&amp;#34;malicious-payload&amp;#34;}`
3. The server accepts the request (HMAC over `stringToSign` matches the original) and broadcasts the injected event to all subscribers of `admin`.&lt;/p&gt;
&lt;p&gt;### Impact
An attacker who can read any single sig…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: github.com/anycable/anycable&lt;/p&gt;
&lt;p&gt;### Summary
The Pusher-compatible REST API includes `body_md5` in the HMAC signature string but never computes or verifies the MD5 of the received HTTP body, allowing anyone who observes a signed request to replay it with an entirely different body.&lt;/p&gt;
&lt;p&gt;### Details
In `pusher/http.go`, the `Handler` function extracts `body_md5` from the URL query string (line 169) and includes it verbatim in `stringToSign` (line 175). It then verifies `HMAC(stringToSign, secret) == auth_signature`. After verification succeeds, `handleEvents` reads and parses `r.Body` (lines 201-212) without ever computing `md5(body)` and comparing it against the `body_md5` that was signed. The Pusher protocol specification explicitly requires the server to verify this digest to prevent body-substitution attacks. There is also no `auth_timestamp` staleness check, so replays are valid indefinitely.&lt;/p&gt;
&lt;p&gt;### PoC
1. Capture a legitimate signed POST to `/apps/&amp;lt;app_id&amp;gt;/events?auth_key=K&amp;amp;auth_timestamp=T&amp;amp;auth_version=1.0&amp;amp;body_md5=LEGIT_MD5&amp;amp;auth_signature=SIG` carrying body `{&amp;#34;name&amp;#34;:&amp;#34;safe-event&amp;#34;,&amp;#34;channel&amp;#34;:&amp;#34;ch&amp;#34;,&amp;#34;data&amp;#34;:&amp;#34;...&amp;#34;}` (e.g., from TLS-terminating load-balancer logs).
2. Send a new request with the same query string parameters but a different body:
   `{&amp;#34;name&amp;#34;:&amp;#34;injected-event&amp;#34;,&amp;#34;channel&amp;#34;:&amp;#34;admin&amp;#34;,&amp;#34;data&amp;#34;:&amp;#34;malicious-payload&amp;#34;}`
3. The server accepts the request (HMAC over `stringToSign` matches the original) and broadcasts the injected event to all subscribers of `admin`.&lt;/p&gt;
&lt;p&gt;### Impact
An attacker who can read any single sig…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-5p54-whvp-x327</guid>
    </item>
  </channel>
</rss>
