Advisory Database
  • Advisories
  • Dependency Scanning
  1. pypi
  2. ›
  3. ludwig
  4. ›
  5. CVE-2026-31238

CVE-2026-31238: Ludwig framework is vulnerable to insecure deserialization in its model serving component

May 12, 2026 (updated May 27, 2026)

The Ludwig framework thru 0.10.4 is vulnerable to insecure deserialization (CWE-502) in its model serving component. When starting a model server with the ludwig serve command, the framework loads model weight files using torch.load() without enabling the security-restrictive weights_only=True parameter. This default behavior allows the deserialization of arbitrary Python objects via the pickle module. An attacker can exploit this by providing a maliciously crafted PyTorch model file, leading to arbitrary code execution on the system hosting the Ludwig model server.

References

  • github.com/advisories/GHSA-xp5q-5q7g-q26r
  • github.com/ludwig-ai/ludwig
  • nvd.nist.gov/vuln/detail/CVE-2026-31238
  • www.notion.so/CVE-2026-31238-35d1e1393188819ea77ee98ca85a2878

Code Behaviors & Features

Detect and mitigate CVE-2026-31238 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →

Affected versions

All versions up to 0.10.4

Solution

Unfortunately, there is no solution available yet.

Impact 9.8 CRITICAL

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Learn more about CVSS

Weakness

  • CWE-502: Deserialization of Untrusted Data

Source file

pypi/ludwig/CVE-2026-31238.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 08 Nov 2026 00:15:51 +0000.