<?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-03T08:32:01.262432+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/cve-2026-46673</id>
    <title>CVE-2026-46673 — Russh: Unchecked CryptoVec allocation and growth handling is reachable from local agent inputs in current russh release…</title>
    <updated>2026-10-03T08:32:01.264162+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Eugeny russh</p>
<p>Russh is a Rust SSH client &amp; server library. Prior to version 0.60.3, CryptoVec used unchecked capacity growth, unchecked length arithmetic, and unsafe allocation/locking paths. In current russh releases, local SSH agent peers could still feed attacker-controlled frame lengths into buffer growth before validation. In older russh releases before 0.58.0, remote SSH traffic also reached CryptoVec through transport and compression buffers. This issue has been patched in version 0.60.3.</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/cve-2026-46673"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/ghsa-g9f8-wqj9-fjw5</id>
    <title>GHSA-g9f8-wqj9-fjw5 — Russh: Unchecked CryptoVec allocation and growth handling is reachable</title>
    <updated>2026-10-03T08:32:01.264216+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> crates.io: russh-cryptovec, crates.io: russh</p>
<p>### Title
Unchecked `CryptoVec` allocation and growth handling was reachable from local agent inputs in current `russh` releases and from remote SSH traffic in historical pre-`0.58.0` releases</p>
<p>### Summary
`CryptoVec` used unchecked capacity growth, unchecked length arithmetic, and unsafe allocation/locking paths. In current `russh` releases, local SSH agent peers could still feed attacker-controlled frame lengths into buffer growth before validation. In older `russh` releases before `0.58.0`, remote SSH traffic also reached `CryptoVec` through transport and compression buffers.</p>
<p>### Details
The underlying unsafe paths were in `CryptoVec`:</p>
<p>- `cryptovec/src/cryptovec.rs`
  - unchecked capacity growth
  - unchecked length arithmetic in growth callers
  - raw allocation and reallocation paths coupled to those sizes
- `cryptovec/src/platform/unix.rs`
  - `mlock` / `munlock` previously accepted zero-length calls and performed null-pointer validation inside the `unsafe` OS-call path</p>
<p>There are two relevant reachability stories:</p>
<p>1. current local reachability in `russh`</p>
<p>- `russh/src/keys/agent/client.rs`
  - `AgentClient::read_response()` read a peer-supplied `u32` length and then resized `self.buf` to that value before reading the payload
- `russh/src/keys/agent/server.rs`
  - `Connection::run()` read a peer-supplied `u32` length and then resized `self.buf` to that value before reading the payload</p>
<p>This is the path that still existed in current `0.60.x` releases before the fix,…</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/ghsa-g9f8-wqj9-fjw5"/>
  </entry>
</feed>
