RCE in Derrickgilland Pydash
CVE-2023-26145
This affects versions of the package pydash before 6.0.0. A number of pydash methods such as pydash.objects.invoke() and pydash.collections.invoke_map() accept dotted paths (Deep Path Strings) to target a nested Python object, relative to the original source object. These paths can be used to target internal class attributes and dict items, to retrieve, modify or invoke nested Python objects. **Note:** The pydash.objects.invoke() method is vulnerable to Command Injection when the following prerequisites are satisfied: 1) The source object (argument 1) is not a built-in object such as list/dict (otherwise, the __init__.__globals__ path is not accessible) 2) The attacker has control over argument 2 (the path string) and argument 3 (the argument to pass to the invoked method) The pydash.collections.invoke_map() method is also vulnerable, but is harder to exploit as the attacker does not have direct control over the argument to be passed to the invoked function.
Vulnerability class: Command Injection (OS Command Injection)
EPSS: 0.029 (85.6th percentile) — read the EPSS interpretation.
CVSS v3 metric
CVSS v3 base score 7.4 (High). Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N.
Affected products
- Derrickgilland Pydash
- N/a Pydash — versions 0
Weakness classification (CWE)
References
- report@snyk.io (Third Party Advisory)
- report@snyk.io (Exploit, Third Party Advisory)
- report@snyk.io (Patch)
Frequently asked questions
- What is CVE-2023-26145?
- CVE-2023-26145 is a high-severity vulnerability in Derrickgilland Pydash, classified under OS Command Injection. CVSS score: 7.4/10. Published 2023-09-28.
- How severe is CVE-2023-26145?
- High severity. CVSS v3 base score is 7.4 out of 10.