CVE Catalog

CVE-2026-31238

Critical
Published: Translated: NVD NIST

Summary

The Ludwig framework up to version 0.10.4 is vulnerable to insecure deserialization in its model serving component. When starting a model server with the ludwig serve command, the framework loads model weight files without enabling the security-restrictive weights_only=True parameter, allowing the deserialization of arbitrary Python objects.

Risk Assessment

An attacker can exploit this vulnerability by providing a maliciously crafted PyTorch model file, leading to arbitrary code execution on the system hosting the Ludwig model server. This poses a significant security risk to the system.

Recommendation

It is recommended to update the Ludwig framework to the latest version and enable the weights_only=True parameter when loading model weight files to minimize the risk of unauthorized deserialization.

Related vulnerabilities

Original NVD description (English source)

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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS