serve: Use of Incorrectly-Resolved Name or Reference
CVE-2024-35198 is a critical-severity use of incorrectly-resolved name or reference vulnerability in serve from PyTorch, with a CVSS 3.1 base score of 9.8 out of 10. It can be exploited remotely over the network by an unauthenticated attacker, without any action from a user. Affected serve versions: >= 0.4.2, < 0.11.0. The record does not name a fixed version, so check the vendor advisory. There is no confirmed exploitation so far. EPSS estimates a 0.8% chance of exploitation within 30 days, higher than 57% of scored CVEs.
Critical severity: a successful attack would have severe impact.
What to do
- Update Torchserve to 0.11.0 or a later version.
- Read the advisory on github.com for workarounds and exact fixed builds.
- Until you can update, restrict network access to the affected service so it is not reachable from untrusted networks.
Affected products and versions
| Vendor | Product | Affected versions | Fixed in |
|---|---|---|---|
| Pytorch | serve | >= 0.4.2, < 0.11.0 | Not stated |
| Pytorch | Torchserve | 0.4.2 up to, but not including, 0.11.0 | 0.11.0 |
Version data comes from the organisation that assigned the CVE. Confirm against the vendor advisory before deciding you are unaffected.
How the severity score breaks down
- Attack vector
- NetworkCan be exploited remotely over a network, including the internet.
- Attack complexity
- LowNo special conditions are needed; the attack works reliably.
- Privileges required
- NoneNo account or login is needed.
- User interaction
- NoneNo action by a victim is required.
- Scope
- UnchangedImpact stays within the vulnerable component.
- Confidentiality
- HighAll data handled by the component can be read.
- Integrity
- HighData or code can be modified at will.
- Availability
- HighThe component can be taken down completely.
Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H. Scored by CNA (github.com).
Official description
TorchServe is a flexible and easy-to-use tool for serving and scaling PyTorch models in production. TorchServe 's check on allowed_urls configuration can be by-passed if the URL contains characters such as ".." but it does not prevent the model from being downloaded into the model store. Once a file is downloaded, it can be referenced without providing a URL the second time, which effectively bypasses the allowed_urls security check. Customers using PyTorch inference Deep Learning Containers (DLC) through Amazon SageMaker and EKS are not affected. This issue in TorchServe has been fixed by validating the URL without characters such as ".." before downloading see PR #3082. TorchServe release 0.11.0 includes the fix to address this vulnerability. Users are advised to upgrade. There are no known workarounds for this vulnerability.
Source: the CVE record as published by its numbering authority, via NVD and CVE.org.
The underlying weakness: Use of Incorrectly-Resolved Name or Reference
The product uses a name or reference to access a resource, but the name/reference resolves to a resource that is outside of the intended control sphere.
More Use of Incorrectly-Resolved Name or Reference vulnerabilities (CWE-706)
Timeline
- CVE record published.
- CISA published its SSVC assessment (exploitation: none, automatable: no, technical impact: partial).
- Record last changed materially (score, affected products, status or references).
References
Advisories
- github.com/pytorch/serve/security/advisories/GHSA-wxcx-gg9c-fwp2Third Party Advisory
Patches and release notes
Other vulnerabilities in serve
- 8.2 High severity
- 9.8 Critical severity
Recent Use of Incorrectly-Resolved Name or Reference vulnerabilities
- 7.5 High severity
- 7.5 High severity
- 8.2 High severity
- 7.5 High severity
- 7.5 High severity
- 8.8 High severity
Spotted an error? Tell us.