CVE Vulnerabilities

CVE-2016-6304

Missing Release of Memory after Effective Lifetime

Published: Sep 26, 2016 | Modified: Apr 12, 2025
CVSS 3.x
7.5
HIGH
Source:
NVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS 2.x
7.8 HIGH
AV:N/AC:L/Au:N/C:N/I:N/A:C
RedHat/V2
5 IMPORTANT
AV:N/AC:L/Au:N/C:N/I:N/A:P
RedHat/V3
7.5 IMPORTANT
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Ubuntu
HIGH
root.io logo minimus.io logo echo.ai logo

Multiple memory leaks in t1_lib.c in OpenSSL before 1.0.1u, 1.0.2 before 1.0.2i, and 1.1.0 before 1.1.0a allow remote attackers to cause a denial of service (memory consumption) via large OCSP Status Request extensions.

Weakness

The product does not sufficiently track and release allocated memory after it has been used, making the memory unavailable for reallocation and reuse.

Affected Software

NameVendorStart VersionEnd Version
OpensslOpenssl1.0.2 (including)1.0.2 (including)
OpensslOpenssl1.0.2-beta1 (including)1.0.2-beta1 (including)
OpensslOpenssl1.0.2-beta2 (including)1.0.2-beta2 (including)
OpensslOpenssl1.0.2-beta3 (including)1.0.2-beta3 (including)
OpensslOpenssl1.0.2a (including)1.0.2a (including)
OpensslOpenssl1.0.2b (including)1.0.2b (including)
OpensslOpenssl1.0.2c (including)1.0.2c (including)
OpensslOpenssl1.0.2d (including)1.0.2d (including)
OpensslOpenssl1.0.2e (including)1.0.2e (including)
OpensslOpenssl1.0.2f (including)1.0.2f (including)
OpensslOpenssl1.0.2h (including)1.0.2h (including)
JBoss Core Services on RHEL 6RedHatjbcs-httpd24-httpd-0:2.4.23-120.jbcs.el6*
JBoss Core Services on RHEL 6RedHatjbcs-httpd24-mod_security-0:2.9.1-19.GA.jbcs.el6*
JBoss Core Services on RHEL 6RedHatjbcs-httpd24-openssl-1:1.0.2h-13.jbcs.el6*
JBoss Core Services on RHEL 7RedHatjbcs-httpd24-httpd-0:2.4.23-120.jbcs.el7*
JBoss Core Services on RHEL 7RedHatjbcs-httpd24-mod_security-0:2.9.1-19.GA.jbcs.el7*
JBoss Core Services on RHEL 7RedHatjbcs-httpd24-openssl-1:1.0.2h-13.jbcs.el7*
Red Hat Enterprise Linux 6RedHatopenssl-0:1.0.1e-48.el6_8.3*
Red Hat Enterprise Linux 6.2 Advanced Update SupportRedHatopenssl-0:1.0.0-20.el6_2.9*
Red Hat Enterprise Linux 6.4 Advanced Update SupportRedHatopenssl-0:1.0.0-27.el6_4.6*
Red Hat Enterprise Linux 6.5 Advanced Update SupportRedHatopenssl-0:1.0.1e-16.el6_5.17*
Red Hat Enterprise Linux 6.5 Telco Extended Update SupportRedHatopenssl-0:1.0.1e-16.el6_5.17*
Red Hat Enterprise Linux 6.6 Advanced Update SupportRedHatopenssl-0:1.0.1e-30.el6_6.13*
Red Hat Enterprise Linux 6.6 Telco Extended Update SupportRedHatopenssl-0:1.0.1e-30.el6_6.13*
Red Hat Enterprise Linux 6.7 Extended Update SupportRedHatopenssl-0:1.0.1e-42.el6_7.6*
Red Hat Enterprise Linux 7RedHatopenssl-1:1.0.1e-51.el7_2.7*
Red Hat JBoss Enterprise Application Platform 6.4RedHatopenssl*
Red Hat JBoss Enterprise Application Platform 6.4 for RHEL 6RedHatjbcs-httpd24-openssl-1:1.0.2h-13.jbcs.el6*
Red Hat JBoss Enterprise Application Platform 6.4 for RHEL 7RedHatjbcs-httpd24-openssl-1:1.0.2h-13.jbcs.el7*
Red Hat JBoss Enterprise Web Server 2 for RHEL 6RedHatjbcs-httpd24-openssl-1:1.0.2h-13.jbcs.el6*
Red Hat JBoss Enterprise Web Server 2 for RHEL 6RedHattomcat6-0:6.0.41-17_patch_04.ep6.el6*
Red Hat JBoss Enterprise Web Server 2 for RHEL 6RedHattomcat7-0:7.0.54-25_patch_05.ep6.el6*
Red Hat JBoss Enterprise Web Server 2 for RHEL 7RedHatjbcs-httpd24-openssl-1:1.0.2h-13.jbcs.el7*
Red Hat JBoss Enterprise Web Server 2 for RHEL 7RedHattomcat6-0:6.0.41-17_patch_04.ep6.el7*
Red Hat JBoss Enterprise Web Server 2 for RHEL 7RedHattomcat7-0:7.0.54-25_patch_05.ep6.el7*
Red Hat JBoss Web Server 2.1RedHatopenssl*
Red Hat JBoss Web Server 3.1RedHat*
Red Hat JBoss Web Server 3 for RHEL 6RedHatlog4j-eap6-0:1.2.16-12.redhat_3.1.ep6.el6*
Red Hat JBoss Web Server 3 for RHEL 6RedHattomcat7-0:7.0.70-22.ep7.el6*
Red Hat JBoss Web Server 3 for RHEL 6RedHattomcat8-0:8.0.36-24.ep7.el6*
Red Hat JBoss Web Server 3 for RHEL 6RedHattomcat-native-0:1.2.8-10.redhat_10.ep7.el6*
Red Hat JBoss Web Server 3 for RHEL 7RedHatlog4j-eap6-0:1.2.16-12.redhat_3.1.ep6.el7*
Red Hat JBoss Web Server 3 for RHEL 7RedHattomcat7-0:7.0.70-22.ep7.el7*
Red Hat JBoss Web Server 3 for RHEL 7RedHattomcat8-0:8.0.36-24.ep7.el7*
Red Hat JBoss Web Server 3 for RHEL 7RedHattomcat-native-0:1.2.8-10.redhat_10.ep7.el7*
Text-Only JBCSRedHat*
OpensslUbuntuartful*
OpensslUbuntubionic*
OpensslUbuntucosmic*
OpensslUbuntudevel*
OpensslUbuntudisco*
OpensslUbuntuesm-infra-legacy/trusty*
OpensslUbuntuesm-infra/bionic*
OpensslUbuntuesm-infra/xenial*
OpensslUbuntuprecise*
OpensslUbuntutrusty*
OpensslUbuntutrusty/esm*
OpensslUbuntuupstream*
OpensslUbuntuvivid/stable-phone-overlay*
OpensslUbuntuvivid/ubuntu-core*
OpensslUbuntuxenial*
OpensslUbuntuyakkety*
OpensslUbuntuzesty*
Openssl098Ubuntuprecise*
Openssl098Ubuntutrusty*

Potential Mitigations

  • Choose a language or tool that provides automatic memory management, or makes manual memory management less error-prone.
  • For example, glibc in Linux provides protection against free of invalid pointers.
  • When using Xcode to target OS X or iOS, enable automatic reference counting (ARC) [REF-391].
  • To help correctly and consistently manage memory when programming in C++, consider using a smart pointer class such as std::auto_ptr (defined by ISO/IEC ISO/IEC 14882:2003), std::shared_ptr and std::unique_ptr (specified by an upcoming revision of the C++ standard, informally referred to as C++ 1x), or equivalent solutions such as Boost.

References