Bug 1903588 (CVE-2020-29363)

Summary: CVE-2020-29363 p11-kit: out-of-bounds write in p11_rpc_buffer_get_byte_array_value function in rpc-message.c
Product: [Other] Security Response Reporter: Guilherme de Almeida Suckevicz <gsuckevi>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: cbuissar, crypto-team, dueno, erik-fedora, kai-engert-fedora, mike, rh-spice-bugs, security-response-team, stefw
Target Milestone: ---Keywords: Reopened, Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: p11-kit 0.23.22 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-05-18 20:37:47 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: 1906816, 1907909, 1907911, 1909018    
Bug Blocks: 1902080    

Description Guilherme de Almeida Suckevicz 2020-12-02 12:55:15 UTC
The p11_rpc_buffer_get_byte_array_value function can write past the end of a heap buffer using memcpy due to a missing length check in p11_rpc_buffer_get_attribute. In the RPC protocol, each attribute has a length field, which is used to allocate memory, but byte array attribute values have their own separate length field, and it is this length field that is used in memcpy.

Comment 2 Guilherme de Almeida Suckevicz 2020-12-15 13:55:39 UTC
Created mingw-p11-kit tracking bugs for this issue:

Affects: fedora-all [bug 1907911]


Created p11-kit tracking bugs for this issue:

Affects: fedora-all [bug 1907909]

Comment 3 Cedric Buissart 2020-12-18 08:15:09 UTC
External References:

https://github.com/p11-glue/p11-kit/security/advisories/GHSA-5j67-fw89-fp6x

Comment 5 Marco Benatto 2021-01-07 14:55:33 UTC
The main outcome of an successful attack is a DoS on the affected component due to a heap-based overflow, implying in a high availability impact. There's no Integrity or Confidentiality as it's very unlikely an attacker and trigger any remote code execution due to the heap layout.

Comment 10 Cedric Buissart 2021-01-11 15:21:52 UTC
Statement:

The p11-kit library is primarily intended to be used locally, in which case the attacker needs to have sufficient permission to access the p11-kit communication. Although there may be use cases of p11-kit being used with a remote entity, all parties must be considered trusted.
As a result, Red Hat considers this vulnerability with a Medium severity.

Comment 11 errata-xmlrpc 2021-05-18 13:40:11 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 8

Via RHSA-2021:1609 https://access.redhat.com/errata/RHSA-2021:1609

Comment 12 Product Security DevOps Team 2021-05-18 20:37:47 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-29363