{"id":"CVE-2026-24747","aliases":["AZL-75293","AZL-75588","BIT-pytorch-2026-24747","DEBIAN-CVE-2026-24747","EUVD-2026-4738","GHSA-63cw-57p8-fm3p","PYSEC-2026-1856","PYSEC-2026-2286","UBUNTU-CVE-2026-24747"],"status":"published","title":"PyTorch Vulnerable to Remote Code Execution via Untrusted Checkpoint Files","description":"PyTorch is a Python package that provides tensor computation. Prior to version 2.10.0, a vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution. Version 2.10.0 fixes the issue.","severity":{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.00799,"percentile":0.56812,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-502","CWE-94"],"published":"2026-01-27T20:10:54Z","modified":"2026-11-04T03:15:10Z","fixes":[{"ecosystem":"PyPI","package":"torch","fixed_in":["2.10.0"],"sources":["ghsa","osv"]},{"ecosystem":"Azure Linux:3","package":"pytorch","fixed_in":["2.2.2-11"],"sources":["osv"]},{"ecosystem":"Azure Linux:2","package":"pytorch","fixed_in":["2.0.0-14"],"sources":["osv"]},{"ecosystem":"Bitnami","package":"pytorch","fixed_in":["2.10.0"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"pytorch","fixed_in":["2.12.0+dfsg2-1"],"sources":["osv"]},{"ecosystem":"PyPI","package":"pytorch","fixed_in":["2.10.0"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"torch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.10.0"}]}]},{"source":"osv","ecosystem":"Azure Linux:3","package":"pytorch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.2.2-11"}]}]},{"source":"osv","ecosystem":"Azure Linux:2","package":"pytorch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.0.0-14"}]}]},{"source":"osv","ecosystem":"Bitnami","package":"pytorch","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"2.10.0"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"pytorch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.13.1+dfsg-4","1.13.1+dfsg-5","2.0.1+dfsg-1","2.0.1+dfsg-1~exp1","2.0.1+dfsg-2","2.0.1+dfsg-4","2.0.1+dfsg-5","2.1.2+dfsg-1","2.1.2+dfsg-2","2.1.2+dfsg-4","2.12.0+dfsg2-1","2.12.0+dfsg2-1~exp1","2.12.0+dfsg2-1~exp2","2.12.0+dfsg2-2","2.12.0+dfsg2-3","2.12.0+dfsg2-4","2.12.1+dfsg-1","2.4.1-1","2.4.1-3","2.4.1-4","2.5.0+dfsg-1","2.5.1+dfsg-1","2.5.1+dfsg-3","2.5.1+dfsg-4","2.6.0+dfsg-1","2.6.0+dfsg-1~exp1","2.6.0+dfsg-2","2.6.0+dfsg-3","2.6.0+dfsg-4","2.6.0+dfsg-5","2.6.0+dfsg-7","2.6.0+dfsg-8","2.6.0+dfsg-9","2.6.0~rc9+dfsg-1~exp1","2.9.0+dfsg-1~exp1","2.9.0+dfsg-1~exp2","2.9.1+dfsg-1~exp1","2.9.1+dfsg-1~exp2"]},{"source":"osv","ecosystem":"Debian:13","package":"pytorch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.12.0+dfsg2-1","2.12.0+dfsg2-1~exp1","2.12.0+dfsg2-1~exp2","2.12.0+dfsg2-2","2.12.0+dfsg2-3","2.12.0+dfsg2-4","2.12.1+dfsg-1","2.6.0+dfsg-7","2.6.0+dfsg-8","2.6.0+dfsg-9","2.9.0+dfsg-1~exp1","2.9.0+dfsg-1~exp2","2.9.1+dfsg-1~exp1","2.9.1+dfsg-1~exp2"]},{"source":"osv","ecosystem":"Debian:14","package":"pytorch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.12.0+dfsg2-1"}]}],"versions":["2.12.0+dfsg2-1~exp1","2.12.0+dfsg2-1~exp2","2.6.0+dfsg-7","2.6.0+dfsg-8","2.6.0+dfsg-9","2.9.0+dfsg-1~exp1","2.9.0+dfsg-1~exp2","2.9.1+dfsg-1~exp1","2.9.1+dfsg-1~exp2"]},{"source":"osv","ecosystem":"PyPI","package":"torch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.10.0"}]}],"versions":["1.0.0","1.0.1","1.1.0","1.10.0","1.10.1","1.10.2","1.11.0","1.12.0","1.12.1","1.13.0","1.13.1","1.2.0","1.3.0","1.3.1","1.4.0","1.5.0","1.5.1","1.6.0","1.7.0","1.7.1","1.8.0","1.8.1","1.9.0","1.9.1","2.0.0","2.0.1","2.1.0","2.1.1","2.1.2","2.2.0","2.2.1","2.2.2","2.3.0","2.3.1","2.4.0","2.4.1","2.5.0","2.5.1","2.6.0","2.7.0","2.7.1","2.8.0","2.9.0","2.9.1"]},{"source":"osv","ecosystem":"PyPI","package":"pytorch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.10.0"}]}],"versions":["0.1.2","1.0.2"]},{"source":"osv","ecosystem":"PyPI","package":"torch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.10.0"}]}],"versions":["1.0.0","1.0.1","1.1.0","1.10.0","1.10.1","1.10.2","1.11.0","1.12.0","1.12.1","1.13.0","1.13.1","1.2.0","1.3.0","1.3.1","1.4.0","1.5.0","1.5.1","1.6.0","1.7.0","1.7.1","1.8.0","1.8.1","1.9.0","1.9.1","2.0.0","2.0.1","2.1.0","2.1.1","2.1.2","2.2.0","2.2.1","2.2.2","2.3.0","2.3.1","2.4.0","2.4.1","2.5.0","2.5.1","2.6.0","2.7.0","2.7.1","2.8.0","2.9.0","2.9.1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"pytorch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.7.1-7","1.8.1-4"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"pytorch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.6.0+dfsg-5build1","2.6.0+dfsg-7"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"pytorch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.9.1+dfsg-1~exp1ubuntu2","2.12.1+dfsg-1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"pytorch","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.6.0+dfsg-7","2.6.0+dfsg-9","2.9.1+dfsg-1~exp1ubuntu2"]}],"products":[{"vendor":"linuxfoundation","product":"pytorch"},{"vendor":"pytorch","product":"pytorch"},{"vendor":"red hat","product":"red hat openshift ai (rhoai)"},{"vendor":"red hat","product":"red hat openshift ai 2.25"}],"references":[{"url":"https://github.com/pytorch/pytorch/security/advisories/GHSA-63cw-57p8-fm3p","tags":["x_refsource_CONFIRM","Vendor Advisory","advisory","web","report"]},{"url":"https://github.com/pytorch/pytorch/issues/163105","tags":["x_refsource_MISC","Exploit","Issue Tracking","evidence","report","web"]},{"url":"https://github.com/pytorch/pytorch/163122/commit/954dc5183ee9205cbe79876ad05dd2d9ae752139","tags":["x_refsource_MISC","Broken Link","web","fix","report"]},{"url":"https://github.com/pytorch/pytorch/releases/tag/v2.10.0","tags":["x_refsource_MISC","Product","Release Notes","article","web","advisory","report"]},{"url":"https://access.redhat.com/security/cve/CVE-2026-24747","tags":["vdb-entry","x_refsource_REDHAT","web","advisory"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2433612","tags":["issue-tracking","x_refsource_REDHAT","web","report"]},{"url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-24747.json","tags":["x_sadp-csaf-vex","web"]},{"url":"https://access.redhat.com/errata/RHSA-2026:24977","tags":["vendor-advisory","x_refsource_REDHAT","web","advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-24747","tags":["web","advisory"]},{"url":"https://github.com/advisories/GHSA-63cw-57p8-fm3p","tags":["advisory"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/pytorch/PYSEC-2026-1856.yaml","tags":["web"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/torch/PYSEC-2026-2286.yaml","tags":["web"]},{"url":"https://github.com/pytorch/pytorch","tags":["package"]},{"url":"https://pypi.org/project/pytorch","tags":["web","package"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/24xxx/CVE-2026-24747.json","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-24747","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-24747","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-24747","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2026-24747","title":"PyTorch Vulnerable to Remote Code Execution via Untrusted Checkpoint Files","description":"PyTorch is a Python package that provides tensor computation. Prior to version 2.10.0, a vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution. Version 2.10.0 fixes the issue.","status":"published","published":"2026-01-27T21:13:46.878Z","modified":"2026-07-15T01:17:00.817Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"cna"},{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"adp"}],"cwes":["CWE-502","CWE-94","CWE-502"],"updated_at":"2026-11-02T14:19:50.575061Z"}],"euvd":[{"id":"EUVD-2026-4738","description":"PyTorch is a Python package that provides tensor computation. Prior to version 2.10.0, a vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution. Version 2.10.0 fixes the issue.","status":"published","published":"2026-01-27T21:13:46Z","modified":"2026-07-15T01:17:00Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T18:19:55.318488Z"}],"ghsa":[{"id":"GHSA-63cw-57p8-fm3p","title":"PyTorch Vulnerable to Remote Code Execution via Untrusted Checkpoint Files","description":"### Summary\n\nA vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution.\n\n### Vulnerability Details\n\nThe `weights_only=True` unpickler failed to properly validate pickle opcodes and storage metadata, allowing:\n\n1. **Heap memory corruption** via `SETITEM`/`SETITEMS` opcodes applied to non-dictionary types\n2. **Storage size mismatch** between declared element count and actual data in the archive\n\n### Impact\n\nAn attacker who can convince a user to load a malicious checkpoint file may achieve arbitrary code execution in the context of the victim's process.\n\n\n# Credit\nJi'an Zhou","status":"published","published":"2026-01-27T20:10:54Z","modified":"2026-11-04T03:06:49Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-94","CWE-502"],"updated_at":"2026-11-04T03:22:00.099882Z"}],"nvd":[{"id":"CVE-2026-24747","description":"PyTorch is a Python package that provides tensor computation. Prior to version 2.10.0, a vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution. Version 2.10.0 fixes the issue.","status":"published","published":"2026-01-27T22:15:56.47Z","modified":"2026-07-15T02:18:50.693Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"secondary"},{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"secondary"}],"cwes":["CWE-94","CWE-502"],"updated_at":"2026-11-02T14:12:04.769088Z"}],"osv":[{"id":"CVE-2026-24747","title":"PyTorch Vulnerable to Remote Code Execution via Untrusted Checkpoint Files","description":"PyTorch is a Python package that provides tensor computation. Prior to version 2.10.0, a vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution. Version 2.10.0 fixes the issue.","status":"published","published":"2026-01-27T21:13:46.878Z","modified":"2026-10-28T03:00:05.164003592Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-502","CWE-94"],"updated_at":"2026-11-02T15:44:59.438965Z"},{"id":"DEBIAN-CVE-2026-24747","description":"PyTorch is a Python package that provides tensor computation. Prior to version 2.10.0, a vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution. Version 2.10.0 fixes the issue.","status":"published","published":"2026-01-27T22:15:56.47Z","modified":"2026-10-01T03:03:00.832212295Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:53.877573Z"},{"id":"GHSA-63cw-57p8-fm3p","title":"PyTorch Vulnerable to Remote Code Execution via Untrusted Checkpoint Files","description":"### Summary\n\nA vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution.\n\n### Vulnerability Details\n\nThe `weights_only=True` unpickler failed to properly validate pickle opcodes and storage metadata, allowing:\n\n1. **Heap memory corruption** via `SETITEM`/`SETITEMS` opcodes applied to non-dictionary types\n2. **Storage size mismatch** between declared element count and actual data in the archive\n\n### Impact\n\nAn attacker who can convince a user to load a malicious checkpoint file may achieve arbitrary code execution in the context of the victim's process.\n\n\n# Credit\nJi'an Zhou","status":"published","published":"2026-01-27T20:10:54Z","modified":"2026-11-04T03:15:10.870748916Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-502","CWE-94"],"updated_at":"2026-11-04T03:25:28.514393Z"},{"id":"PYSEC-2026-1856","title":"PyTorch Vulnerable to Remote Code Execution via Untrusted Checkpoint Files","description":"### Summary\n\nA vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution.\n\n### Vulnerability Details\n\nThe `weights_only=True` unpickler failed to properly validate pickle opcodes and storage metadata, allowing:\n\n1. **Heap memory corruption** via `SETITEM`/`SETITEMS` opcodes applied to non-dictionary types\n2. **Storage size mismatch** between declared element count and actual data in the archive\n\n### Impact\n\nAn attacker who can convince a user to load a malicious checkpoint file may achieve arbitrary code execution in the context of the victim's process.\n\n\n# Credit\nJi'an Zhou","status":"published","published":"2026-07-07T16:03:20.837738Z","modified":"2026-07-13T07:26:23.70161178Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:52:55.06457Z"},{"id":"PYSEC-2026-2286","description":"PyTorch is a Python package that provides tensor computation. Prior to version 2.10.0, a vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution. Version 2.10.0 fixes the issue.","status":"published","published":"2026-01-27T22:15:56.47Z","modified":"2026-07-13T07:26:23.70161178Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:52:55.537808Z"},{"id":"UBUNTU-CVE-2026-24747","description":"PyTorch is a Python package that provides tensor computation. Prior to version 2.10.0, a vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution. Version 2.10.0 fixes the issue.","status":"published","published":"2026-01-27T22:15:00Z","modified":"2026-10-17T12:58:07.533001886Z","cvss":[{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"},{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T16:56:08.726452Z"},{"id":"AZL-75293","title":"CVE-2026-24747 affecting package pytorch for versions less than 2.2.2-11","description":"PyTorch is a Python package that provides tensor computation. Prior to version 2.10.0, a vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution. Version 2.10.0 fixes the issue.","status":"published","published":"2026-01-27T22:15:56Z","modified":"2026-11-05T05:40:51Z","updated_at":"2026-11-05T16:41:24.456773Z"},{"id":"AZL-75588","title":"CVE-2026-24747 affecting package pytorch for versions less than 2.0.0-14","description":"PyTorch is a Python package that provides tensor computation. Prior to version 2.10.0, a vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution. Version 2.10.0 fixes the issue.","status":"published","published":"2026-01-27T22:15:56Z","modified":"2026-04-21T04:38:58.806292Z","updated_at":"2026-11-02T15:28:09.474476Z"},{"id":"BIT-pytorch-2026-24747","title":"PyTorch Vulnerable to Remote Code Execution via Untrusted Checkpoint Files","description":"PyTorch is a Python package that provides tensor computation. Prior to version 2.10.0, a vulnerability in PyTorch's `weights_only` unpickler allows an attacker to craft a malicious checkpoint file (`.pth`) that, when loaded with `torch.load(..., weights_only=True)`, can corrupt memory and potentially lead to arbitrary code execution. Version 2.10.0 fixes the issue.","status":"published","published":"2026-01-29T08:50:25.994Z","modified":"2026-09-08T08:48:24.869914471Z","updated_at":"2026-11-02T15:28:35.111822Z"}]}}
