CVE-2016-4008
Medium · 5.9CVSS
5.9
EPSS
29.4%
Published
May 5, 2016
CISA due date
—
Cloudanix analysis
A flaw in a widely used certificate-parsing library can let a remote attacker send one specially made certificate that makes the program using the library stop responding.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Moderate
- Impact
- Denial Of Service
- Component
- Library
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The _asn1_extract_der_octet function in libtasn1 before 4.8 performs unbounded recursion when processing certain DER structures in certificates if ASN1_DECODE_FLAG_STRICT_DER is not set, leading to stack exhaustion and denial of service.
Why it matters to the business
Applications or services that parse untrusted certificates using the vulnerable library version can experience sudden unavailability or high resource consumption, disrupting dependent workloads and requiring emergency restarts or rollbacks.
How an attack unfolds
An attacker crafts a certificate containing a deeply nested or malformed DER octet string and delivers it to any network-facing component that invokes libtasn1 decoding without the strict flag; the parser enters infinite recursion and the process terminates or hangs.
How to fix it
Upgrade GNU Libtasn1 to version 4.8 or later. For the affected Chainguard package newrelic-nri-kube-events-1.9, update to 1.9.3-r2 or newer which bundles the corrected library.
How to confirm the fix worked
Confirm the installed libtasn1 shared library or package reports version 4.8 or greater; recompile or redeploy the application with ASN1_DECODE_FLAG_STRICT_DER enabled where possible and test against known recursive test vectors.
Typical attack path
- Locate a service or library call path that decodes certificates with GNU Libtasn1 < 4.8
- Generate a minimal DER certificate that triggers recursive descent in _asn1_extract_der_octet
- Transmit the certificate over the network or supply it through a local API
- Observe process crash, high CPU, or memory exhaustion confirming successful denial of service
How to detect it
Search process crash dumps, high-CPU threads, or repeated stack traces containing _asn1_extract_der_octet; review TLS handshake or certificate ingestion logs for sudden terminations around the time of external certificate submissions.
What your security team should do
- Immediately upgrade the listed Chainguard package to the fixed release 1.9.3-r2
- Audit all other products or containers for bundled copies of libtasn1 older than 4.8
- Enable strict DER decoding flags in all certificate-parsing code paths
- Monitor EPSS trend and reassess exploit maturity as new tooling appears
The record
The _asn1_extract_der_octet function in lib/decoding.c in GNU Libtasn1 before 4.8, when used without the ASN1_DECODE_FLAG_STRICT_DER flag, allows remote attackers to cause a denial of service (infinite recursion) via a crafted certificate.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | libtasn1-6 | 0 | 4.8-1 |
| Debian:12 | libtasn1-6 | 0 | 4.8-1 |
| Debian:13 | libtasn1-6 | 0 | 4.8-1 |
| Debian:7 | libtasn1-3 | 0 | 2.13-2+deb7u3 |
| Debian:8 | libtasn1-6 | 0 | 4.2-3+deb8u2 |
| Mageia:5 | libtasn1 | 0 | 4.2-4.1.mga5 |
| SUSE:Linux Enterprise Desktop 12 | libtasn1 | 0 | 3.7-11.1 |
| SUSE:Linux Enterprise Desktop 12 SP1 | libtasn1 | 0 | 3.7-11.1 |
| SUSE:Linux Enterprise Server 11 SP4 | libtasn1 | 0 | 1.5-1.34.1 |
| SUSE:Linux Enterprise Server 12 | libtasn1 | 0 | 3.7-11.1 |
| SUSE:Linux Enterprise Server 12 SP1 | libtasn1 | 0 | 3.7-11.1 |
| SUSE:Linux Enterprise Server for SAP Applications 11 SP4 | libtasn1 | 0 | 1.5-1.34.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 | libtasn1 | 0 | 3.7-11.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP1 | libtasn1 | 0 | 3.7-11.1 |
| SUSE:Linux Enterprise Software Development Kit 11 SP4 | libtasn1 | 0 | 1.5-1.34.1 |
| SUSE:Linux Enterprise Software Development Kit 12 | libtasn1 | 0 | 3.7-11.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP1 | libtasn1 | 0 | 3.7-11.1 |
| Ubuntu:14.04:LTS | libtasn1-6 | 0 | 3.4-3ubuntu0.4 |
| Ubuntu:16.04:LTS | libtasn1-6 | 0 | 4.7-3ubuntu0.16.04.1 |
| openSUSE:Tumbleweed | libtasn1 | 0 | 4.9-1.3 |
Related vulnerabilities
- CVE-2018-1000654 GNU Libtasn1-4.13 libtasn1-4.13 version libtasn1-4.13, libtasn1-4.12 contains a DoS… Also affects libtasn1-6
- CVE-2017-10790 The _asn1_check_identifier function in GNU Libtasn1 through 4.12 causes a NULL pointer… Also affects libtasn1-6
- CVE-2017-6891 Two errors in the "asn1_find_node()" function (lib/parser_aux.c) within GnuTLS libtasn1… Also affects libtasn1-6
- CVE-2015-3622 The _asn1_extract_der_octet function in lib/decoding.c in GNU Libtasn1 before 4.5 allows… Also affects libtasn1-6
- CVE-2015-2806 Stack-based buffer overflow in asn1_der_decoding in libtasn1 before 4.4 allows remote… Also affects libtasn1-6
- CVE-2014-3467 Multiple unspecified vulnerabilities in the DER decoder in GNU Libtasn1 before 3.6, as… Also affects libtasn1-6
- CVE-2025-13151 Stack-based buffer overflow in libtasn1 version: v4.20.0. Also affects libtasn1
- CVE-2026-41983 Null pointer dereference vulnerability in the browser module. Impact: Successful… CWE-399