<?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>Sun, 04 Oct 2026 22:59:46 +0000</lastBuildDate>
    <item>
      <title>EUVD-2026-309022</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-309022</link>
      <description>EUVD-2026-309022</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-309022</guid>
    </item>
    <item>
      <title>fkie_cve-2026-41589</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2026-41589</link>
      <description>&lt;p&gt;Wish is an SSH server with defaults and a collection of middlewares. From version 2.0.0 to before version 2.0.1, the SCP middleware in charm.land/wish/v2 is vulnerable to path traversal attacks. A malicious SCP client can read arbitrary files from the server, write arbitrary files to the server, and create directories outside the configured root directory by sending crafted filenames containing ../ sequences over the SCP protocol. This issue has been patched in version 2.0.1.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Wish is an SSH server with defaults and a collection of middlewares. From version 2.0.0 to before version 2.0.1, the SCP middleware in charm.land/wish/v2 is vulnerable to path traversal attacks. A malicious SCP client can read arbitrary files from the server, write arbitrary files to the server, and create directories outside the configured root directory by sending crafted filenames containing ../ sequences over the SCP protocol. This issue has been patched in version 2.0.1.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2026-41589</guid>
    </item>
    <item>
      <title>GHSA-xjvp-7243-rg9h — Wish has SCP Path Traversal that allows arbitrary file read/write</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-xjvp-7243-rg9h</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: charm.land/wish/v2, Go: github.com/charmbracelet/wish&lt;/p&gt;
&lt;p&gt;## Summary&lt;/p&gt;
&lt;p&gt;The SCP middleware in `charm.land/wish/v2` is vulnerable to path traversal attacks. A malicious SCP client can read arbitrary files from the server, write arbitrary files to the server, and create directories outside the configured root directory by sending crafted filenames containing `../` sequences over the SCP protocol.&lt;/p&gt;
&lt;p&gt;## Affected Versions&lt;/p&gt;
&lt;p&gt;- `charm.land/wish/v2` — all versions through commit `72d67e6` (current `main`)
- `github.com/charmbracelet/wish` — likely all v1 versions (same code pattern)&lt;/p&gt;
&lt;p&gt;## Details&lt;/p&gt;
&lt;p&gt;### Root Cause&lt;/p&gt;
&lt;p&gt;The `fileSystemHandler.prefixed()` method in `scp/filesystem.go:42-48` is intended to confine all file operations to a configured root directory. However, it fails to validate that the resolved path remains within the root:&lt;/p&gt;
&lt;p&gt;```go
func (h *fileSystemHandler) prefixed(path string) string {
    path = filepath.Clean(path)
    if strings.HasPrefix(path, h.root) {
        return path
    }
    return filepath.Join(h.root, path)
}
```&lt;/p&gt;
&lt;p&gt;When `path` contains `../` components, `filepath.Clean` resolves them but does not reject them. The subsequent `filepath.Join(h.root, path)` produces a path that escapes the root directory.&lt;/p&gt;
&lt;p&gt;### Attack Vector 1: Arbitrary File Write (scp -t)&lt;/p&gt;
&lt;p&gt;When receiving files from a client (`scp -t`), filenames are parsed from the SCP protocol wire using regexes that accept arbitrary strings:&lt;/p&gt;
&lt;p&gt;```go
reNewFile   = regexp.MustCompile(`^C(\d{4}) (\d+) (.*)$`)
reNewFolder = regexp.MustCompile(`^D(\d{4}) 0 (.*)$`)
```&lt;/p&gt;
&lt;p&gt;The capt…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: charm.land/wish/v2, Go: github.com/charmbracelet/wish&lt;/p&gt;
&lt;p&gt;## Summary&lt;/p&gt;
&lt;p&gt;The SCP middleware in `charm.land/wish/v2` is vulnerable to path traversal attacks. A malicious SCP client can read arbitrary files from the server, write arbitrary files to the server, and create directories outside the configured root directory by sending crafted filenames containing `../` sequences over the SCP protocol.&lt;/p&gt;
&lt;p&gt;## Affected Versions&lt;/p&gt;
&lt;p&gt;- `charm.land/wish/v2` — all versions through commit `72d67e6` (current `main`)
- `github.com/charmbracelet/wish` — likely all v1 versions (same code pattern)&lt;/p&gt;
&lt;p&gt;## Details&lt;/p&gt;
&lt;p&gt;### Root Cause&lt;/p&gt;
&lt;p&gt;The `fileSystemHandler.prefixed()` method in `scp/filesystem.go:42-48` is intended to confine all file operations to a configured root directory. However, it fails to validate that the resolved path remains within the root:&lt;/p&gt;
&lt;p&gt;```go
func (h *fileSystemHandler) prefixed(path string) string {
    path = filepath.Clean(path)
    if strings.HasPrefix(path, h.root) {
        return path
    }
    return filepath.Join(h.root, path)
}
```&lt;/p&gt;
&lt;p&gt;When `path` contains `../` components, `filepath.Clean` resolves them but does not reject them. The subsequent `filepath.Join(h.root, path)` produces a path that escapes the root directory.&lt;/p&gt;
&lt;p&gt;### Attack Vector 1: Arbitrary File Write (scp -t)&lt;/p&gt;
&lt;p&gt;When receiving files from a client (`scp -t`), filenames are parsed from the SCP protocol wire using regexes that accept arbitrary strings:&lt;/p&gt;
&lt;p&gt;```go
reNewFile   = regexp.MustCompile(`^C(\d{4}) (\d+) (.*)$`)
reNewFolder = regexp.MustCompile(`^D(\d{4}) 0 (.*)$`)
```&lt;/p&gt;
&lt;p&gt;The capt…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-xjvp-7243-rg9h</guid>
    </item>
  </channel>
</rss>
