Bug 1902267 (CVE-2020-15256)

Summary: CVE-2020-15256 object-path: Prototype pollution could result in DoS or RCE
Product: [Other] Security Response Reporter: Michael Kaplan <mkaplan>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED NOTABUG QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: gghezzo, gparvin, jramanat, jweiser, stcannon, thee
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: object-path 0.11.5 Doc Type: If docs needed, set a value
Doc Text:
A flaw was found in object-path. A prototype pollution vulnerability has been found in `object-path` affecting the `set()` method. The vulnerability is limited to the `includeInheritedProps` mode (if version >= 0.11.0 is used), which has to be explicitly enabled by creating a new instance of `object-path` and setting the option `includeInheritedProps: true`, or by using the default `withInheritedProps` instance. The highest threat from this vulnerability is to data confidentiality and integrity as well as system availability.
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-12-03 05:33:52 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1902268    

Description Michael Kaplan 2020-11-27 14:27:52 UTC
A prototype pollution vulnerability has been found in `object-path` <= 0.11.4 affecting the `set()` method. The vulnerability is limited to the `includeInheritedProps` mode (if version >= 0.11.0 is used), which has to be explicitly enabled by creating a new instance of `object-path` and setting the option `includeInheritedProps: true`, or by using the default `withInheritedProps` instance. The default operating mode is not affected by the vulnerability if version >= 0.11.0 is used. Any usage of `set()` in versions < 0.11.0 is vulnerable. 

The issue is fixed in object-path version 0.11.5 As a workaround, don't use the `includeInheritedProps: true` options or the `withInheritedProps` instance if using a version >= 0.11.0.

References:
https://github.com/mariocasciaro/object-path/commit/2be3354c6c46215c7635eb1b76d80f1319403c68
https://github.com/mariocasciaro/object-path/security/advisories/GHSA-cwx2-736x-mf6w

Comment 2 Doran Moppert 2020-12-01 03:11:08 UTC
Mitigation:

Projects using object-path versions 0.11.0 through 0.11.4 are only exposed to this vulnerability if they use the setting `includeInheritedProps: true` or use the `withInheritedProps` instance.  If you are using these versions but this setting and class are both absent from your code, the vulnerability can not be exploited.

Comment 5 Doran Moppert 2020-12-03 05:21:44 UTC
Statement:

Red Hat Advanced Cluster Management for Kubernetes 2.1 uses an affected version of object-path, but the vulnerable functionality `includeInheritedProps` and `withInheritedProps` is not present.  A future update will include fixed versions of object-path, which will prevent this vulnerability being introduced.

Comment 6 Product Security DevOps Team 2020-12-03 05:33:52 UTC
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):

https://access.redhat.com/security/cve/cve-2020-15256