CVE Vulnerabilities

CVE-2020-27743

Use of Insufficiently Random Values

Published: Oct 26, 2020 | Modified: Nov 02, 2020
CVSS 3.x
9.8
CRITICAL
Source:
NVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 2.x
7.5 HIGH
AV:N/AC:L/Au:N/C:P/I:P/A:P
RedHat/V2
RedHat/V3
Ubuntu
MEDIUM

libtac in pam_tacplus through 1.5.1 lacks a check for a failure of RAND_bytes()/RAND_pseudo_bytes(). This could lead to use of a non-random/predictable session_id.

Weakness

The product uses insufficiently random numbers or values in a security context that depends on unpredictable numbers.

Affected Software

Name Vendor Start Version End Version
Pam_tacplus Pam_tacplus_project * 1.5.1 (including)
Libpam-tacplus Ubuntu bionic *
Libpam-tacplus Ubuntu groovy *
Libpam-tacplus Ubuntu hirsute *
Libpam-tacplus Ubuntu impish *
Libpam-tacplus Ubuntu kinetic *
Libpam-tacplus Ubuntu lunar *
Libpam-tacplus Ubuntu mantic *
Libpam-tacplus Ubuntu trusty *
Libpam-tacplus Ubuntu xenial *

Potential Mitigations

  • Use a well-vetted algorithm that is currently considered to be strong by experts in the field, and select well-tested implementations with adequate length seeds.
  • In general, if a pseudo-random number generator is not advertised as being cryptographically secure, then it is probably a statistical PRNG and should not be used in security-sensitive contexts.
  • Pseudo-random number generators can produce predictable numbers if the generator is known and the seed can be guessed. A 256-bit seed is a good starting point for producing a “random enough” number.

References