Description
picklescan before 1.0.3 contains a scanning bypass vulnerability in the scan_pytorch function that allows attackers to embed malicious magic numbers via dynamic eval using the __reduce__ trick. Attackers can craft malicious PyTorch payloads that evade picklescan detection while remaining executable, enabling arbitrary code execution when loaded with torch.load().
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| picklescan | picklescan | < 1.0.3 | 1.0.3 |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | picklescan | < 1.0.3 | 1.0.3 | GHSA-97f8-7cmv-76j2 |
References
- GitHub Security Advisory (GHSA-97f8-7cmv-76j2) vendor-advisory
- https://github.com/mmaitre314/picklescan/commit/2a8383cfeb4158567f9770d86597300c9e508d0f patch
- https://github.com/mmaitre314/picklescan/commit/134179474539648ba7dee1317959529fbd0e7f89 patch
- VulnCheck Advisory: picklescan - Scanning Bypass via Dynamic Eval in scan_pytorch third-party-advisory