Bug 1552830 (CVE-2018-1084)

Summary: CVE-2018-1084 corosync: Integer overflow in exec/totemcrypto.c:authenticate_nss_2_3() function
Product: [Other] Security Response Reporter: Adam Mariš <amaris>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: agk, amaris, anprice, apevec, ccaulfie, chrisw, cluster-maint, jfriesse, jjoyce, jpokorny, jschluet, kbasil, lhh, lpeer, markmc, mburns, rasanche, rbryant, sclewis, security-response-team, sisharma, slinaber, smohan, ssaha, steven.dake, tdecacqu, vbellur
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: corosync 2.4.4 Doc Type: If docs needed, set a value
Doc Text:
An integer overflow leading to an out-of-bound read was found in authenticate_nss_2_3() in Corosync. An attacker could craft a malicious packet that would lead to a denial of service.
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-04-19 13:05:15 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: 1557440, 1557441, 1560467, 1560468, 1566480, 1566481, 1566482, 1566506, 1566507    
Bug Blocks: 1552837    

Description Adam Mariš 2018-03-07 20:02:54 UTC
Potential pre-authentication buffer overflow due to integer overflow in
exec/totemcrypto.c:authenticate_nss_2_3() function can lead to denial of
service or potentially to remote code execution.

Vulnerable code:

static int authenticate_nss_2_3 (
    struct crypto_instance *instance,
    unsigned char *buf,
    int *buf_len)
{
    if (hash_to_nss[instance->crypto_hash_type]) {
        unsigned char tmp_hash[hash_len[instance->crypto_hash_type]];
        int datalen = *buf_len - hash_len[instance->crypto_hash_type];

        if (calculate_nss_hash(instance, buf, datalen, tmp_hash) < 0) {
            return -1;
        }
...

Comment 10 Adam Mariš 2018-04-11 12:16:21 UTC
Acknowledgments:

Name: Citrix Security Response Team

Comment 11 Raphael Sanchez Prudencio 2018-04-12 12:14:54 UTC
Created corosync tracking bugs for this issue:

Affects: openstack-rdo [bug 1566481]
Affects: fedora-all [bug 1566482]

Comment 14 errata-xmlrpc 2018-04-17 15:44:21 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 7

Via RHSA-2018:1169 https://access.redhat.com/errata/RHSA-2018:1169

Comment 16 Raphael Sanchez Prudencio 2018-04-19 13:03:21 UTC
An integer overflow leading to an out-of-bound read was found in authenticate_nss_2_3() in Corosync. An attacker could craft a malicious packet that would lead to a denial of service.