Arbitrary Code Execution Affecting joblib package, versions [,1.1.1)


0.0
critical

Snyk CVSS

    Exploit Maturity Proof of concept
    Attack Complexity Low
    Confidentiality High
    Integrity High
    Availability High
Expand this section
NVD
9.8 critical

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk ID SNYK-PYTHON-JOBLIB-3027033
  • published 25 Sep 2022
  • disclosed 19 Sep 2022
  • credit Jim Lin

How to fix?

Upgrade joblib to version 1.1.1 or higher.

Overview

joblib is a Lightweight pipelining with Python functions

Affected versions of this package are vulnerable to Arbitrary Code Execution via the pre_dispatch flag in Parallel() class due to the eval() statement.

PoC

def f():
    return 1
p = Parallel(n_jobs=3, pre_dispatch="sys.exit(0)")
p(delayed(f)() for i in range(10)) # this will cause the system to exit