Snorkel Library Insecure Deserialization Vulnerability in MultitaskClassifier Allowing Arbitrary Code Execution
Vulnerability
A vulnerability allowing insecure deserialization has been identified in the Snorkel library, affecting versions through 0.10.0. The issue resides in the MultitaskClassifier.load() method, where model weight files are loaded using torch.load() without the security-focused weights_only=True parameter. This oversight permits the deserialization of arbitrary Python objects via the Pickle module. A remote attacker could exploit this vulnerability by supplying a maliciously crafted model file, leading to arbitrary code execution on the victim's system when the file is processed with the vulnerable method.
Impact
Exploitation of this vulnerability allows for arbitrary code execution on the system where the vulnerable Snorkel library is used.
Remediation
Users can update to Snorkel version 0.10.1 or later, where this vulnerability has been addressed.
Vulnerability Rating
Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.
