Cloudanix VulnDB

CVE-2020-28196

High · 7.5

CVSS

7.5

EPSS

4.4%

Published

Nov 6, 2020

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

Attackers can send one specially formatted message that crashes the system responsible for checking user passwords and granting access tickets, stopping logins until the service is fixed.

Exploitation
Remote Unauthenticated
Attacker needs
None
Complexity
Low
Impact
Denial Of Service
Component
Library
Class
Denial of service
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The flaw permits unbounded recursion in ASN.1 BER indefinite-length decoding within lib/krb5/asn.1/asn1_encode.c, exhausting stack space and crashing the Kerberos process on receipt of a crafted message.

Why it matters to the business

Successful exploitation halts Kerberos authentication services, blocking user logins, service tickets, and any dependent enterprise applications until the affected processes are restarted.

How an attack unfolds

An unauthenticated remote attacker sends a single specially constructed Kerberos protocol message containing deeply nested BER indefinite-length encodings; the decoder recurses without limit, triggering a stack overflow and immediate denial of service.

How to fix it

Upgrade krb5 to 1.17.2, 1.18.3 or newer; for Debian 9 apply package 1.7.9+dfsg-1+deb9u1; for GIT sources apply commit 4d6a54bca820327a339051853d0716f74985238c.

How to confirm the fix worked

Confirm the running krb5 library version matches or exceeds the listed fixed releases; optionally replay a benign test vector that previously triggered deep recursion and verify the process remains stable.

Typical attack path

  1. Locate exposed Kerberos KDC or application services on the network
  2. Generate a minimal ASN.1 BER message that uses indefinite-length encoding to arbitrary depth
  3. Transmit the message to the target over UDP or TCP port 88
  4. Observe process crash or excessive CPU/memory consumption confirming the recursion limit bypass

How to detect it

Review Kerberos daemon logs and system crash reports for abrupt terminations or stack-overflow signals immediately after receipt of a Kerberos request; inspect network captures for unusually large or malformed ASN.1 structures on port 88.

What your security team should do

  • Apply the listed version upgrades on all Kerberos KDCs and client libraries within the next maintenance window
  • Restrict inbound Kerberos traffic to trusted networks until patches are deployed
  • Add version checks for krb5 to the vulnerability scanning policy

The record

MIT Kerberos 5 (aka krb5) before 1.17.2 and 1.18.x before 1.18.3 allows unbounded recursion via an ASN.1-encoded Kerberos message because the lib/krb5/asn.1/asn1_encode.c support for BER indefinite lengths lacks a recursion limit.

Affected packages

Ecosystem Package Introduced Fixed
Alpine:v3.10 krb5 0 1.17.2-r0
Alpine:v3.11 krb5 0 1.17.2-r0
Alpine:v3.12 krb5 0 1.18.3-r0
Alpine:v3.13 krb5 0 1.18.3-r0
Alpine:v3.14 krb5 0 1.18.3-r0
Alpine:v3.15 krb5 0 1.18.3-r0
Alpine:v3.16 krb5 0 1.18.3-r0
Alpine:v3.17 krb5 0 1.18.3-r0
Alpine:v3.18 krb5 0 1.18.3-r0
Alpine:v3.19 krb5 0 1.18.3-r0
Alpine:v3.20 krb5 0 1.18.3-r0
Alpine:v3.21 krb5 0 1.18.3-r0
Alpine:v3.22 krb5 0 1.18.3-r0
Alpine:v3.9 krb5 0 1.15.5-r1
Debian:10 krb5 0 1.17-3+deb10u1
Debian:11 krb5 0 1.18.3-1
Debian:12 krb5 0 1.18.3-1
Debian:13 krb5 0 1.18.3-1
Debian:9 krb5 0 1.15-1+deb9u2
Mageia:7 krb5 0 1.17-2.1.mga7
Red Hat:enterprise_linux:8::baseos krb5 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-debuginfo 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-debugsource 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-devel 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-devel-debuginfo 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-libs 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-libs-debuginfo 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-pkinit 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-pkinit-debuginfo 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-server 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-server-debuginfo 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-server-ldap 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-server-ldap-debuginfo 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-workstation 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos krb5-workstation-debuginfo 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos libkadm5 0 0:1.18.2-8.el8
Red Hat:enterprise_linux:8::baseos libkadm5-debuginfo 0 0:1.18.2-8.el8
Red Hat:rhev_hypervisor:4.4::el8 redhat-virtualization-host 0 0:4.4.6-20210527.3.el8_4
Red Hat:rhev_hypervisor:4.4::el8 redhat-virtualization-host-image-update 0 0:4.4.6-20210527.3.el8_4
Rocky Linux:8 krb5 0 0:1.18.2-8.el8
SUSE:Enterprise Storage 5 krb5 0 1.12.5-40.40.2
SUSE:HPE Helion OpenStack 8 krb5 0 1.12.5-40.40.2
SUSE:Linux Enterprise High Performance Computing 15-ESPOS krb5 0 1.15.2-6.12.2
SUSE:Linux Enterprise High Performance Computing 15-LTSS krb5 0 1.15.2-6.12.2
SUSE:Linux Enterprise Module for Basesystem 15 SP1 krb5 0 1.16.3-3.15.1
SUSE:Linux Enterprise Module for Basesystem 15 SP2 krb5 0 1.16.3-3.15.1
SUSE:Linux Enterprise Module for Server Applications 15 SP1 krb5 0 1.16.3-3.15.1
SUSE:Linux Enterprise Module for Server Applications 15 SP2 krb5 0 1.16.3-3.15.1
SUSE:Linux Enterprise Server 12 SP2-BCL krb5 0 1.12.5-40.40.2
SUSE:Linux Enterprise Server 12 SP2-LTSS krb5 0 1.12.5-40.40.2
SUSE:Linux Enterprise Server 12 SP3-BCL krb5 0 1.12.5-40.40.2
SUSE:Linux Enterprise Server 12 SP3-LTSS krb5 0 1.12.5-40.40.2
SUSE:Linux Enterprise Server 12 SP4-LTSS krb5 0 1.12.5-40.40.2
SUSE:Linux Enterprise Server 12 SP5 krb5 0 1.12.5-40.40.2
SUSE:Linux Enterprise Server 15-LTSS krb5 0 1.15.2-6.12.2
SUSE:Linux Enterprise Server for SAP Applications 12 SP2 krb5 0 1.12.5-40.40.2
SUSE:Linux Enterprise Server for SAP Applications 12 SP3 krb5 0 1.12.5-40.40.2
SUSE:Linux Enterprise Server for SAP Applications 12 SP4 krb5 0 1.12.5-40.40.2
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 krb5 0 1.12.5-40.40.2
SUSE:Linux Enterprise Server for SAP Applications 15 krb5 0 1.15.2-6.12.2
SUSE:Linux Enterprise Software Development Kit 12 SP5 krb5 0 1.12.5-40.40.2
SUSE:OpenStack Cloud 7 krb5 0 1.12.5-40.40.2
SUSE:OpenStack Cloud 8 krb5 0 1.12.5-40.40.2
SUSE:OpenStack Cloud 9 krb5 0 1.12.5-40.40.2
SUSE:OpenStack Cloud Crowbar 8 krb5 0 1.12.5-40.40.2
SUSE:OpenStack Cloud Crowbar 9 krb5 0 1.12.5-40.40.2
Ubuntu:14.04:LTS krb5 0 1.12+dfsg-2ubuntu5.4+esm2
Ubuntu:16.04:LTS krb5 0 1.13.2+dfsg-5ubuntu2.2
Ubuntu:18.04:LTS krb5 0 1.16-2ubuntu0.2
Ubuntu:20.04:LTS krb5 0 1.17-6ubuntu4.1
Ubuntu:Pro:14.04:LTS krb5 0 1.12+dfsg-2ubuntu5.4+esm2
openSUSE:Leap 15.1 krb5 0 1.16.3-lp151.2.15.1
openSUSE:Leap 15.1 krb5-mini 0 1.16.3-lp151.2.15.1
openSUSE:Leap 15.2 krb5 0 1.16.3-lp152.5.13.1
openSUSE:Leap 15.2 krb5-mini 0 1.16.3-lp152.5.13.1
openSUSE:Tumbleweed krb5 0 1.19.2-3.1

Related vulnerabilities