<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://cve.radiocsirt.org/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-02T10:47:04.809172+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>csirt@opendfir.org</email>
  </author>
  <link href="https://cve.radiocsirt.org" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/euvd-2026-352270</id>
    <title>EUVD-2026-352270</title>
    <updated>2026-10-02T10:47:04.811289+00:00</updated>
    <content>EUVD-2026-352270</content>
    <link href="https://cve.radiocsirt.org/vuln/euvd-2026-352270"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/fkie_cve-2026-73430</id>
    <title>fkie_cve-2026-73430</title>
    <updated>2026-10-02T10:47:04.811320+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>Russh is a Rust SSH client &amp; server library. Prior to 0.62.4, an unauthenticated SSH client can cause a denial of service by sending SSH_MSG_KEX_ECDH_INIT with a 32-byte all-zero Q_C value. Curve25519Kex::server_dh in russh/src/kex/curve25519.rs accepts the all-zero peer public value and computes an all-zero shared secret, after which compute_exchange_hash calls encode_mpint in russh/src/kex/mod.rs and indexes beyond the end of the input while skipping leading zero bytes. The resulting panic occurs before authentication and terminates the server key-exchange task. This issue is fixed in version 0.62.4.</p>
      </div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/fkie_cve-2026-73430"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/ghsa-5xvq-cp9x-6p6r</id>
    <title>GHSA-5xvq-cp9x-6p6r — Russh: Pre-auth remote panic via all-zero Curve25519 peer public value (encode_mpint OOB)</title>
    <updated>2026-10-02T10:47:04.811353+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> crates.io: russh</p>
<p>A pre-authentication denial-of-service panic in `russh` 0.62.2 (commit
`c4be19f1915c8682f4615c3fd50008512b474491`, current default branch `main` as
of 2026-07-22). An unauthenticated client sends a single `SSH_MSG_KEX_ECDH_INIT`
whose `Q_C` is 32 zero bytes. russh's Curve25519 KEX does not reject the
all-zero peer public value, so `server_dh()` computes the all-zero shared
secret and `compute_exchange_hash()` then calls `encode_mpint(&amp;shared.0, ...)`,
which indexes `s[i]` at `i == s.len()` and **panics** (`index out of bounds:
the len is 32 but the index is 32`) **before host-key signature verification**.
The server KEX task dies on the first KEX message, before authentication.</p>
<p>This is reachable with the **default** server configuration
(`Config::default()` → `Preferred::DEFAULT`, whose kex list includes
`curve25519-sha256`) and requires **no caller-supplied parameter**. It is
reproduced end-to-end against the unmodified real russh 0.62.2 library (a real
server + raw TCP client over TCP); the PoC below links the real crate, not a
copied snippet. The defect is still present on `main` HEAD (`v0.62.3`,
2026-07-22) and is not covered by any of the 11 published russh GHSA advisories
(GHSA-cqvm-j2r2-hwpg / CVE-2023-28113 is modp DH group validation, not
Curve25519).</p>
<p>Rust bounds-checked panics abort the task safely (no memory corruption / RCE);
the impact is remote **denial of service**.</p>
<p>## Details</p>
<p>`russh/src/kex/curve25519.rs`, `server_dh()` (server path; attacker = client):…</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/ghsa-5xvq-cp9x-6p6r"/>
  </entry>
</feed>
