OpenBSD vulnerabilities exploitOpenBSD vulnerabilities exploit

OpenBSD, an open-source operating system built with security
in mind, has been found vulnerable to four new high-severity
security vulnerabilities, one of which is an old-school type
authentication bypass vulnerability in BSD Auth framework.

The other three vulnerabilities are privilege escalation issues
that could allow local users or malicious software to gain
privileges of an auth group, root, as well as of other users,
respectively.

The vulnerabilities were discovered and reported by Qualys
Research Labs earlier this week, in response to which OpenBSD
developers released security patches for OpenBSD 6.5 and OpenBSD 6.6 just yesterday—that’s in
less than 40 hours.
[1][2]

Here’s a brief explanation of all four security vulnerabilities in
OpenBSD—a free and open-source BSD-based Unix-like operating
system—along with their assigned CVE identifiers

OpenBSD Authentication Bypass (CVE-2019-19521)

The authentication bypass vulnerability resides in the way
OpenBSD’s authentication framework parses the username supplied by
a user while logging in through smtpd, ldapd, radiusd, su, or sshd
services.

Using this flaw, a remote attacker can successfully access
vulnerable services with any password just by entering the username
as “-schallenge” or “-schallenge: passwd,” and it works because a
hyphen (-) before username tricks OpenBSD into interpreting the
value as a command-line option and not as a username.

openbsd vulnerabilitiesopenbsd vulnerabilities

Here, OpenBSD’s authentication framework interprets “-schallenge”
as “-s challenge,” which forces the system into silently ignoring
the challenge protocol that eventually bypasses the authentication
automatically.

“If an attacker specifies a username of the form ‘-option’, they
can influence the behavior of the authentication program in
unexpected ways,” the advisory said.

According to the researchers, this vulnerability is practically
exploitable in smtpd, ldapd, and radiusd, but not in sshd or su due
to their defense-in-depth mechanisms that hang the connection even
after successful authentication bypass.

However, one can still remotely exploit the flaw against sshd to
determine whether an OpenBSD system is vulnerable to CVE-2019-19521
or not.

OpenBSD Local Privilege Escalation Flaws

OpenBSD vulnerabilitiesOpenBSD vulnerabilities

As described above, the other OpenBSD vulnerabilities are local
privilege escalation issues as briefly explained below:

  • CVE-2019-19520: Due to the mishandling of
    environment-provided paths used in dlopen(), xlock, which comes
    installed by default on OpenBSD, could allow local attackers to
    escalate privileges to ‘auth’ group.
  • CVE-2019-19522: Due to incorrect operation of
    authorization mechanisms via “S/Key” and “YubiKey,” which is a
    non-default configuration, a local attacker with ‘auth’ group
    permission can gain full privileges of the root user.
  • CVE-2019-19519: Due to a logical error in one of the
    su’s primary functions, a local attacker can achieve any user’s
    login class, often excluding root, by exploiting su’s -L
    option.

Qualys researchers have also released proof-of-concept
exploits
[3] for each vulnerability
in its advisory.

Since patches for all four security vulnerabilities are now
available, affected OpenBSD users recommended to install patches
using syspatch mechanism.

References

  1. ^
    OpenBSD 6.5
    (www.openbsd.org)
  2. ^
    OpenBSD 6.6
    (www.openbsd.org)
  3. ^
    proof-of-concept exploits
    (www.qualys.com)

Read more