<?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-02T23:23:37.863780+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-57516</id>
    <title>CVE-2026-57516 — Ray &lt; 2.56.0 Unsafe Deserialization RCE via WebDataset Reader</title>
    <updated>2026-10-02T23:23:37.865587+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Anyscale, Inc Ray</p>
<p>Ray prior to 2.56.0 contains an unsafe deserialization vulnerability in the WebDataset reader that allows attackers to achieve remote code execution by supplying a malicious tar archive to the read_webdataset() function. The _default_decoder() function in webdataset_datasource.py unconditionally calls pickle.loads() on tar entries with .pkl/.pickle extensions and torch.load() with weights_only=False on .pt/.pth entries, executing arbitrary code inside Ray remote workers on every worker that processes the malicious archive.</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/cve-2026-57516"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/ghsa-hhrp-gw25-jr43</id>
    <title>GHSA-hhrp-gw25-jr43 — Ray: Arbitrary code execution via ray.data.read_webdataset default decoder: pickle.loads(value) and torch.load(weights_…</title>
    <updated>2026-10-02T23:23:37.865641+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: ray</p>
<p>## Summary</p>
<p>`ray.data.read_webdataset(paths=...)` is a `@PublicAPI(stability="alpha")`
reader for WebDataset-format TAR files. Its default `decoder=True` invokes
`_default_decoder` on every sample's keys, which routes file extension to a
decoder by extension. Two of those branches deserialize attacker-controlled
bytes with no validation:</p>
<p>- `.pickle` / `.pkl` -&gt; `pickle.loads(value)`
- `.pt`     / `.pth` -&gt; `torch.load(io.BytesIO(value), weights_only=False)`</p>
<p>Both fire during a standard `ray.data.read_webdataset(...).take_all()` /
`.iter_batches()` call. No flags, no opt-in, no environment variable.
An attacker who can supply a TAR (via S3 share, HuggingFace Hub mirror,
email attachment, model-zoo, or any HTTP URL the user passes to
`read_webdataset`) achieves arbitrary code execution in the calling
Ray process at schema-sample time, before row data is consumed.</p>
<p>This is the same class of bug as GHSA-mw35-8rx3-xf9r (Parquet Arrow
Extension Type cloudpickle deserialization, patched in 2.55.0): standard
data-loading API, attacker-controlled file format, deserialization gadget
invoked transparently. The 2.55.0 patch addressed
`tensor_extensions/arrow.py:_deserialize_with_fallback` and made cloudpickle
opt-in via `RAY_DATA_AUTOLOAD_CLOUDPICKLE_TENSOR_METADATA=1`. The
WebDataset path is a different code site and was not touched.</p>
<p>## Vulnerable code (HEAD `a157d4d`)</p>
<p>`python/ray/data/_internal/datasource/webdataset_datasource.py` lines
175-225, the `_default_decoder` function:</p>
<p>``…</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/ghsa-hhrp-gw25-jr43"/>
  </entry>
</feed>
