Docker humio/humio:1.0.56

Vulnerabilities

343 via 717 paths

Dependencies

167

Source

Group 6 Copy Created with Sketch. Docker

Target OS

ubuntu:16.04
Test your Docker Hub image against our market leading vulnerability database Sign up for free
Severity
  • 23
  • 158
  • 162
Status
  • 343
  • 0
  • 0
OS binaries
  • 263
  • 80

high severity

Arbitrary Code Injection

  • Vulnerable module: apt
  • Introduced through: apt@1.2.24 and apt/libapt-pkg5.0@1.2.24
  • Fixed in: 1.2.29ubuntu0.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* apt@1.2.24
  • Introduced through: humio/humio:1.0.56@* apt/libapt-pkg5.0@1.2.24

Overview

Incorrect sanitation of the 302 redirect field in HTTP transport method of apt versions 1.4.8 and earlier can lead to content injection by a MITM attacker, potentially leading to remote code execution on the target machine.

References

high severity

Out-of-bounds Write

  • Vulnerable module: freetype/libfreetype6
  • Introduced through: freetype/libfreetype6@2.6.1-0.1ubuntu2.3
  • Fixed in: 2.6.1-0.1ubuntu2.5

Detailed paths

  • Introduced through: humio/humio:1.0.56@* freetype/libfreetype6@2.6.1-0.1ubuntu2.3

Overview

Affected versions of this package are vulnerable to Out-of-bounds Write. Heap buffer overflow in Freetype in Google Chrome prior to 86.0.4240.111 allowed a remote attacker to potentially exploit heap corruption via a crafted HTML page.

Remediation

Upgrade freetype to version or higher.

References

high severity

Buffer Overflow

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_251

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Buffer Overflow. A flaw was found in the boundary checks in the java.nio buffer classes in the Libraries component of OpenJDK, where it is bypassed in certain cases. This flaw allows an untrusted Java application or applet o bypass Java sandbox restrictions.

Remediation

Upgrade openjdk-jre to version 7.0.261, 8.0.251, 11.0.7, 14.0.1 or higher.

References

high severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_171

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE, JRockit component of Oracle Java SE (subcomponent: Security). Difficult to exploit vulnerability allows unauthenticated attacker with logon to the infrastructure where Java SE, JRockit executes to compromise Java SE, JRockit. Successful attacks require human interaction from a person other than the attacker and while the vulnerability is in Java SE, JRockit, attacks may significantly impact additional products. Successful attacks of this vulnerability can result in takeover of Java SE, JRockit. Note: Applies to client and server deployment of Java. This vulnerability can be exploited through sandboxed Java Web Start applications and sandboxed Java applets. It can also be exploited by supplying data to APIs in the specified Component without using sandboxed Java Web Start applications or sandboxed Java applets, such as through a web service.

Remediation

Upgrade openjdk-jre to version 7.0.181, 8.0.171 or higher.

References

high severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_171

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE component of Oracle Java SE (subcomponent: Install). Difficult to exploit vulnerability allows unauthenticated attacker with logon to the infrastructure where Java SE executes to compromise Java SE. Successful attacks require human interaction from a person other than the attacker and while the vulnerability is in Java SE, attacks may significantly impact additional products. Successful attacks of this vulnerability can result in takeover of Java SE. Note: Applies to installation process on client deployment of Java.

Remediation

Upgrade openjdk-jre to version 8.0.171 or higher.

References

high severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_171

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE, Java SE Embedded component of Oracle Java SE (subcomponent: Hotspot). Difficult to exploit vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded. Successful attacks require human interaction from a person other than the attacker and while the vulnerability is in Java SE, Java SE Embedded, attacks may significantly impact additional products. Successful attacks of this vulnerability can result in takeover of Java SE, Java SE Embedded. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets, that load and run untrusted code (e.g., code that comes from the internet) and rely on the Java sandbox for security. This vulnerability does not apply to Java deployments, typically in servers, that load and run only trusted code (e.g., code installed by an administrator).

Remediation

Upgrade openjdk-jre to version 7.0.181, 8.0.171 or higher.

References

high severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_181

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE component of Oracle Java SE (subcomponent: Java DB). Difficult to exploit vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE. While the vulnerability is in Java SE, attacks may significantly impact additional products. Successful attacks of this vulnerability can result in takeover of Java SE. Note: This vulnerability can only be exploited by supplying data to APIs in the specified Component without using Untrusted Java Web Start applications or Untrusted Java applets, such as through a web service. CVE-2018-2938 addresses CVE-2018-1313.

Remediation

Upgrade openjdk-jre to version 7.0.191, 8.0.181 or higher.

References

high severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_181

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE component of Oracle Java SE (subcomponent: JavaFX). Difficult to exploit vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE. Successful attacks require human interaction from a person other than the attacker and while the vulnerability is in Java SE, attacks may significantly impact additional products. Successful attacks of this vulnerability can result in takeover of Java SE. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets, that load and run untrusted code (e.g., code that comes from the internet) and rely on the Java sandbox for security. This vulnerability does not apply to Java deployments, typically in servers, that load and run only trusted code (e.g., code installed by an administrator).

Remediation

Upgrade openjdk-jre to version 7.0.191, 8.0.181 or higher.

References

high severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_181

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE component of Oracle Java SE (subcomponent: Windows DLL). Difficult to exploit vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE. Successful attacks require human interaction from a person other than the attacker and while the vulnerability is in Java SE, attacks may significantly impact additional products. Successful attacks of this vulnerability can result in takeover of Java SE. Note: Applies to client and server deployment of Java. This vulnerability can be exploited through sandboxed Java Web Start applications and sandboxed Java applets. It can also be exploited by supplying data to APIs in the specified Component without using sandboxed Java Web Start applications or sandboxed Java applets, such as through a web service.

Remediation

Upgrade openjdk-jre to version 7.0.191, 8.0.181 or higher.

References

high severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_181

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE component of Oracle Java SE (subcomponent: Deployment). Difficult to exploit vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE. Successful attacks require human interaction from a person other than the attacker and while the vulnerability is in Java SE, attacks may significantly impact additional products. Successful attacks of this vulnerability can result in takeover of Java SE. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets, that load and run untrusted code (e.g., code that comes from the internet) and rely on the Java sandbox for security. This vulnerability does not apply to Java deployments, typically in servers, that load and run only trusted code (e.g., code installed by an administrator).

Remediation

Upgrade openjdk-jre to version 8.0.181 or higher.

References

high severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_191

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE, Java SE Embedded, JRockit component of Oracle Java SE (subcomponent: JNDI). Difficult to exploit vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded, JRockit. Successful attacks require human interaction from a person other than the attacker and while the vulnerability is in Java SE, Java SE Embedded, JRockit, attacks may significantly impact additional products. Successful attacks of this vulnerability can result in takeover of Java SE, Java SE Embedded, JRockit. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets (in Java SE 8), that load and run untrusted code (e.g. code that comes from the internet) and rely on the Java sandbox for security. This vulnerability can also be exploited by using APIs in the specified Component, e.g. through a web service which supplies data to the APIs.

Remediation

Upgrade openjdk-jre to version 7.0.201, 8.0.191, 11.0.1 or higher.

References

high severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_191

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE, Java SE Embedded component of Oracle Java SE (subcomponent: Hotspot). Difficult to exploit vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded. Successful attacks require human interaction from a person other than the attacker and while the vulnerability is in Java SE, Java SE Embedded, attacks may significantly impact additional products. Successful attacks of this vulnerability can result in takeover of Java SE, Java SE Embedded. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets (in Java SE 8), that load and run untrusted code (e.g. code that comes from the internet) and rely on the Java sandbox for security. This vulnerability does not apply to Java deployments, typically in servers, that load and run only trusted code (e.g. code installed by an administrator).

Remediation

Upgrade openjdk-jre to version 7.0.201, 8.0.191 or higher.

References

high severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_191

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE, Java SE Embedded, JRockit component of Oracle Java SE (subcomponent: Scripting). Difficult to exploit vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded, JRockit. While the vulnerability is in Java SE, Java SE Embedded, JRockit, attacks may significantly impact additional products. Successful attacks of this vulnerability can result in takeover of Java SE, Java SE Embedded, JRockit. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets (in Java SE 8), that load and run untrusted code (e.g. code that comes from the internet) and rely on the Java sandbox for security. This vulnerability can also be exploited by using APIs in the specified Component, e.g. through a web service which supplies data to the APIs.

Remediation

Upgrade openjdk-jre to version 8.0.191 or higher.

References

high severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_191

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE component of Oracle Java SE (subcomponent: JavaFX). Difficult to exploit vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE. Successful attacks require human interaction from a person other than the attacker and while the vulnerability is in Java SE, attacks may significantly impact additional products. Successful attacks of this vulnerability can result in takeover of Java SE. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets (in Java SE 8), that load and run untrusted code (e.g. code that comes from the internet) and rely on the Java sandbox for security. This vulnerability does not apply to Java deployments, typically in servers, that load and run only trusted code (e.g. code installed by an administrator).

Remediation

Upgrade openjdk-jre to version 8.0.191 or higher.

References

high severity

Improper Input Validation

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_251

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Input Validation in the way the readObject() method of the MethodType class in the Libraries component of OpenJDK checked argument types. An untrusted Java application or applet could use this flaw to bypass Java sandbox restrictions.

Remediation

Upgrade openjdk-jre to version 7.0.261, 8.0.251, 11.0.7, 14.0.1 or higher.

References

high severity

Improper Security Check

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_251

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Security Check in the TLS/SSL implementation in the JSSE component of OpenJDK, where it did not properly handle application data packets received before the handshake completion. This flaw allowed unauthorized injection of data at the beginning of a TLS session.

Remediation

Upgrade openjdk-jre to version 7.0.261, 8.0.251, 11.0.7, 14.0.1 or higher.

References

high severity

Modification of Assumed-Immutable Data (MAID)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_241

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Modification of Assumed-Immutable Data (MAID) via serialization filter changes via jdk.serialFilter property modification.

Remediation

Upgrade openjdk-jre to version 7.0.251, 8.0.241, 11.0.6, 13.0.2 or higher.

References

high severity

NULL pointer dereference

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to NULL pointer dereference via the DrawGlyphList class in the 2D component in OpenJDK. A specially crafted font file could use this flaw to cause a Java application to crash.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

high severity

Sandbox Bypass

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_251

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Sandbox Bypass. It was discovered that the boundary checks in the java.nio.Buffer class in the Libraries component of OpenJDK could have been bypassed when class instance was accessed concurrently. An untrusted Java application or applet could use this flaw to bypass Java sandbox restrictions.

Remediation

Upgrade openjdk-jre to version 7.0.261, 8.0.251, 11.0.7, 14.0.1 or higher.

References

high severity

Sandbox Bypass

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_251

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Sandbox Bypass. A flaw was found in the way the imaging library in the 2D component of OpenJDK performed affine transformations of images. An untrusted Java application or applet could use this flaw to bypass certain Java sandbox restrictions.

Remediation

Upgrade openjdk-jre to version 7.0.261, 8.0.251, 11.0.7, 14.0.1 or higher.

References

high severity

NULL Pointer Dereference

  • Vulnerable module: openssl
  • Introduced through: openssl@1.0.2g-1ubuntu4.10 and openssl/libssl1.0.0@1.0.2g-1ubuntu4.10
  • Fixed in: 1.0.2g-1ubuntu4.18

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openssl@1.0.2g-1ubuntu4.10
  • Introduced through: humio/humio:1.0.56@* openssl/libssl1.0.0@1.0.2g-1ubuntu4.10

Overview

Affected versions of this package are vulnerable to NULL Pointer Dereference. The X.509 GeneralName type is a generic type for representing different types of names. One of those name types is known as EDIPartyName. OpenSSL provides a function GENERAL_NAME_cmp which compares different instances of a GENERAL_NAME to see if they are equal or not. This function behaves incorrectly when both GENERAL_NAMEs contain an EDIPARTYNAME. A NULL pointer dereference and a crash may occur leading to a possible denial of service attack. OpenSSL itself uses the GENERAL_NAME_cmp function for two purposes: 1) Comparing CRL distribution point names between an available CRL and a CRL distribution point embedded in an X509 certificate 2) When verifying that a timestamp response token signer matches the timestamp authority name (exposed via the API functions TS_RESP_verify_response and TS_RESP_verify_token) If an attacker can control both items being compared then that attacker could trigger a crash. For example if the attacker can trick a client or server into checking a malicious certificate against a malicious CRL then this may occur. Note that some applications automatically download CRLs based on a URL embedded in a certificate. This checking happens prior to the signatures on the certificate and CRL being verified. OpenSSL's s_server, s_client and verify tools have support for the "-crl_download" option which implements automatic CRL downloading and this attack has been demonstrated to work against those tools. Note that an unrelated bug means that affected versions of OpenSSL cannot parse or construct correct encodings of EDIPARTYNAME. However it is possible to construct a malformed EDIPARTYNAME that OpenSSL's parser will accept and hence trigger this attack. All OpenSSL 1.1.1 and 1.0.2 versions are affected by this issue. Other OpenSSL releases are out of support and have not been checked. Fixed in OpenSSL 1.1.1i (Affected 1.1.1-1.1.1h). Fixed in OpenSSL 1.0.2x (Affected 1.0.2-1.0.2w).

Remediation

Upgrade openssl to version or higher.

References

high severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others
  • Fixed in: 229-4ubuntu21.15

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

An allocation of memory without limits, that could result in the stack clashing with another memory region, was discovered in systemd-journald when a program with long command line arguments calls syslog. A local attacker may use this flaw to crash systemd-journald or escalate his privileges. Versions through v240 are vulnerable.

References

high severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others
  • Fixed in: 229-4ubuntu21.15

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

An allocation of memory without limits, that could result in the stack clashing with another memory region, was discovered in systemd-journald when many entries are sent to the journal socket. A local attacker, or a remote one if systemd-journal-remote is used, may use this flaw to crash systemd-journald or execute code with journald privileges. Versions through v240 are vulnerable.

References

medium severity

Security Features

  • Vulnerable module: apparmor/libapparmor1
  • Introduced through: apparmor/libapparmor1@2.10.95-0ubuntu2.7

Detailed paths

  • Introduced through: humio/humio:1.0.56@* apparmor/libapparmor1@2.10.95-0ubuntu2.7

Overview

In all versions of AppArmor mount rules are accidentally widened when compiled.

References

medium severity

Improper Input Validation

  • Vulnerable module: apt
  • Introduced through: apt@1.2.24 and apt/libapt-pkg5.0@1.2.24
  • Fixed in: 1.2.32ubuntu0.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* apt@1.2.24
  • Introduced through: humio/humio:1.0.56@* apt/libapt-pkg5.0@1.2.24

Overview

Missing input validation in the ar/tar implementations of APT before version 2.1.2 could result in denial of service when processing specially crafted deb files.

References

medium severity

Integer Overflow or Wraparound

  • Vulnerable module: apt
  • Introduced through: apt@1.2.24 and apt/libapt-pkg5.0@1.2.24
  • Fixed in: 1.2.32ubuntu0.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* apt@1.2.24
  • Introduced through: humio/humio:1.0.56@* apt/libapt-pkg5.0@1.2.24

Overview

Affected versions of this package are vulnerable to Integer Overflow or Wraparound. APT had several integer overflows and underflows while parsing .deb packages, aka GHSL-2020-168 GHSL-2020-169, in files apt-pkg/contrib/extracttar.cc, apt-pkg/deb/debfile.cc, and apt-pkg/contrib/arfile.cc. This issue affects: apt 1.2.32ubuntu0 versions prior to 1.2.32ubuntu0.2; 1.6.12ubuntu0 versions prior to 1.6.12ubuntu0.2; 2.0.2ubuntu0 versions prior to 2.0.2ubuntu0.2; 2.1.10ubuntu0 versions prior to 2.1.10ubuntu0.1;

Remediation

Upgrade apt to version or higher.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: bzip2/libbz2-1.0
  • Introduced through: bzip2/libbz2-1.0@1.0.6-8
  • Fixed in: 1.0.6-8ubuntu0.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* bzip2/libbz2-1.0@1.0.6-8

Overview

BZ2_decompress in decompress.c in bzip2 through 1.0.6 has an out-of-bounds write when there are many selectors.

References

medium severity

Arbitrary Code Injection

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.15

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

Affected versions of this package are vulnerable to Arbitrary Code Injection curl 7.20.0 through 7.70.0 is vulnerable to improper restriction of names for files and other resources that can lead too overwriting a local file when the -J flag is used.

Remediation

Upgrade curl to version or higher.

References

medium severity

Buffer Overflow

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.14

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

medium severity

Improper Certificate Validation

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.18

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

Affected versions of this package are vulnerable to Improper Certificate Validation curl 7.41.0 through 7.73.0 is vulnerable to an improper check for certificate revocation due to insufficient verification of the OCSP response.

Remediation

Upgrade curl to version or higher.

References

medium severity

Integer Overflow or Wraparound

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.9

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

curl before version 7.61.1 is vulnerable to a buffer overrun in the NTLM authentication code. The internal function Curl_ntlm_core_mk_nt_hash multiplies the length of the password by two (SUM) to figure out how large temporary storage area to allocate from the heap. The length value is then subsequently used to iterate over the password and generate output into the allocated storage buffer. On systems with a 32 bit size_t, the math to calculate SUM triggers an integer overflow when the password length exceeds 2GB (2^31 bytes). This integer overflow usually causes a very small buffer to actually get allocated instead of the intended very huge one, making the use of that buffer end up in a heap buffer overflow. (This bug is almost identical to CVE-2017-8816.)

References

medium severity

Out-of-Bounds

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.11

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

Curl versions 7.33.0 through 7.61.1 are vulnerable to a buffer overrun in the SASL authentication code that may lead to denial of service.

References

medium severity

Out-of-bounds Read

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

libcurl versions from 7.36.0 to before 7.64.0 is vulnerable to a heap buffer out-of-bounds read. The function handling incoming NTLM type-2 messages (lib/vauth/ntlm.c:ntlm_decode_type2_target) does not validate incoming data correctly and is subject to an integer overflow vulnerability. Using that overflow, a malicious or broken NTLM server could trick libcurl to accept a bad length + offset combination that would lead to a buffer read out-of-bounds.

References

medium severity

Out-of-bounds Read

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.8

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

curl version curl 7.20.0 to and including curl 7.59.0 contains a CWE-126: Buffer Over-read vulnerability in denial of service that can result in curl can be tricked into reading data beyond the end of a heap based buffer used to store downloaded RTSP content.. This vulnerability appears to have been fixed in curl < 7.20.0 and curl >= 7.60.0.

References

medium severity

Out-of-bounds Read

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.11

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

Curl versions 7.14.1 through 7.61.1 are vulnerable to a heap-based buffer over-read in the tool_msgs.c:voutf() function that may result in information exposure and denial of service.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.18

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

Affected versions of this package are vulnerable to Out-of-bounds Write curl 7.21.0 to and including 7.73.0 is vulnerable to uncontrolled recursion due to a stack overflow issue in FTP wildcard match parsing.

Remediation

Upgrade curl to version or higher.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

libcurl versions from 7.36.0 to before 7.64.0 are vulnerable to a stack-based buffer overflow. The function creating an outgoing NTLM type-3 header (lib/vauth/ntlm.c:Curl_auth_create_ntlm_type3_message()), generates the request HTTP header contents based on previously received data. The check that exists to prevent the local buffer from getting overflowed is implemented wrongly (using unsigned math) and as such it does not prevent the overflow from happening. This output data can grow larger than the local buffer if very large 'nt response' data is extracted from a previous NTLMv2 header provided by the malicious or broken HTTP server. Such a 'large value' needs to be around 1000 bytes or more. The actual payload data copied to the target buffer comes from the NTLMv2 type-2 response header.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.13

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

A heap buffer overflow in the TFTP receiving code allows for DoS or arbitrary code execution in libcurl versions 7.19.4 through 7.64.1.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: cyrus-sasl2/libsasl2-2
  • Introduced through: cyrus-sasl2/libsasl2-2@2.1.26.dfsg1-14build1, cyrus-sasl2/libsasl2-modules@2.1.26.dfsg1-14build1 and others
  • Fixed in: 2.1.26.dfsg1-14ubuntu0.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* cyrus-sasl2/libsasl2-2@2.1.26.dfsg1-14build1
  • Introduced through: humio/humio:1.0.56@* cyrus-sasl2/libsasl2-modules@2.1.26.dfsg1-14build1
  • Introduced through: humio/humio:1.0.56@* cyrus-sasl2/libsasl2-modules-db@2.1.26.dfsg1-14build1

Overview

cyrus-sasl (aka Cyrus SASL) 2.1.27 has an out-of-bounds write leading to unauthenticated remote denial-of-service in OpenLDAP via a malformed LDAP packet. The OpenLDAP crash is ultimately caused by an off-by-one error in _sasl_add_string in common.c in cyrus-sasl.

References

medium severity

Out-of-bounds Read

  • Vulnerable module: db5.3/libdb5.3
  • Introduced through: db5.3/libdb5.3@5.3.28-11ubuntu0.1
  • Fixed in: 5.3.28-11ubuntu0.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* db5.3/libdb5.3@5.3.28-11ubuntu0.1

medium severity

Out-of-bounds Write

  • Vulnerable module: e2fsprogs
  • Introduced through: e2fsprogs@1.42.13-1ubuntu1, e2fsprogs/e2fslibs@1.42.13-1ubuntu1 and others
  • Fixed in: 1.42.13-1ubuntu1.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* e2fsprogs@1.42.13-1ubuntu1
  • Introduced through: humio/humio:1.0.56@* e2fsprogs/e2fslibs@1.42.13-1ubuntu1
  • Introduced through: humio/humio:1.0.56@* e2fsprogs/libcomerr2@1.42.13-1ubuntu1
  • Introduced through: humio/humio:1.0.56@* e2fsprogs/libss2@1.42.13-1ubuntu1

Overview

An exploitable code execution vulnerability exists in the quota file functionality of E2fsprogs 1.45.3. A specially crafted ext4 partition can cause an out-of-bounds write on the heap, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: e2fsprogs
  • Introduced through: e2fsprogs@1.42.13-1ubuntu1, e2fsprogs/e2fslibs@1.42.13-1ubuntu1 and others
  • Fixed in: 1.42.13-1ubuntu1.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* e2fsprogs@1.42.13-1ubuntu1
  • Introduced through: humio/humio:1.0.56@* e2fsprogs/e2fslibs@1.42.13-1ubuntu1
  • Introduced through: humio/humio:1.0.56@* e2fsprogs/libcomerr2@1.42.13-1ubuntu1
  • Introduced through: humio/humio:1.0.56@* e2fsprogs/libss2@1.42.13-1ubuntu1

Overview

A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.

References

medium severity

Out-of-bounds Read

  • Vulnerable module: expat/libexpat1
  • Introduced through: expat/libexpat1@2.1.0-7ubuntu0.16.04.3
  • Fixed in: 2.1.0-7ubuntu0.16.04.5

Detailed paths

  • Introduced through: humio/humio:1.0.56@* expat/libexpat1@2.1.0-7ubuntu0.16.04.3

Overview

In libexpat before 2.2.8, crafted XML input could fool the parser into changing from DTD parsing to document parsing too early; a consecutive call to XML_GetCurrentLineNumber (or XML_GetCurrentColumnNumber) then resulted in a heap-based buffer over-read.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: file
  • Introduced through: file@1:5.25-2ubuntu1 and file/libmagic1@1:5.25-2ubuntu1
  • Fixed in: 1:5.25-2ubuntu1.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* file@1:5.25-2ubuntu1
  • Introduced through: humio/humio:1.0.56@* file/libmagic1@1:5.25-2ubuntu1

Overview

do_core_note in readelf.c in libmagic.a in file 5.35 allows remote attackers to cause a denial of service (stack corruption and application crash) or possibly have unspecified other impact.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: file
  • Introduced through: file@1:5.25-2ubuntu1 and file/libmagic1@1:5.25-2ubuntu1
  • Fixed in: 1:5.25-2ubuntu1.3

Detailed paths

  • Introduced through: humio/humio:1.0.56@* file@1:5.25-2ubuntu1
  • Introduced through: humio/humio:1.0.56@* file/libmagic1@1:5.25-2ubuntu1

Overview

cdf_read_property_info in cdf.c in file through 5.37 does not restrict the number of CDF_VECTOR elements, which allows a heap-based buffer overflow (4-byte out-of-bounds write).

References

medium severity

Out-of-bounds Read

  • Vulnerable module: freetype/libfreetype6
  • Introduced through: freetype/libfreetype6@2.6.1-0.1ubuntu2.3
  • Fixed in: 2.6.1-0.1ubuntu2.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* freetype/libfreetype6@2.6.1-0.1ubuntu2.3

Overview

FreeType before 2.6.2 has a heap-based buffer over-read in tt_cmap14_validate in sfnt/ttcmap.c.

References

medium severity

Information Exposure

  • Vulnerable module: gcc-5/gcc-5-base
  • Introduced through: gcc-5/gcc-5-base@5.4.0-6ubuntu1~16.04.5 and gcc-5/libstdc++6@5.4.0-6ubuntu1~16.04.5

Detailed paths

  • Introduced through: humio/humio:1.0.56@* gcc-5/gcc-5-base@5.4.0-6ubuntu1~16.04.5
  • Introduced through: humio/humio:1.0.56@* gcc-5/libstdc++6@5.4.0-6ubuntu1~16.04.5

Overview

Affected versions of this package are vulnerable to Information Exposure. Arm Armv8-A core implementations utilizing speculative execution past unconditional changes in control flow may allow unauthorized disclosure of information to an attacker with local user access via a side-channel analysis, aka "straight-line speculation."

Remediation

There is no fixed version for gcc-5.

References

medium severity

Information Exposure

  • Vulnerable module: gccgo-6/gcc-6-base
  • Introduced through: gccgo-6/gcc-6-base@6.0.1-0ubuntu1 and gccgo-6/libgcc1@1:6.0.1-0ubuntu1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* gccgo-6/gcc-6-base@6.0.1-0ubuntu1
  • Introduced through: humio/humio:1.0.56@* gccgo-6/libgcc1@1:6.0.1-0ubuntu1

Overview

Affected versions of this package are vulnerable to Information Exposure. Arm Armv8-A core implementations utilizing speculative execution past unconditional changes in control flow may allow unauthorized disclosure of information to an attacker with local user access via a side-channel analysis, aka "straight-line speculation."

Remediation

There is no fixed version for gccgo-6.

References

medium severity

Out-of-Bounds

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others
  • Fixed in: 2.23-0ubuntu11.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

An SSE2-optimized memmove implementation for i386 in sysdeps/i386/i686/multiarch/memcpy-sse2-unaligned.S in the GNU C Library (aka glibc or libc6) 2.21 through 2.27 does not correctly perform the overlapping memory check if the source memory range spans the middle of the address space, resulting in corrupt data being produced by the copy operation. This may disclose information to context-dependent attackers, or result in a denial of service, or, possibly, code execution.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others
  • Fixed in: 2.23-0ubuntu11.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

An integer overflow in the implementation of the posix_memalign in memalign functions in the GNU C Library (aka glibc or libc6) 2.26 and earlier could cause these functions to return a pointer to a heap area that is too small, potentially leading to heap corruption.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others
  • Fixed in: 2.23-0ubuntu11.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

stdlib/canonicalize.c in the GNU C Library (aka glibc or libc6) 2.27 and earlier, when processing very long pathname arguments to the realpath function, could encounter an integer overflow on 32-bit architectures, leading to a stack-based buffer overflow and, potentially, arbitrary code execution.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others
  • Fixed in: 2.23-0ubuntu11.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

An AVX-512-optimized implementation of the mempcpy function in the GNU C Library (aka glibc or libc6) 2.27 and earlier may write data beyond the target buffer, leading to a buffer overflow in __mempcpy_avx512_no_vzeroupper.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others
  • Fixed in: 2.23-0ubuntu11.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

Affected versions of this package are vulnerable to Out-of-bounds Write. An out-of-bounds write vulnerability was found in glibc before 2.31 when handling signal trampolines on PowerPC. Specifically, the backtrace function did not properly check the array bounds when storing the frame address, resulting in a denial of service or potential code execution. The highest threat from this vulnerability is to system availability.

Remediation

Upgrade glibc to version or higher.

References

medium severity

Cryptographic Issues

  • Vulnerable module: gnupg
  • Introduced through: gnupg@1.4.20-1ubuntu3.1 and gnupg/gpgv@1.4.20-1ubuntu3.1
  • Fixed in: 1.4.20-1ubuntu3.3

Detailed paths

  • Introduced through: humio/humio:1.0.56@* gnupg@1.4.20-1ubuntu3.1
  • Introduced through: humio/humio:1.0.56@* gnupg/gpgv@1.4.20-1ubuntu3.1

Overview

libgcrypt before version 1.7.8 is vulnerable to a cache side-channel attack resulting into a complete break of RSA-1024 while using the left-to-right method for computing the sliding-window expansion. The same attack is believed to work on RSA-2048 with moderately more computation. This side-channel requires that attacker can run arbitrary software on the hardware where the private RSA key is used.

References

medium severity

Use of Incorrectly-Resolved Name or Reference

  • Vulnerable module: gnupg
  • Introduced through: gnupg@1.4.20-1ubuntu3.1 and gnupg/gpgv@1.4.20-1ubuntu3.1
  • Fixed in: 1.4.20-1ubuntu3.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* gnupg@1.4.20-1ubuntu3.1
  • Introduced through: humio/humio:1.0.56@* gnupg/gpgv@1.4.20-1ubuntu3.1

Overview

mainproc.c in GnuPG before 2.2.8 mishandles the original filename during decryption and verification actions, which allows remote attackers to spoof the output that GnuPG sends on file descriptor 2 to other programs that use the "--status-fd 2" option. For example, the OpenPGP data might represent an original filename that contains line feed characters in conjunction with GOODSIG or VALIDSIG status codes.

References

medium severity

Use of a Broken or Risky Cryptographic Algorithm

  • Vulnerable module: gnutls28/libgnutls30
  • Introduced through: gnutls28/libgnutls30@3.4.10-4ubuntu1.4
  • Fixed in: 3.4.10-4ubuntu1.5

Detailed paths

  • Introduced through: humio/humio:1.0.56@* gnutls28/libgnutls30@3.4.10-4ubuntu1.4

Overview

It was found that the GnuTLS implementation of HMAC-SHA-384 was vulnerable to a Lucky thirteen style attack. Remote attackers could use this flaw to conduct distinguishing attacks and plain text recovery attacks via statistical analysis of timing data using crafted packets.

References

medium severity

Use of a Broken or Risky Cryptographic Algorithm

  • Vulnerable module: gnutls28/libgnutls30
  • Introduced through: gnutls28/libgnutls30@3.4.10-4ubuntu1.4
  • Fixed in: 3.4.10-4ubuntu1.5

Detailed paths

  • Introduced through: humio/humio:1.0.56@* gnutls28/libgnutls30@3.4.10-4ubuntu1.4

Overview

A cache-based side channel in GnuTLS implementation that leads to plain text recovery in cross-VM attack setting was found. An attacker could use a combination of "Just in Time" Prime+probe attack in combination with Lucky-13 attack to recover plain text using crafted packets.

References

medium severity

Use of a Broken or Risky Cryptographic Algorithm

  • Vulnerable module: gnutls28/libgnutls30
  • Introduced through: gnutls28/libgnutls30@3.4.10-4ubuntu1.4
  • Fixed in: 3.4.10-4ubuntu1.5

Detailed paths

  • Introduced through: humio/humio:1.0.56@* gnutls28/libgnutls30@3.4.10-4ubuntu1.4

Overview

It was found that the GnuTLS implementation of HMAC-SHA-256 was vulnerable to a Lucky thirteen style attack. Remote attackers could use this flaw to conduct distinguishing attacks and plaintext-recovery attacks via statistical analysis of timing data using crafted packets.

References

medium severity

CVE-2016-3119

  • Vulnerable module: krb5/krb5-locales
  • Introduced through: krb5/krb5-locales@1.13.2+dfsg-5ubuntu2, krb5/libgssapi-krb5-2@1.13.2+dfsg-5ubuntu2 and others
  • Fixed in: 1.13.2+dfsg-5ubuntu2.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* krb5/krb5-locales@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libgssapi-krb5-2@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libk5crypto3@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libkrb5-3@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libkrb5support0@1.13.2+dfsg-5ubuntu2

Overview

The process_db_args function in plugins/kdb/ldap/libkdb_ldap/ldap_principal2.c in the LDAP KDB module in kadmind in MIT Kerberos 5 (aka krb5) through 1.13.4 and 1.14.x through 1.14.1 mishandles the DB argument, which allows remote authenticated users to cause a denial of service (NULL pointer dereference and daemon crash) via a crafted request to modify a principal.

References

medium severity

NULL Pointer Dereference

  • Vulnerable module: krb5/krb5-locales
  • Introduced through: krb5/krb5-locales@1.13.2+dfsg-5ubuntu2, krb5/libgssapi-krb5-2@1.13.2+dfsg-5ubuntu2 and others
  • Fixed in: 1.13.2+dfsg-5ubuntu2.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* krb5/krb5-locales@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libgssapi-krb5-2@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libk5crypto3@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libkrb5-3@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libkrb5support0@1.13.2+dfsg-5ubuntu2

Overview

The validate_as_request function in kdc_util.c in the Key Distribution Center (KDC) in MIT Kerberos 5 (aka krb5) before 1.13.6 and 1.4.x before 1.14.3, when restrict_anonymous_to_tgt is enabled, uses an incorrect client data structure, which allows remote authenticated users to cause a denial of service (NULL pointer dereference and daemon crash) via an S4U2Self request.

References

medium severity

Reachable Assertion

  • Vulnerable module: krb5/krb5-locales
  • Introduced through: krb5/krb5-locales@1.13.2+dfsg-5ubuntu2, krb5/libgssapi-krb5-2@1.13.2+dfsg-5ubuntu2 and others
  • Fixed in: 1.13.2+dfsg-5ubuntu2.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* krb5/krb5-locales@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libgssapi-krb5-2@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libk5crypto3@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libkrb5-3@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libkrb5support0@1.13.2+dfsg-5ubuntu2

Overview

In MIT Kerberos 5 (aka krb5) 1.7 and later, an authenticated attacker can cause a KDC assertion failure by sending invalid S4U2Self or S4U2Proxy requests.

References

medium severity

Reachable Assertion

  • Vulnerable module: krb5/krb5-locales
  • Introduced through: krb5/krb5-locales@1.13.2+dfsg-5ubuntu2, krb5/libgssapi-krb5-2@1.13.2+dfsg-5ubuntu2 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* krb5/krb5-locales@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libgssapi-krb5-2@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libk5crypto3@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libkrb5-3@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libkrb5support0@1.13.2+dfsg-5ubuntu2

Overview

A Reachable Assertion issue was discovered in the KDC in MIT Kerberos 5 (aka krb5) before 1.17. If an attacker can obtain a krbtgt ticket using an older encryption type (single-DES, triple-DES, or RC4), the attacker can crash the KDC by making an S4U2Self request.

References

medium severity

Uncontrolled Recursion

  • Vulnerable module: krb5/krb5-locales
  • Introduced through: krb5/krb5-locales@1.13.2+dfsg-5ubuntu2, krb5/libgssapi-krb5-2@1.13.2+dfsg-5ubuntu2 and others
  • Fixed in: 1.13.2+dfsg-5ubuntu2.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* krb5/krb5-locales@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libgssapi-krb5-2@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libk5crypto3@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libkrb5-3@1.13.2+dfsg-5ubuntu2
  • Introduced through: humio/humio:1.0.56@* krb5/libkrb5support0@1.13.2+dfsg-5ubuntu2

Overview

Affected versions of this package are vulnerable to Uncontrolled Recursion. 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.

Remediation

Upgrade krb5 to version or higher.

References

medium severity

Race Condition

  • Vulnerable module: libgcrypt20
  • Introduced through: libgcrypt20@1.6.5-2ubuntu0.3
  • Fixed in: 1.6.5-2ubuntu0.6

Detailed paths

  • Introduced through: humio/humio:1.0.56@* libgcrypt20@1.6.5-2ubuntu0.3

Overview

It was discovered that there was a ECDSA timing attack in the libgcrypt20 cryptographic library. Version affected: 1.8.4-5, 1.7.6-2+deb9u3, and 1.6.3-2+deb8u4. Versions fixed: 1.8.5-2 and 1.6.3-2+deb8u7.

References

medium severity

Access Restriction Bypass

  • Vulnerable module: libseccomp/libseccomp2
  • Introduced through: libseccomp/libseccomp2@2.3.1-2.1ubuntu2~16.04.1
  • Fixed in: 2.4.1-0ubuntu0.16.04.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* libseccomp/libseccomp2@2.3.1-2.1ubuntu2~16.04.1

Overview

libseccomp before 2.4.0 did not correctly generate 64-bit syscall argument comparisons using the arithmetic operators (LT, GT, LE, GE), which might able to lead to bypassing seccomp filters and potential privilege escalations.

References

medium severity

Improper Input Validation

  • Vulnerable module: libx11/libx11-6
  • Introduced through: libx11/libx11-6@2:1.6.3-1ubuntu2 and libx11/libx11-data@2:1.6.3-1ubuntu2
  • Fixed in: 2:1.6.3-1ubuntu2.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* libx11/libx11-6@2:1.6.3-1ubuntu2
  • Introduced through: humio/humio:1.0.56@* libx11/libx11-data@2:1.6.3-1ubuntu2

Overview

An issue was discovered in XListExtensions in ListExt.c in libX11 through 1.6.5. A malicious server can send a reply in which the first string overflows, causing a variable to be set to NULL that will be freed later on, leading to DoS (segmentation fault).

References

medium severity

Integer Overflow or Wraparound

  • Vulnerable module: libx11/libx11-6
  • Introduced through: libx11/libx11-6@2:1.6.3-1ubuntu2 and libx11/libx11-data@2:1.6.3-1ubuntu2
  • Fixed in: 2:1.6.3-1ubuntu2.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* libx11/libx11-6@2:1.6.3-1ubuntu2
  • Introduced through: humio/humio:1.0.56@* libx11/libx11-data@2:1.6.3-1ubuntu2

Overview

Affected versions of this package are vulnerable to Integer Overflow or Wraparound. An integer overflow leading to a heap-buffer overflow was found in The X Input Method (XIM) client was implemented in libX11 before version 1.6.10. As per upstream this is security relevant when setuid programs call XIM client functions while running with elevated privileges. No such programs are shipped with Red Hat Enterprise Linux.

Remediation

Upgrade libx11 to version or higher.

References

medium severity

Integer Overflow or Wraparound

  • Vulnerable module: libx11/libx11-6
  • Introduced through: libx11/libx11-6@2:1.6.3-1ubuntu2 and libx11/libx11-data@2:1.6.3-1ubuntu2
  • Fixed in: 2:1.6.3-1ubuntu2.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* libx11/libx11-6@2:1.6.3-1ubuntu2
  • Introduced through: humio/humio:1.0.56@* libx11/libx11-data@2:1.6.3-1ubuntu2

Overview

Affected versions of this package are vulnerable to Integer Overflow or Wraparound. An integer overflow vulnerability leading to a double-free was found in libX11. This flaw allows a local privileged attacker to cause an application compiled with libX11 to crash, or in some cases, result in arbitrary code execution. The highest threat from this flaw is to confidentiality, integrity as well as system availability.

Remediation

Upgrade libx11 to version or higher.

References

medium severity

Off-by-one Error

  • Vulnerable module: libx11/libx11-6
  • Introduced through: libx11/libx11-6@2:1.6.3-1ubuntu2 and libx11/libx11-data@2:1.6.3-1ubuntu2
  • Fixed in: 2:1.6.3-1ubuntu2.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* libx11/libx11-6@2:1.6.3-1ubuntu2
  • Introduced through: humio/humio:1.0.56@* libx11/libx11-data@2:1.6.3-1ubuntu2

Overview

An issue was discovered in libX11 through 1.6.5. The function XListExtensions in ListExt.c is vulnerable to an off-by-one error caused by malicious server responses, leading to DoS or possibly unspecified other impact.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: libx11/libx11-6
  • Introduced through: libx11/libx11-6@2:1.6.3-1ubuntu2 and libx11/libx11-data@2:1.6.3-1ubuntu2
  • Fixed in: 2:1.6.3-1ubuntu2.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* libx11/libx11-6@2:1.6.3-1ubuntu2
  • Introduced through: humio/humio:1.0.56@* libx11/libx11-data@2:1.6.3-1ubuntu2

Overview

An issue was discovered in libX11 through 1.6.5. The function XListExtensions in ListExt.c interprets a variable as signed instead of unsigned, resulting in an out-of-bounds write (of up to 128 bytes), leading to DoS or remote code execution.

References

medium severity

Access Restriction Bypass

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Access Restriction Bypass. None

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Access Restriction Bypass

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_251

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Access Restriction Bypass. A flaw was found in the way the ForkJoinPool class in the Libraries component of OpenJDK handled its access control context. This could possibly lead to code being executed with incorrect permissions, possibly leading to bypass of certain intended restrictions defined by a SecurityManager.

Remediation

Upgrade openjdk-jre to version 8.0.251, 11.0.7, 14.0.1 or higher.

References

medium severity

Cross-site Scripting (XSS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Cross-site Scripting (XSS). None

Details

A cross-site scripting attack occurs when the attacker tricks a legitimate web-based application or site to accept a request as originating from a trusted source.

This is done by escaping the context of the web application; the web application then delivers that data to its users along with other trusted dynamic content, without validating it. The browser unknowingly executes malicious script on the client side (through client-side languages; usually JavaScript or HTML) in order to perform actions that are otherwise typically blocked by the browser’s Same Origin Policy.

Injecting malicious code is the most prevalent manner by which XSS is exploited; for this reason, escaping characters in order to prevent this manipulation is the top method for securing code against this vulnerability.

Escaping means that the application is coded to mark key characters, and particularly key characters included in user input, to prevent those characters from being interpreted in a dangerous context. For example, in HTML, < can be coded as &lt; and > can be coded as &gt; in order to be interpreted and displayed as themselves in text, while within the code itself, they are used for HTML tags. If malicious content is injected into an application that escapes special characters and that malicious content uses < and > as HTML tags, those characters are nonetheless not interpreted as HTML tags by the browser if they’ve been correctly escaped in the application code and in this way the attempted attack is diverted.

The most prominent use of XSS is to steal cookies (source: OWASP HttpOnly) and hijack user sessions, but XSS exploits have been used to expose sensitive information, enable access to privileged services and functionality and deliver malware.

Types of attacks

There are a few methods by which XSS can be manipulated:

Type Origin Description
Stored Server The malicious code is inserted in the application (usually as a link) by the attacker. The code is activated every time a user clicks the link.
Reflected Server The attacker delivers a malicious link externally from the vulnerable web site application to a user. When clicked, malicious code is sent to the vulnerable web site, which reflects the attack back to the user’s browser.
DOM-based Client The attacker forces the user’s browser to render a malicious page. The data in the page itself delivers the cross-site scripting data.
Mutated The attacker injects code that appears safe, but is then rewritten and modified by the browser, while parsing the markup. An example is rebalancing unclosed quotation marks or even adding quotation marks to unquoted parameters.

Affected environments

The following environments are susceptible to an XSS attack:

  • Web servers
  • Application servers
  • Web application environments

How to prevent

This section describes the top best practices designed to specifically protect your code:

  • Sanitize data input in an HTTP request before reflecting it back, ensuring all data is validated, filtered or escaped before echoing anything back to the user, such as the values of query parameters during searches.
  • Convert special characters such as ?, &, /, <, > and spaces to their respective HTML or URL encoded equivalents.
  • Give users the option to disable client-side scripts.
  • Redirect invalid requests.
  • Detect simultaneous logins, including those from two separate IP addresses, and invalidate those sessions.
  • Use and enforce a Content Security Policy (source: Wikipedia) to disable any features that might be manipulated for an XSS attack.
  • Read the documentation for any of the libraries referenced in your code to understand which elements allow for embedded HTML.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Cryptographic Issues

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_241

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Cryptographic Issues due to use of unsafe RSA-MD5 checkum in Kerberos TGS.

Remediation

Upgrade openjdk-jre to version 7.0.251, 8.0.241, 11.0.6, 13.0.2 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). None

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). None

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). None

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). None

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). None

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). None

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_251

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS) in the way the TLS implementation in the JSSE component of OpenJDK re-used single null TLS sessions for new TLS connections. A remote attacker could possibly use this flaw to impact availability of a Java application providing TLS server.

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.261, 8.0.251, 11.0.7, 14.0.1 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_182

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). Vulnerability in the Java SE, Java SE Embedded, JRockit component of Oracle Java SE (subcomponent: Sound). Supported versions that are affected are Java SE: 6u201, 7u191 and 8u182; Java SE Embedded: 8u181; JRockit: R28.3.19. Easily exploitable vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded, JRockit. Successful attacks of this vulnerability can result in unauthorized ability to cause a partial denial of service (partial DOS) of Java SE, Java SE Embedded, JRockit. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets (in Java SE 8), that load and run untrusted code (e.g., code that comes from the internet) and rely on the Java sandbox for security. This vulnerability can also be exploited by using APIs in the specified Component, e.g. through a web service which supplies data to the APIs.

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its intended and legitimate users.

Unlike other vulnerabilities, DoS attacks usually do not aim at breaching security. Rather, they are focused on making websites and services unavailable to genuine users resulting in downtime.

One popular Denial of Service vulnerability is DDoS (a Distributed Denial of Service), an attack that attempts to clog network pipes to the system by generating a large volume of traffic from many machines.

When it comes to open source libraries, DoS vulnerabilities allow attackers to trigger such a crash or crippling of the service by using a flaw either in the application code or from the use of open source libraries.

Two common types of DoS vulnerabilities:

  • High CPU/Memory Consumption- An attacker sending crafted requests that could cause the system to take a disproportionate amount of time to process. For example, commons-fileupload:commons-fileupload.

  • Crash - An attacker sending crafted requests that could cause the system to crash. For Example, npm ws package

Remediation

Upgrade openjdk-jre to version 7.0.191, 8.0.182 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_171

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). Vulnerability in the Java SE, Java SE Embedded, JRockit component of Oracle Java SE (subcomponent: Security). Easily exploitable vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded, JRockit. Successful attacks of this vulnerability can result in unauthorized ability to cause a partial denial of service (partial DOS) of Java SE, Java SE Embedded, JRockit. Note: Applies to client and server deployment of Java. This vulnerability can be exploited through sandboxed Java Web Start applications and sandboxed Java applets. It can also be exploited by supplying data to APIs in the specified Component without using sandboxed Java Web Start applications or sandboxed Java applets, such as through a web service.

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.181, 8.0.171 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_171

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). Vulnerability in the Java SE, Java SE Embedded, JRockit component of Oracle Java SE (subcomponent: Concurrency). Easily exploitable vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded, JRockit. Successful attacks of this vulnerability can result in unauthorized ability to cause a partial denial of service (partial DOS) of Java SE, Java SE Embedded, JRockit. Note: Applies to client and server deployment of Java. This vulnerability can be exploited through sandboxed Java Web Start applications and sandboxed Java applets. It can also be exploited by supplying data to APIs in the specified Component without using sandboxed Java Web Start applications or sandboxed Java applets, such as through a web service.

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.181, 8.0.171, 10.0.1 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_171

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). Vulnerability in the Java SE, Java SE Embedded, JRockit component of Oracle Java SE (subcomponent: JMX). Easily exploitable vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded, JRockit. Successful attacks of this vulnerability can result in unauthorized ability to cause a partial denial of service (partial DOS) of Java SE, Java SE Embedded, JRockit. Note: Applies to client and server deployment of Java. This vulnerability can be exploited through sandboxed Java Web Start applications and sandboxed Java applets. It can also be exploited by supplying data to APIs in the specified Component without using sandboxed Java Web Start applications or sandboxed Java applets, such as through a web service.

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.181, 8.0.171 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_171

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). Vulnerability in the Java SE, Java SE Embedded, JRockit component of Oracle Java SE (subcomponent: AWT). Easily exploitable vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded, JRockit. Successful attacks of this vulnerability can result in unauthorized ability to cause a partial denial of service (partial DOS) of Java SE, Java SE Embedded, JRockit. Note: Applies to client and server deployment of Java. This vulnerability can be exploited through sandboxed Java Web Start applications and sandboxed Java applets. It can also be exploited by supplying data to APIs in the specified Component without using sandboxed Java Web Start applications or sandboxed Java applets, such as through a web service.

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.181, 8.0.171 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_171

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). Vulnerability in the Java SE, Java SE Embedded, JRockit component of Oracle Java SE (subcomponent: JAXP). Easily exploitable vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded, JRockit. Successful attacks of this vulnerability can result in unauthorized ability to cause a partial denial of service (partial DOS) of Java SE, Java SE Embedded, JRockit. Note: Applies to client and server deployment of Java. This vulnerability can be exploited through sandboxed Java Web Start applications and sandboxed Java applets. It can also be exploited by supplying data to APIs in the specified Component without using sandboxed Java Web Start applications or sandboxed Java applets, such as through a web service.

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.181, 8.0.171 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_171

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). Vulnerability in the Java SE, Java SE Embedded, JRockit component of Oracle Java SE (subcomponent: Serialization). Easily exploitable vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded, JRockit. Successful attacks of this vulnerability can result in unauthorized ability to cause a partial denial of service (partial DOS) of Java SE, Java SE Embedded, JRockit. Note: Applies to client and server deployment of Java. This vulnerability can be exploited through sandboxed Java Web Start applications and sandboxed Java applets. It can also be exploited by supplying data to APIs in the specified Component without using sandboxed Java Web Start applications or sandboxed Java applets, such as through a web service.

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.181, 8.0.171 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_191

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). Vulnerability in the Java SE, Java SE Embedded, JRockit component of Oracle Java SE (subcomponent: JSSE). Difficult to exploit vulnerability allows unauthenticated attacker with network access via SSL/TLS to compromise Java SE, Java SE Embedded, JRockit. Successful attacks of this vulnerability can result in unauthorized update, insert or delete access to some of Java SE, Java SE Embedded, JRockit accessible data as well as unauthorized read access to a subset of Java SE, Java SE Embedded, JRockit accessible data and unauthorized ability to cause a partial denial of service (partial DOS) of Java SE, Java SE Embedded, JRockit. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets (in Java SE 8), that load and run untrusted code (e.g. code that comes from the internet) and rely on the Java sandbox for security. This vulnerability can also be exploited by using APIs in the specified Component, e.g. through a web service which supplies data to the APIs.

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.201, 8.0.191 or higher.

References

medium severity

Denial of Service (DoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_191

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Denial of Service (DoS). Vulnerability in the Java SE, Java SE Embedded, JRockit component of Oracle Java SE (subcomponent: Sound). Easily exploitable vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded, JRockit. Successful attacks of this vulnerability can result in unauthorized ability to cause a partial denial of service (partial DOS) of Java SE, Java SE Embedded, JRockit. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets (in Java SE 8), that load and run untrusted code (e.g., code that comes from the internet) and rely on the Java sandbox for security. This vulnerability can also be exploited by using APIs in the specified Component, e.g. through a web service which supplies data to the APIs.

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.201, 8.0.191 or higher.

References

medium severity

Encoding Error

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_241

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Encoding Error. Incorrect isBuiltinStreamHandler causes URL normalization issues.

Remediation

Upgrade openjdk-jre to version 7.0.251, 8.0.241, 11.0.6, 13.0.2 or higher.

References

medium severity

HTTP Response Splitting

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_251

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to HTTP Response Splitting. The HttpServer implementation did not restrict the use of CR and LF characters in values for HTTP headers, possibly allowing HTTP response splitting attacks.

Remediation

Upgrade openjdk-jre to version 7.0.261, 8.0.251, 11.0.7, 14.0.1 or higher.

References

medium severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_231

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. None

Remediation

Upgrade openjdk-jre to version 7.0.241, 8.0.231, 11.0.5, 13.0.1 or higher.

References

medium severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_171

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE, JRockit component of Oracle Java SE (subcomponent: RMI). Difficult to exploit vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, JRockit. Successful attacks require human interaction from a person other than the attacker. Successful attacks of this vulnerability can result in unauthorized update, insert or delete access to some of Java SE, JRockit accessible data as well as unauthorized read access to a subset of Java SE, JRockit accessible data. Note: This vulnerability can only be exploited by supplying data to APIs in the specified Component without using Untrusted Java Web Start applications or Untrusted Java applets, such as through a web service.

Remediation

Upgrade openjdk-jre to version 7.0.181, 8.0.171 or higher.

References

medium severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_181

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE, Java SE Embedded component of Oracle Java SE (subcomponent: Libraries). Easily exploitable vulnerability allows unauthenticated attacker with network access via multiple protocols to compromise Java SE, Java SE Embedded. Successful attacks require human interaction from a person other than the attacker. Successful attacks of this vulnerability can result in unauthorized read access to a subset of Java SE, Java SE Embedded accessible data. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets, that load and run untrusted code (e.g., code that comes from the internet) and rely on the Java sandbox for security. This vulnerability does not apply to Java deployments, typically in servers, that load and run only trusted code (e.g., code installed by an administrator).

Remediation

Upgrade openjdk-jre to version 7.0.191, 8.0.181 or higher.

References

medium severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_181

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE, Java SE Embedded component of Oracle Java SE (subcomponent: JSSE). Difficult to exploit vulnerability allows unauthenticated attacker with network access via SSL/TLS to compromise Java SE, Java SE Embedded. Successful attacks of this vulnerability can result in unauthorized creation, deletion or modification access to critical data or all Java SE, Java SE Embedded accessible data. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets, that load and run untrusted code (e.g., code that comes from the internet) and rely on the Java sandbox for security. This vulnerability does not apply to Java deployments, typically in servers, that load and run only trusted code (e.g., code installed by an administrator).

Remediation

Upgrade openjdk-jre to version 7.0.191, 8.0.181 or higher.

References

medium severity

Improper Access Control

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_191

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Access Control. Vulnerability in the Java SE, Java SE Embedded component of Oracle Java SE (subcomponent: Serviceability). Easily exploitable vulnerability allows low privileged attacker with logon to the infrastructure where Java SE, Java SE Embedded executes to compromise Java SE, Java SE Embedded. Successful attacks require human interaction from a person other than the attacker. Successful attacks of this vulnerability can result in unauthorized creation, deletion or modification access to critical data or all Java SE, Java SE Embedded accessible data as well as unauthorized access to critical data or complete access to all Java SE, Java SE Embedded accessible data. Note: This vulnerability applies to Java deployments, typically in clients running sandboxed Java Web Start applications or sandboxed Java applets (in Java SE 8), that load and run untrusted code (e.g., code that comes from the internet) and rely on the Java sandbox for security. This vulnerability does not apply to Java deployments, typically in servers, that load and run only trusted code (e.g. code installed by an administrator). This vulnerability can only be exploited when Java Usage Tracker functionality is being used.

Remediation

Upgrade openjdk-jre to version 8.0.191 or higher.

References

medium severity

Improper Handling

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Handling via the HTTP proxy responses in HttpURLConnection.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Improper Handling

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Handling. The Kerberos implementation in the Kerberos component in OpenJDK did not properly handle proxy credentials. This could lead to the unintended use of wrong credentials and possible user impersonation.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Improper Input Validation

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_251

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Improper Input Validation. A flaw was found in the way the XMLSchemaValidator class in the JAXP component of OpenJDK enforced the "use-grammar-pool-only" feature. A specially-crafted XML file could possibly use this flaw to manipulate with the validation process in certain cases.

Remediation

Upgrade openjdk-jre to version 7.0.261, 8.0.251, 11.0.7, 14.0.1 or higher.

References

medium severity

integer overflow

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to integer overflow via the SunGraphics2D class in the 2D component in OpenJDK. The check of offset and length values passed to drawChars() and drawBytes() methods could be bypassed, leading to excessive memory allocation or attempt to access buffer out of bounds.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Integer Overflow

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_271

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Integer Overflow. It was discovered that the Hotspot component of OpenJDK did not properly check for integer overflows when when optimizing code, leading to out-of-bounds access. An untrusted Java application or applet could use this flaw to bypass certain Java sandbox restrictions.

Remediation

Upgrade openjdk-jre to version 7.0.281, 8.0.271, 11.0.9, 15.0.1 or higher.

References

medium severity

Man-in-the-Middle (MitM)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_241

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Man-in-the-Middle (MitM). It does not correctly handle CertificateVerify TLS handshake message received unexpectedly. An attacker can use this flaw to affect confidentiality or integrity of a TLS connection.

Remediation

Upgrade openjdk-jre to version 7.0.251, 8.0.241, 11.0.6, 13.0.2 or higher.

References

medium severity

Out-of-Bounds

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Out-of-Bounds. None

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Regular Expression Denial of Service (ReDoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Regular Expression Denial of Service (ReDoS). None

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Regular Expression Denial of Service (ReDoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_221

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Regular Expression Denial of Service (ReDoS). None

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.231, 8.0.221, 11.0.5, 13.0.1 or higher.

References

medium severity

Regular Expression Denial of Service (ReDoS)

  • Vulnerable module: openjdk-jre
  • Introduced through: openjdk-jre@1.8.0_162-b01
  • Fixed in: 1.8.0_251

Detailed paths

  • Introduced through: docker-image|humio/humio@1.0.56 openjdk-jre@1.8.0_162-b01

Overview

openjdk-jre is a free and open-source implementation of the Java Platform, Standard Edition (Java SE).

Affected versions of this package are vulnerable to Regular Expression Denial of Service (ReDoS). The use of overly complex regular expressions in java.utils.Scanner could cause a high CPU usage when Scanner was used on parse certain inputs.

Details

Denial of Service (DoS) describes a family of attacks, all aimed at making a system inaccessible to its original and legitimate users. There are many types of DoS attacks, ranging from trying to clog the network pipes to the system by generating a large volume of traffic from many machines (a Distributed Denial of Service - DDoS - attack) to sending crafted requests that cause a system to crash or take a disproportional amount of time to process.

The Regular expression Denial of Service (ReDoS) is a type of Denial of Service attack. Regular expressions are incredibly powerful, but they aren't very intuitive and can ultimately end up making it easy for attackers to take your site down.

Let’s take the following regular expression as an example:

regex = /A(B|C+)+D/

This regular expression accomplishes the following:

  • A The string must start with the letter 'A'
  • (B|C+)+ The string must then follow the letter A with either the letter 'B' or some number of occurrences of the letter 'C' (the + matches one or more times). The + at the end of this section states that we can look for one or more matches of this section.
  • D Finally, we ensure this section of the string ends with a 'D'

The expression would match inputs such as ABBD, ABCCCCD, ABCBCCCD and ACCCCCD

It most cases, it doesn't take very long for a regex engine to find a match:

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCD")'
0.04s user 0.01s system 95% cpu 0.052 total

$ time node -e '/A(B|C+)+D/.test("ACCCCCCCCCCCCCCCCCCCCCCCCCCCCX")'
1.79s user 0.02s system 99% cpu 1.812 total

The entire process of testing it against a 30 characters long string takes around ~52ms. But when given an invalid string, it takes nearly two seconds to complete the test, over ten times as long as it took to test a valid string. The dramatic difference is due to the way regular expressions get evaluated.

Most Regex engines will work very similarly (with minor differences). The engine will match the first possible way to accept the current character and proceed to the next one. If it then fails to match the next one, it will backtrack and see if there was another way to digest the previous character. If it goes too far down the rabbit hole only to find out the string doesn’t match in the end, and if many characters have multiple valid regex paths, the number of backtracking steps can become very large, resulting in what is known as catastrophic backtracking.

Let's look at how our expression runs into this problem, using a shorter string: "ACCCX". While it seems fairly straightforward, there are still four different ways that the engine could match those three C's:

  1. CCC
  2. CC+C
  3. C+CC
  4. C+C+C.

The engine has to try each of those combinations to see if any of them potentially match against the expression. When you combine that with the other steps the engine must take, we can use RegEx 101 debugger to see the engine has to take a total of 38 steps before it can determine the string doesn't match.

From there, the number of steps the engine must use to validate a string just continues to grow.

String Number of C's Number of steps
ACCCX 3 38
ACCCCX 4 71
ACCCCCX 5 136
ACCCCCCCCCCCCCCX 14 65,553

By the time the string includes 14 C's, the engine has to take over 65,000 steps just to see if the string is valid. These extreme situations can cause them to work very slowly (exponentially related to input size, as shown above), allowing an attacker to exploit this and can cause the service to excessively consume CPU, resulting in a Denial of Service.

Remediation

Upgrade openjdk-jre to version 7.0.261, 8.0.251, 11.0.7, 14.0.1 or higher.

References

medium severity

Access of Resource Using Incompatible Type ('Type Confusion')

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to Access of Resource Using Incompatible Type ('Type Confusion'). A flaw was discovered in ldap_X509dn2bv in OpenLDAP before 2.4.57 leading to a slapd crash in the X.509 DN parsing in ad_keystring, resulting in denial of service.

Remediation

Upgrade openldap to version or higher.

References

medium severity

CVE-2020-25709

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.11

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to CVE-2020-25709 assertion failure in Certificate List syntax validation

Remediation

Upgrade openldap to version or higher.

References

medium severity

CVE-2020-25710

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.11

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to CVE-2020-25710 assertion failure in CSN normalization with invalid input

Remediation

Upgrade openldap to version or higher.

References

medium severity

CVE-2020-36226

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to CVE-2020-36226. A flaw was discovered in OpenLDAP before 2.4.57 leading to a memch->bv_len miscalculation and slapd crash in the saslAuthzTo processing, resulting in denial of service.

Remediation

Upgrade openldap to version or higher.

References

medium severity

Double Free

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to Double Free. A flaw was discovered in OpenLDAP before 2.4.57 leading to a double free and slapd crash in the saslAuthzTo processing, resulting in denial of service.

Remediation

Upgrade openldap to version or higher.

References

medium severity

Improper Authentication

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.6

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

An issue was discovered in OpenLDAP 2.x before 2.4.48. When using SASL authentication and session encryption, and relying on the SASL security layers in slapd access controls, it is possible to obtain access that would otherwise be denied via a simple bind for any identity covered in those ACLs. After the first SASL bind is completed, the sasl_ssf value is retained for all new non-SASL connections. Depending on the ACL configuration, this can affect different types of operations (searches, modifications, etc.). In other words, a successful authorization step completed by one user affects the authorization requirement for a different user.

References

medium severity

Integer Underflow

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to Integer Underflow. An integer underflow was discovered in OpenLDAP before 2.4.57 leading to a slapd crash in the Certificate List Exact Assertion processing, resulting in denial of service.

Remediation

Upgrade openldap to version or higher.

References

medium severity

Integer Underflow

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to Integer Underflow. An integer underflow was discovered in OpenLDAP before 2.4.57 leading to slapd crashes in the Certificate Exact Assertion processing, resulting in denial of service (schema_init.c serialNumberAndIssuerCheck).

Remediation

Upgrade openldap to version or higher.

References

medium severity

Loop with Unreachable Exit Condition ('Infinite Loop')

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to Loop with Unreachable Exit Condition ('Infinite Loop'). A flaw was discovered in OpenLDAP before 2.4.57 leading to an infinite loop in slapd with the cancel_extop Cancel operation, resulting in denial of service.

Remediation

Upgrade openldap to version or higher.

References

medium severity

NULL Pointer Dereference

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.10

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to NULL Pointer Dereference. A NULL pointer dereference was found in OpenLDAP server and was fixed in openldap 2.4.55, during a request for renaming RDNs. An unauthenticated attacker could remotely crash the slapd process by sending a specially crafted request, causing a Denial of Service.

Remediation

Upgrade openldap to version or higher.

References

medium severity

Out-of-bounds Read

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to Out-of-bounds Read. A flaw was discovered in OpenLDAP before 2.4.57 leading to a slapd crash in the Values Return Filter control handling, resulting in denial of service (double free and out-of-bounds read).

Remediation

Upgrade openldap to version or higher.

References

medium severity

Reachable Assertion

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to Reachable Assertion. A flaw was discovered in OpenLDAP before 2.4.57 leading in an assertion failure in slapd in the X.509 DN parsing in decode.c ber_next_element, resulting in denial of service.

Remediation

Upgrade openldap to version or higher.

References

medium severity

Reachable Assertion

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to Reachable Assertion. A flaw was discovered in OpenLDAP before 2.4.57 leading to an assertion failure in slapd in the saslAuthzTo validation, resulting in denial of service.

Remediation

Upgrade openldap to version or higher.

References

medium severity
new

Reachable Assertion

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.13

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to Reachable Assertion. In OpenLDAP through 2.4.57 and 2.5.x through 2.5.1alpha, an assertion failure in slapd can occur in the issuerAndThisUpdateCheck function via a crafted packet, resulting in a denial of service (daemon exit) via a short timestamp. This is related to schema_init.c and checkTime.

Remediation

Upgrade openldap to version or higher.

References

medium severity

Release of Invalid Pointer or Reference

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

Affected versions of this package are vulnerable to Release of Invalid Pointer or Reference. A flaw was discovered in OpenLDAP before 2.4.57 leading to an invalid pointer free and slapd crash in the saslAuthzTo processing, resulting in denial of service.

Remediation

Upgrade openldap to version or higher.

References

medium severity

Resource Exhaustion

  • Vulnerable module: openldap/libldap-2.4-2
  • Introduced through: openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2
  • Fixed in: 2.4.42+dfsg-2ubuntu3.8

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openldap/libldap-2.4-2@2.4.42+dfsg-2ubuntu3.2

Overview

In filter.c in slapd in OpenLDAP before 2.4.50, LDAP search filters with nested boolean expressions can result in denial of service (daemon crash).

References

medium severity

Information Exposure

  • Vulnerable module: openssl
  • Introduced through: openssl@1.0.2g-1ubuntu4.10 and openssl/libssl1.0.0@1.0.2g-1ubuntu4.10
  • Fixed in: 1.0.2g-1ubuntu4.15

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openssl@1.0.2g-1ubuntu4.10
  • Introduced through: humio/humio:1.0.56@* openssl/libssl1.0.0@1.0.2g-1ubuntu4.10

Overview

If an application encounters a fatal protocol error and then calls SSL_shutdown() twice (once to send a close_notify, and once to receive one) then OpenSSL can respond differently to the calling application if a 0 byte record is received with invalid padding compared to if a 0 byte record is received with an invalid MAC. If the application then behaves differently based on that in a way that is detectable to the remote peer, then this amounts to a padding oracle that could be used to decrypt data. In order for this to be exploitable "non-stitched" ciphersuites must be in use. Stitched ciphersuites are optimised implementations of certain commonly used ciphersuites. Also the application must call SSL_shutdown() twice even if a protocol error has occurred (applications should not do this but some do anyway). Fixed in OpenSSL 1.0.2r (Affected 1.0.2-1.0.2q).

References

medium severity
new

Integer Overflow or Wraparound

  • Vulnerable module: openssl
  • Introduced through: openssl@1.0.2g-1ubuntu4.10 and openssl/libssl1.0.0@1.0.2g-1ubuntu4.10
  • Fixed in: 1.0.2g-1ubuntu4.19

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openssl@1.0.2g-1ubuntu4.10
  • Introduced through: humio/humio:1.0.56@* openssl/libssl1.0.0@1.0.2g-1ubuntu4.10

Overview

Affected versions of this package are vulnerable to Integer Overflow or Wraparound. The OpenSSL public API function X509_issuer_and_serial_hash() attempts to create a unique hash value based on the issuer and serial number data contained within an X509 certificate. However it fails to correctly handle any errors that may occur while parsing the issuer field (which might occur if the issuer field is maliciously constructed). This may subsequently result in a NULL pointer deref and a crash leading to a potential denial of service attack. The function X509_issuer_and_serial_hash() is never directly called by OpenSSL itself so applications are only vulnerable if they use this function directly and they use it on certificates that may have been obtained from untrusted sources. OpenSSL versions 1.1.1i and below are affected by this issue. Users of these versions should upgrade to OpenSSL 1.1.1j. OpenSSL versions 1.0.2x and below are affected by this issue. However OpenSSL 1.0.2 is out of support and no longer receiving public updates. Premium support customers of OpenSSL 1.0.2 should upgrade to 1.0.2y. Other users should upgrade to 1.1.1j. Fixed in OpenSSL 1.1.1j (Affected 1.1.1-1.1.1i). Fixed in OpenSSL 1.0.2y (Affected 1.0.2-1.0.2x).

Remediation

Upgrade openssl to version or higher.

References

medium severity

Uncontrolled Recursion

  • Vulnerable module: openssl
  • Introduced through: openssl@1.0.2g-1ubuntu4.10 and openssl/libssl1.0.0@1.0.2g-1ubuntu4.10
  • Fixed in: 1.0.2g-1ubuntu4.11

Detailed paths

  • Introduced through: humio/humio:1.0.56@* openssl@1.0.2g-1ubuntu4.10
  • Introduced through: humio/humio:1.0.56@* openssl/libssl1.0.0@1.0.2g-1ubuntu4.10

Overview

Constructed ASN.1 types with a recursive definition (such as can be found in PKCS7) could eventually exceed the stack given malicious input with excessive recursion. This could result in a Denial Of Service attack. There are no such structures used within SSL/TLS that come from untrusted sources so this is considered safe. Fixed in OpenSSL 1.1.0h (Affected 1.1.0-1.1.0g). Fixed in OpenSSL 1.0.2o (Affected 1.0.2b-1.0.2n).

References

medium severity

Integer Overflow or Wraparound

  • Vulnerable module: p11-kit/libp11-kit0
  • Introduced through: p11-kit/libp11-kit0@0.23.2-5~ubuntu16.04.1
  • Fixed in: 0.23.2-5~ubuntu16.04.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* p11-kit/libp11-kit0@0.23.2-5~ubuntu16.04.1

Overview

Affected versions of this package are vulnerable to Integer Overflow or Wraparound. An issue was discovered in p11-kit 0.21.1 through 0.23.21. Multiple integer overflows have been discovered in the array allocations in the p11-kit library and the p11-kit list command, where overflow checks are missing before calling realloc or calloc.

Remediation

Upgrade p11-kit to version or higher.

References

medium severity

Out-of-bounds Read

  • Vulnerable module: p11-kit/libp11-kit0
  • Introduced through: p11-kit/libp11-kit0@0.23.2-5~ubuntu16.04.1
  • Fixed in: 0.23.2-5~ubuntu16.04.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* p11-kit/libp11-kit0@0.23.2-5~ubuntu16.04.1

Overview

Affected versions of this package are vulnerable to Out-of-bounds Read. An issue was discovered in p11-kit 0.21.1 through 0.23.21. A heap-based buffer over-read has been discovered in the RPC protocol used by thep11-kit server/remote commands and the client library. When the remote entity supplies a byte array through a serialized PKCS#11 function call, the receiving entity may allow the reading of up to 4 bytes of memory past the heap allocation.

Remediation

Upgrade p11-kit to version or higher.

References

medium severity

Link Following

  • Vulnerable module: perl/perl-base
  • Introduced through: perl/perl-base@5.22.1-9ubuntu0.2
  • Fixed in: 5.22.1-9ubuntu0.5

Detailed paths

  • Introduced through: humio/humio:1.0.56@* perl/perl-base@5.22.1-9ubuntu0.2

Overview

In Perl through 5.26.2, the Archive::Tar module allows remote attackers to bypass a directory-traversal protection mechanism, and overwrite arbitrary files, via an archive file containing a symlink and a regular file with the same name.

References

medium severity

Out-of-Bounds

  • Vulnerable module: perl/perl-base
  • Introduced through: perl/perl-base@5.22.1-9ubuntu0.2
  • Fixed in: 5.22.1-9ubuntu0.6

Detailed paths

  • Introduced through: humio/humio:1.0.56@* perl/perl-base@5.22.1-9ubuntu0.2

medium severity

Out-of-Bounds

  • Vulnerable module: perl/perl-base
  • Introduced through: perl/perl-base@5.22.1-9ubuntu0.2
  • Fixed in: 5.22.1-9ubuntu0.6

Detailed paths

  • Introduced through: humio/humio:1.0.56@* perl/perl-base@5.22.1-9ubuntu0.2

medium severity

Out-of-bounds Read

  • Vulnerable module: perl/perl-base
  • Introduced through: perl/perl-base@5.22.1-9ubuntu0.2
  • Fixed in: 5.22.1-9ubuntu0.6

Detailed paths

  • Introduced through: humio/humio:1.0.56@* perl/perl-base@5.22.1-9ubuntu0.2

medium severity

Out-of-bounds Read

  • Vulnerable module: perl/perl-base
  • Introduced through: perl/perl-base@5.22.1-9ubuntu0.2
  • Fixed in: 5.22.1-9ubuntu0.3

Detailed paths

  • Introduced through: humio/humio:1.0.56@* perl/perl-base@5.22.1-9ubuntu0.2

Overview

An issue was discovered in Perl 5.22 through 5.26. Matching a crafted locale dependent regular expression can cause a heap-based buffer over-read and potentially information disclosure.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: perl/perl-base
  • Introduced through: perl/perl-base@5.22.1-9ubuntu0.2
  • Fixed in: 5.22.1-9ubuntu0.6

medium severity

Out-of-bounds Write

  • Vulnerable module: perl/perl-base
  • Introduced through: perl/perl-base@5.22.1-9ubuntu0.2
  • Fixed in: 5.22.1-9ubuntu0.3

Detailed paths

  • Introduced through: humio/humio:1.0.56@* perl/perl-base@5.22.1-9ubuntu0.2

Overview

Heap-based buffer overflow in the pack function in Perl before 5.26.2 allows context-dependent attackers to execute arbitrary code via a large item count.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: perl/perl-base
  • Introduced through: perl/perl-base@5.22.1-9ubuntu0.2
  • Fixed in: 5.22.1-9ubuntu0.3

Detailed paths

  • Introduced through: humio/humio:1.0.56@* perl/perl-base@5.22.1-9ubuntu0.2

Overview

An issue was discovered in Perl 5.18 through 5.26. A crafted regular expression can cause a heap-based buffer overflow, with control over the bytes written.

References

medium severity

Inclusion of Functionality from Untrusted Control Sphere

  • Vulnerable module: procps
  • Introduced through: procps@2:3.3.10-4ubuntu2.3 and procps/libprocps4@2:3.3.10-4ubuntu2.3
  • Fixed in: 2:3.3.10-4ubuntu2.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* procps@2:3.3.10-4ubuntu2.3
  • Introduced through: humio/humio:1.0.56@* procps/libprocps4@2:3.3.10-4ubuntu2.3

Overview

procps-ng before version 3.3.15 is vulnerable to a local privilege escalation in top. If a user runs top with HOME unset in an attacker-controlled directory, the attacker could achieve privilege escalation by exploiting one of several vulnerabilities in the config_file() function.

References

medium severity

Integer Overflow or Wraparound

  • Vulnerable module: procps
  • Introduced through: procps@2:3.3.10-4ubuntu2.3 and procps/libprocps4@2:3.3.10-4ubuntu2.3
  • Fixed in: 2:3.3.10-4ubuntu2.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* procps@2:3.3.10-4ubuntu2.3
  • Introduced through: humio/humio:1.0.56@* procps/libprocps4@2:3.3.10-4ubuntu2.3

medium severity

Out-of-Bounds

  • Vulnerable module: procps
  • Introduced through: procps@2:3.3.10-4ubuntu2.3 and procps/libprocps4@2:3.3.10-4ubuntu2.3
  • Fixed in: 2:3.3.10-4ubuntu2.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* procps@2:3.3.10-4ubuntu2.3
  • Introduced through: humio/humio:1.0.56@* procps/libprocps4@2:3.3.10-4ubuntu2.3

Overview

procps-ng before version 3.3.15 is vulnerable to a denial of service in ps via mmap buffer overflow. Inbuilt protection in ps maps a guard page at the end of the overflowed buffer, ensuring that the impact of this flaw is limited to a crash (temporary denial of service).

References

medium severity

Out-of-bounds Write

  • Vulnerable module: procps
  • Introduced through: procps@2:3.3.10-4ubuntu2.3 and procps/libprocps4@2:3.3.10-4ubuntu2.3
  • Fixed in: 2:3.3.10-4ubuntu2.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* procps@2:3.3.10-4ubuntu2.3
  • Introduced through: humio/humio:1.0.56@* procps/libprocps4@2:3.3.10-4ubuntu2.3

Overview

procps-ng before version 3.3.15 is vulnerable to a stack buffer overflow in pgrep. This vulnerability is mitigated by FORTIFY, as it involves strncat() to a stack-allocated string. When pgrep is compiled with FORTIFY (as on Red Hat Enterprise Linux and Fedora), the impact is limited to a crash.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: procps
  • Introduced through: procps@2:3.3.10-4ubuntu2.3 and procps/libprocps4@2:3.3.10-4ubuntu2.3
  • Fixed in: 2:3.3.10-4ubuntu2.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* procps@2:3.3.10-4ubuntu2.3
  • Introduced through: humio/humio:1.0.56@* procps/libprocps4@2:3.3.10-4ubuntu2.3

Overview

procps-ng before version 3.3.15 is vulnerable to multiple integer overflows leading to a heap corruption in file2strvec function. This allows a privilege escalation for a local attacker who can create entries in procfs by starting processes, which could result in crashes or arbitrary code execution in proc utilities run by other users.

References

medium severity

Arbitrary Code Injection

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others
  • Fixed in: 2.7.12-1ubuntu0~16.04.11

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

An issue was discovered in urllib2 in Python 2.x through 2.7.17 and urllib in Python 3.x through 3.8.0. CRLF injection is possible if the attacker controls a url parameter, as demonstrated by the first argument to urllib.request.urlopen with \r\n (specifically in the host component of a URL) followed by an HTTP header. This is similar to the CVE-2019-9740 query string issue and the CVE-2019-9947 path string issue. (This is not exploitable when glibc has CVE-2016-10739 fixed.). This is fixed in: v2.7.18, v2.7.18rc1; v3.5.10, v3.5.10rc1; v3.6.11, v3.6.11rc1, v3.6.12; v3.7.8, v3.7.8rc1, v3.7.9; v3.8.3, v3.8.3rc1, v3.8.4, v3.8.4rc1, v3.8.5, v3.8.6, v3.8.6rc1.

References

medium severity

Arbitrary Command Injection

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others
  • Fixed in: 2.7.12-1ubuntu0~16.04.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

Python Software Foundation Python (CPython) version 2.7 contains a CWE-77: Improper Neutralization of Special Elements used in a Command ('Command Injection') vulnerability in shutil module (make_archive function) that can result in Denial of service, Information gain via injection of arbitrary files on the system or entire drive. This attack appear to be exploitable via Passage of unfiltered user input to the function. This vulnerability appears to have been fixed in after commit add531a1e55b0a739b0f42582f1c9747e5649ace.

References

medium severity

Buffer Overflow

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

Affected versions of this package are vulnerable to Buffer Overflow. Python 3.x through 3.9.1 has a buffer overflow in PyCArg_repr in _ctypes/callproc.c, which may lead to remote code execution in certain Python applications that accept floating-point numbers as untrusted input, as demonstrated by a 1e300 argument to c_double.from_param. This occurs because sprintf is used unsafely.

Remediation

There is no fixed version for python2.7.

References

medium severity

Credentials Management

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others
  • Fixed in: 2.7.12-1ubuntu0~16.04.8

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

Python 2.7.x through 2.7.16 and 3.x through 3.7.2 is affected by: Improper Handling of Unicode Encoding (with an incorrect netloc) during NFKC normalization. The impact is: Information disclosure (credentials, cookies, etc. that are cached against a given hostname). The components are: urllib.parse.urlsplit, urllib.parse.urlparse. The attack vector is: A specially crafted URL could be incorrectly parsed to locate cookies or authentication data and send that information to a different host than when parsed correctly. This is fixed in: v2.7.17, v2.7.17rc1, v2.7.18, v2.7.18rc1; v3.5.10, v3.5.10rc1, v3.5.7, v3.5.8, v3.5.8rc1, v3.5.8rc2, v3.5.9; v3.6.10, v3.6.10rc1, v3.6.11, v3.6.11rc1, v3.6.12, v3.6.9, v3.6.9rc1; v3.7.3, v3.7.3rc1, v3.7.4, v3.7.4rc1, v3.7.4rc2, v3.7.5, v3.7.5rc1, v3.7.6, v3.7.6rc1, v3.7.7, v3.7.7rc1, v3.7.8, v3.7.8rc1, v3.7.9.

References

medium severity

Credentials Management

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others
  • Fixed in: 2.7.12-1ubuntu0~16.04.8

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

A security regression of CVE-2019-9636 was discovered in python since commit d537ab0ff9767ef024f26246899728f0116b1ec3 affecting versions 2.7, 3.5, 3.6, 3.7 and from v3.8.0a4 through v3.8.0b1, which still allows an attacker to exploit CVE-2019-9636 by abusing the user and password parts of a URL. When an application parses user-supplied URLs to store cookies, authentication credentials, or other kind of information, it is possible for an attacker to provide specially crafted URLs to make the application locate host-related information (e.g. cookies, authentication data) and send them to a different host than where it should, unlike if the URLs had been correctly parsed. The result of an attack may vary based on the application.

References

medium severity

CRLF Injection

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others
  • Fixed in: 2.7.12-1ubuntu0~16.04.8

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

An issue was discovered in urllib2 in Python 2.x through 2.7.16 and urllib in Python 3.x through 3.7.3. CRLF injection is possible if the attacker controls a url parameter, as demonstrated by the first argument to urllib.request.urlopen with \r\n (specifically in the path component of a URL that lacks a ? character) followed by an HTTP header or a Redis command. This is similar to the CVE-2019-9740 query string issue. This is fixed in: v2.7.17, v2.7.17rc1, v2.7.18, v2.7.18rc1; v3.5.10, v3.5.10rc1, v3.5.8, v3.5.8rc1, v3.5.8rc2, v3.5.9; v3.6.10, v3.6.10rc1, v3.6.11, v3.6.11rc1, v3.6.12, v3.6.9, v3.6.9rc1; v3.7.4, v3.7.4rc1, v3.7.4rc2, v3.7.5, v3.7.5rc1, v3.7.6, v3.7.6rc1, v3.7.7, v3.7.7rc1, v3.7.8, v3.7.8rc1, v3.7.9.

References

medium severity

CRLF Injection

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others
  • Fixed in: 2.7.12-1ubuntu0~16.04.8

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

An issue was discovered in urllib2 in Python 2.x through 2.7.16 and urllib in Python 3.x through 3.7.3. CRLF injection is possible if the attacker controls a url parameter, as demonstrated by the first argument to urllib.request.urlopen with \r\n (specifically in the query string after a ? character) followed by an HTTP header or a Redis command. This is fixed in: v2.7.17, v2.7.17rc1, v2.7.18, v2.7.18rc1; v3.5.10, v3.5.10rc1, v3.5.8, v3.5.8rc1, v3.5.8rc2, v3.5.9; v3.6.10, v3.6.10rc1, v3.6.11, v3.6.11rc1, v3.6.12, v3.6.9, v3.6.9rc1; v3.7.4, v3.7.4rc1, v3.7.4rc2, v3.7.5, v3.7.5rc1, v3.7.6, v3.7.6rc1, v3.7.7, v3.7.7rc1, v3.7.8, v3.7.8rc1, v3.7.9.

References

medium severity

Directory Traversal

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others
  • Fixed in: 2.7.12-1ubuntu0~16.04.8

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

urllib in Python 2.x through 2.7.16 supports the local_file: scheme, which makes it easier for remote attackers to bypass protection mechanisms that blacklist file: URIs, as demonstrated by triggering a urllib.urlopen('local_file:///etc/passwd') call.

References

medium severity

Improper Encoding or Escaping of Output

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others
  • Fixed in: 2.7.12-1ubuntu0~16.04.13

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

Affected versions of this package are vulnerable to Improper Encoding or Escaping of Output http.client in Python 3.x before 3.5.10, 3.6.x before 3.6.12, 3.7.x before 3.7.9, and 3.8.x before 3.8.5 allows CRLF injection if the attacker controls the HTTP request method, as demonstrated by inserting CR and LF control characters in the first argument of HTTPConnection.request.

Remediation

Upgrade python2.7 to version or higher.

References

medium severity

Improper Input Validation

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others
  • Fixed in: 2.7.12-1ubuntu0~16.04.8

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

http.cookiejar.DefaultPolicy.domain_return_ok in Lib/http/cookiejar.py in Python before 3.7.3 does not correctly validate the domain: it can be tricked into sending existing cookies to the wrong server. An attacker may abuse this flaw by using a server with a hostname that has another valid hostname as a suffix (e.g., pythonicexample.com to steal cookies for example.com). When a program uses http.cookiejar.DefaultPolicy and tries to do an HTTP connection to an attacker-controlled server, existing cookies can be leaked to the attacker. This affects 2.x through 2.7.16, 3.x before 3.4.10, 3.5.x before 3.5.7, 3.6.x before 3.6.9, and 3.7.x before 3.7.3.

References

medium severity

Improper Input Validation

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others
  • Fixed in: 2.7.12-1ubuntu0~16.04.9

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

An issue was discovered in Python through 2.7.16, 3.x through 3.5.7, 3.6.x through 3.6.9, and 3.7.x through 3.7.4. The email module wrongly parses email addresses that contain multiple @ characters. An application that uses the email module and implements some kind of checks on the From/To headers of a message could be tricked into accepting an email address that should be denied. An attack may be the same as in CVE-2019-11340; however, this CVE applies to Python more generally.

References

medium severity

Improper Input Validation

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others
  • Fixed in: 2.7.12-1ubuntu0~16.04.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

Affected versions of this package are vulnerable to Improper Input Validation. In Lib/tarfile.py in Python through 3.8.3, an attacker is able to craft a TAR archive leading to an infinite loop when opened by tarfile.open, because _proc_pax lacks header validation.

Remediation

Upgrade python2.7 to version or higher.

References

medium severity

Missing Initialization of Resource

  • Vulnerable module: python2.7
  • Introduced through: python2.7@2.7.12-1ubuntu0~16.04.3, python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3 and others
  • Fixed in: 2.7.12-1ubuntu0~16.04.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* python2.7@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-minimal@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/libpython2.7-stdlib@2.7.12-1ubuntu0~16.04.3
  • Introduced through: humio/humio:1.0.56@* python2.7/python2.7-minimal@2.7.12-1ubuntu0~16.04.3

Overview

Python's elementtree C accelerator failed to initialise Expat's hash salt during initialization. This could make it easy to conduct denial of service attacks against Expat by constructing an XML document that would cause pathological hash collisions in Expat's internal data structures, consuming large amounts CPU and RAM. The vulnerability exists in Python versions 3.7.0, 3.6.0 through 3.6.6, 3.5.0 through 3.5.6, 3.4.0 through 3.4.9, 2.7.0 through 2.7.15.

References

medium severity

Arbitrary Code Injection

  • Vulnerable module: sensible-utils
  • Introduced through: sensible-utils@0.0.9
  • Fixed in: 0.0.9ubuntu0.16.04.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sensible-utils@0.0.9

Overview

sensible-browser in sensible-utils before 0.0.11 does not validate strings before launching the program specified by the BROWSER environment variable, which allows remote attackers to conduct argument-injection attacks via a crafted URL, as demonstrated by a --proxy-pac-file argument.

References

medium severity

Improper Input Validation

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

Insufficient data validation in SQLite in Google Chrome prior to 79.0.3945.79 allowed a remote attacker to bypass defense-in-depth measures via a crafted HTML page.

References

medium severity

Integer Overflow or Wraparound

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

SQLite before 3.25.3, when the FTS3 extension is enabled, encounters an integer overflow (and resultant buffer overflow) for FTS3 queries that occur after crafted changes to FTS3 shadow tables, allowing remote attackers to execute arbitrary code by leveraging the ability to run arbitrary SQL statements (such as in certain WebSQL use cases), aka Magellan.

References

medium severity

Integer Overflow or Wraparound

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

SQLite before 3.25.3, when the FTS3 extension is enabled, encounters an integer overflow (and resultant buffer overflow) for FTS3 queries in a "merge" operation that occurs after crafted changes to FTS3 shadow tables, allowing remote attackers to execute arbitrary code by leveraging the ability to run arbitrary SQL statements (such as in certain WebSQL use cases). This is a different vulnerability than CVE-2018-20346.

References

medium severity

Integer Overflow or Wraparound

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.5

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

Affected versions of this package are vulnerable to Integer Overflow or Wraparound. SQLite through 3.32.0 has an integer overflow in sqlite3_str_vappendf in printf.c.

Remediation

Upgrade sqlite3 to version or higher.

References

medium severity

NULL Pointer Dereference

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

multiSelect in select.c in SQLite 3.30.1 mishandles certain errors during parsing, as demonstrated by errors from sqlite3WindowRewrite() calls. NOTE: this vulnerability exists because of an incomplete fix for CVE-2019-19880.

References

medium severity

NULL Pointer Dereference

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.5

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

Affected versions of this package are vulnerable to NULL Pointer Dereference ext/fts3/fts3_snippet.c in SQLite before 3.32.0 has a NULL pointer dereference via a crafted matchinfo() query.

Remediation

Upgrade sqlite3 to version or higher.

References

medium severity

Out-of-bounds Read

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

medium severity

Out-of-bounds Read

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

In SQLite 3.27.2, running fts5 prefix queries inside a transaction could trigger a heap-based buffer over-read in fts5HashEntrySort in sqlite3.c, which may lead to an information leak. This is related to ext/fts5/fts5_hash.c.

References

medium severity

Out-of-bounds Read

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

Out of bounds read in SQLite in Google Chrome prior to 79.0.3945.79 allowed a remote attacker to obtain potentially sensitive information from process memory via a crafted HTML page.

References

medium severity

Out-of-bounds Read

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

Out of bounds read in SQLite in Google Chrome prior to 79.0.3945.79 allowed a remote attacker to obtain potentially sensitive information from process memory via a crafted HTML page.

References

medium severity

Out-of-bounds Read

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

Affected versions of this package are vulnerable to Out-of-bounds Read. An out-of-bounds read was addressed with improved bounds checking. This issue is fixed in iOS 13.5 and iPadOS 13.5, macOS Catalina 10.15.5, tvOS 13.4.5, watchOS 6.2.5, iTunes 12.10.7 for Windows, iCloud for Windows 11.2, iCloud for Windows 7.19. A malicious application may cause a denial of service or potentially disclose memory contents.

Remediation

There is no fixed version for sqlite3.

References

medium severity

Out-of-bounds Write

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

Out of bounds write in SQLite in Google Chrome prior to 79.0.3945.79 allowed a remote attacker to potentially exploit heap corruption via a crafted HTML page.

References

medium severity

Use After Free

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.5

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

Affected versions of this package are vulnerable to Use After Free ext/fts3/fts3.c in SQLite before 3.32.0 has a use-after-free in fts3EvalNextRow, related to the snippet feature.

Remediation

Upgrade sqlite3 to version or higher.

References

medium severity

Use of Uninitialized Resource

  • Vulnerable module: sqlite3/libsqlite3-0
  • Introduced through: sqlite3/libsqlite3-0@3.11.0-1ubuntu1
  • Fixed in: 3.11.0-1ubuntu1.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* sqlite3/libsqlite3-0@3.11.0-1ubuntu1

Overview

Uninitialized data in SQLite in Google Chrome prior to 79.0.3945.79 allowed a remote attacker to obtain potentially sensitive information from process memory via a crafted HTML page.

References

medium severity

Incorrect Default Permissions

  • Vulnerable module: supervisor
  • Introduced through: supervisor@3.2.0-2ubuntu0.1
  • Fixed in: 3.2.0-2ubuntu0.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* supervisor@3.2.0-2ubuntu0.1

Overview

The XML-RPC server in supervisor before 3.0.1, 3.1.x before 3.1.4, 3.2.x before 3.2.4, and 3.3.x before 3.3.3 allows remote authenticated users to execute arbitrary commands via a crafted XML-RPC request, related to nested supervisord namespace lookups.

References

medium severity

Access Restriction Bypass

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others
  • Fixed in: 229-4ubuntu21.15

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

systemd-tmpfiles in systemd through 237 mishandles symlinks present in non-terminal path components, which allows local users to obtain ownership of arbitrary files via vectors involving creation of a directory and a file under that directory, and later replacing that directory with a symlink. This occurs even if the fs.protected_symlinks sysctl is turned on.

References

medium severity

Access Restriction Bypass

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others
  • Fixed in: 229-4ubuntu21.21

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

In systemd before v242-rc4, it was discovered that pam_systemd does not properly sanitize the environment before using the XDG_SEAT variable. It is possible for an attacker, in some particular configurations, to set a XDG_SEAT environment variable which allows for commands to be checked against polkit policies using the "allow_active" element rather than "allow_any".

References

medium severity

Deserialization of Untrusted Data

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others
  • Fixed in: 229-4ubuntu21.8

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

A vulnerability in unit_deserialize of systemd allows an attacker to supply arbitrary state across systemd re-execution via NotifyAccess. This can be used to improperly influence systemd execution and possibly lead to root privilege escalation. Affected releases are systemd versions up to and including 239.

References

medium severity

Information Exposure

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

systemd 242 changes the VT1 mode upon a logout, which allows attackers to read cleartext passwords in certain circumstances, such as watching a shutdown, or using Ctrl-Alt-F1 and Ctrl-Alt-F2. This occurs because the KDGKBMODE (aka current keyboard mode) check is mishandled.

References

medium severity

Loop with Unreachable Exit Condition ('Infinite Loop')

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others
  • Fixed in: 229-4ubuntu21.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

In systemd 223 through 235, a remote DNS server can respond with a custom crafted DNS NSEC resource record to trigger an infinite loop in the dns_packet_read_type_window() function of the 'systemd-resolved' service and cause a DoS of the affected service.

References

medium severity

Out-of-Bounds

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others
  • Fixed in: 229-4ubuntu21.6

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

A buffer overflow vulnerability in the dhcp6 client of systemd allows a malicious dhcp6 server to overwrite heap memory in systemd-networkd. Affected releases are systemd: versions up to and including 239.

References

medium severity

Out-of-Bounds

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others
  • Fixed in: 229-4ubuntu21.16

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

An issue was discovered in sd-bus in systemd 239. bus_process_object() in libsystemd/sd-bus/bus-objects.c allocates a variable-length stack buffer for temporarily storing the object path of incoming D-Bus messages. An unprivileged local user can exploit this by sending a specially crafted message to PID1, causing the stack pointer to jump over the stack guard pages into an unmapped memory region and trigger a denial of service (systemd PID1 crash and kernel panic).

References

medium severity

Out-of-bounds Read

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others
  • Fixed in: 229-4ubuntu21.15

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

An out of bounds read was discovered in systemd-journald in the way it parses log messages that terminate with a colon ':'. A local attacker can use this flaw to disclose process memory data. Versions from v221 to v239 are vulnerable.

References

medium severity

Race Condition

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others
  • Fixed in: 229-4ubuntu21.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

In systemd prior to 234 a race condition exists between .mount and .automount units such that automount requests from kernel may not be serviced by systemd resulting in kernel holding the mountpoint and any processes that try to use said mount will hang. A race condition like this may lead to denial of service, until mount points are unmounted.

References

medium severity

Race Condition

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others
  • Fixed in: 229-4ubuntu21.8

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

A race condition in chown_one() of systemd allows an attacker to cause systemd to set arbitrary permissions on arbitrary files. Affected releases are systemd versions up to and including 239.

References

medium severity

Use After Free

  • Vulnerable module: systemd
  • Introduced through: systemd@229-4ubuntu21, systemd/libsystemd0@229-4ubuntu21 and others
  • Fixed in: 229-4ubuntu21.27

Detailed paths

  • Introduced through: humio/humio:1.0.56@* systemd@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libsystemd0@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/libudev1@229-4ubuntu21
  • Introduced through: humio/humio:1.0.56@* systemd/systemd-sysv@229-4ubuntu21

Overview

A heap use-after-free vulnerability was found in systemd before version v245-rc1, where asynchronous Polkit queries are performed while handling dbus messages. A local unprivileged attacker can abuse this flaw to crash systemd services or potentially execute code and elevate their privileges, by sending specially crafted dbus messages.

References

low severity

Improper Check for Dropped Privileges

  • Vulnerable module: bash
  • Introduced through: bash@4.3-14ubuntu1.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* bash@4.3-14ubuntu1.2

Overview

An issue was discovered in disable_priv_mode in shell.c in GNU Bash through 5.0 patch 11. By default, if Bash is run with its effective UID not equal to its real UID, it will drop privileges by setting its effective UID to its real UID. However, it does so incorrectly. On Linux and other systems that support "saved UID" functionality, the saved UID is not dropped. An attacker with command execution in the shell can use "enable -f" for runtime loading of a new builtin, which can be a shared object that calls setuid() and therefore regains privileges. However, binaries running with an effective UID of 0 are unaffected.

References

low severity

Improper Input Validation

  • Vulnerable module: bash
  • Introduced through: bash@4.3-14ubuntu1.2
  • Fixed in: 4.3-14ubuntu1.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* bash@4.3-14ubuntu1.2

Overview

rbash in Bash before 4.4-beta2 did not prevent the shell user from modifying BASH_CMDS, thus allowing the user to execute any command with the permissions of the shell.

References

low severity

CVE-2016-3189

  • Vulnerable module: bzip2/libbz2-1.0
  • Introduced through: bzip2/libbz2-1.0@1.0.6-8
  • Fixed in: 1.0.6-8ubuntu0.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* bzip2/libbz2-1.0@1.0.6-8

Overview

Use-after-free vulnerability in bzip2recover in bzip2 1.0.6 allows remote attackers to cause a denial of service (crash) via a crafted bzip2 file, related to block ends set to before the start of the block.

References

low severity

Improper Input Validation

  • Vulnerable module: coreutils
  • Introduced through: coreutils@8.25-2ubuntu3~16.04

Detailed paths

  • Introduced through: humio/humio:1.0.56@* coreutils@8.25-2ubuntu3~16.04

Overview

chroot in GNU coreutils, when used with --userspec, allows local users to escape to the parent session via a crafted TIOCSTI ioctl call, which pushes characters to the terminal's input buffer.

References

low severity

Improper Authentication

  • Vulnerable module: cryptsetup/libcryptsetup4
  • Introduced through: cryptsetup/libcryptsetup4@2:1.6.6-5ubuntu2.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* cryptsetup/libcryptsetup4@2:1.6.6-5ubuntu2.1

Overview

The Debian initrd script for the cryptsetup package 2:1.7.3-2 and earlier allows physically proximate attackers to gain shell access via many log in attempts with an invalid password.

References

low severity

Improper Input Validation

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

curl before version 7.51.0 uses outdated IDNA 2003 standard to handle International Domain Names and this may lead users to potentially and unknowingly issue network transfer requests to the wrong host.

References

low severity

Information Exposure

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.18

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

Affected versions of this package are vulnerable to Information Exposure. A malicious server can use the FTP PASV response to trick curl 7.73.0 and earlier into connecting back to a given IP address and port, and this way potentially make curl extract information about services that are otherwise private and not disclosed, for example doing port scanning and service banner extractions.

Remediation

Upgrade curl to version or higher.

References

low severity

Out-of-bounds Read

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.12

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

libcurl versions from 7.34.0 to before 7.64.0 are vulnerable to a heap out-of-bounds read in the code handling the end-of-response for SMTP. If the buffer passed to smtp_endofresp() isn't NUL terminated and contains no character ending the parsed number, and len is set to 5, then the strtol() call reads beyond the allocated buffer. The read contents will not be returned to the caller.

References

low severity

Use After Free

  • Vulnerable module: curl
  • Introduced through: curl@7.47.0-1ubuntu2.7 and curl/libcurl3-gnutls@7.47.0-1ubuntu2.7
  • Fixed in: 7.47.0-1ubuntu2.16

Detailed paths

  • Introduced through: humio/humio:1.0.56@* curl@7.47.0-1ubuntu2.7
  • Introduced through: humio/humio:1.0.56@* curl/libcurl3-gnutls@7.47.0-1ubuntu2.7

Overview

Affected versions of this package are vulnerable to Use After Free. Due to use of a dangling pointer, libcurl 7.29.0 through 7.71.1 can use the wrong connection when sending data.

Remediation

Upgrade curl to version or higher.

References

low severity

Directory Traversal

  • Vulnerable module: dpkg
  • Introduced through: dpkg@1.18.4ubuntu1.3

Detailed paths

  • Introduced through: humio/humio:1.0.56@* dpkg@1.18.4ubuntu1.3

Overview

dpkg-source in dpkg 1.3.0 through 1.18.23 is able to use a non-GNU patch program and does not offer a protection mechanism for blank-indented diff hunks, which allows remote attackers to conduct directory traversal attacks via a crafted Debian source package, as demonstrated by use of dpkg-source on NetBSD.

References

low severity

XML External Entity (XXE) Injection

  • Vulnerable module: expat/libexpat1
  • Introduced through: expat/libexpat1@2.1.0-7ubuntu0.16.04.3
  • Fixed in: 2.1.0-7ubuntu0.16.04.4

Detailed paths

  • Introduced through: humio/humio:1.0.56@* expat/libexpat1@2.1.0-7ubuntu0.16.04.3

Overview

In libexpat in Expat before 2.2.7, XML input including XML names that contain a large number of colons could make the XML parser consume a high amount of RAM and CPU resources while processing (enough to be usable for denial-of-service attacks).

References

low severity

Out-of-bounds Read

  • Vulnerable module: file
  • Introduced through: file@1:5.25-2ubuntu1 and file/libmagic1@1:5.25-2ubuntu1
  • Fixed in: 1:5.25-2ubuntu1.1

Detailed paths

  • Introduced through: humio/humio:1.0.56@* file@1:5.25-2ubuntu1
  • Introduced through: humio/humio:1.0.56@* file/libmagic1@1:5.25-2ubuntu1

Overview

The do_core_note function in readelf.c in libmagic.a in file 5.33 allows remote attackers to cause a denial of service (out-of-bounds read and application crash) via a crafted ELF file.

References

low severity

Out-of-bounds Read

  • Vulnerable module: file
  • Introduced through: file@1:5.25-2ubuntu1 and file/libmagic1@1:5.25-2ubuntu1
  • Fixed in: 1:5.25-2ubuntu1.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* file@1:5.25-2ubuntu1
  • Introduced through: humio/humio:1.0.56@* file/libmagic1@1:5.25-2ubuntu1

Overview

do_core_note in readelf.c in libmagic.a in file 5.35 has a stack-based buffer over-read, related to file_printable, a different vulnerability than CVE-2018-10360.

References

low severity

Allocation of Resources Without Limits or Throttling

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

The DNS stub resolver in the GNU C Library (aka glibc or libc6) before version 2.26, when EDNS support is enabled, will solicit large UDP responses from name servers, potentially simplifying off-path DNS spoofing attacks due to IP fragmentation.

References

low severity

CVE-2020-27618

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

Affected versions of this package are vulnerable to CVE-2020-27618 iconv when processing invalid multi-byte input sequences fails to advance the input state, which could result in an infinite loop

Remediation

There is no fixed version for glibc.

References

low severity

Improper Data Handling

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

In the GNU C Library (aka glibc or libc6) before 2.28, parse_reg_exp in posix/regcomp.c misparses alternatives, which allows attackers to cause a denial of service (assertion failure and application exit) or trigger an incorrect result by attempting a regular-expression match.

References

low severity

Improper Data Handling

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

The pop_fail_stack function in the GNU C Library (aka glibc or libc6) allows context-dependent attackers to cause a denial of service (assertion failure and application crash) via vectors related to extended regular expression processing.

References

low severity

Improper Input Validation

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

The iconv program in the GNU C Library (aka glibc or libc6) 2.31 and earlier, when invoked with multiple suffixes in the destination encoding (TRANSLATE or IGNORE) along with the -c option, enters an infinite loop when processing invalid multi-byte input sequences, leading to a denial of service.

References

low severity

Improper Input Validation

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

In the GNU C Library (aka glibc or libc6) through 2.28, the getaddrinfo function would successfully parse a string that contained an IPv4 address followed by whitespace and arbitrary characters, which could lead applications to incorrectly assume that it had parsed a valid string, without the possibility of embedded HTTP headers or other potentially dangerous substrings.

References

low severity

Information Exposure

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others
  • Fixed in: 2.23-0ubuntu11.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

On the x86-64 architecture, the GNU C Library (aka glibc) before 2.31 fails to ignore the LD_PREFER_MAP_32BIT_EXEC environment variable during program execution after a security transition, allowing local attackers to restrict the possible mapping addresses for loaded libraries and thus bypass ASLR for a setuid program.

References

low severity

Integer Underflow

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

Affected versions of this package are vulnerable to Integer Underflow. An exploitable signed comparison vulnerability exists in the ARMv7 memcpy() implementation of GNU glibc 2.30.9000. Calling memcpy() (on ARMv7 targets that utilize the GNU glibc implementation) with a negative value for the 'num' parameter results in a signed comparison vulnerability. If an attacker underflows the 'num' parameter to memcpy(), this vulnerability could lead to undefined behavior such as writing to out-of-bounds memory and potentially remote code execution. Furthermore, this memcpy() implementation allows for program execution to continue in scenarios where a segmentation fault or crash should have occurred. The dangers occur in that subsequent execution and iterations of this code will be executed with this corrupted data.

Remediation

There is no fixed version for glibc.

References

low severity

NULL Pointer Dereference

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

low severity

Out-of-Bounds

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

In the GNU C Library (aka glibc or libc6) through 2.29, the memcmp function for the x32 architecture can incorrectly return zero (indicating that the inputs are equal) because the RDX most significant bit is mishandled.

References

low severity

Out-of-Bounds

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others
  • Fixed in: 2.23-0ubuntu11.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

Affected versions of this package are vulnerable to Out-of-Bounds. The GNU C Library (aka glibc or libc6) before 2.32 could overflow an on-stack buffer during range reduction if an input to an 80-bit long double function contains a non-canonical bit pattern, a seen when passing a 0x5d414141414141410000 value to sinl on x86 targets. This is related to sysdeps/ieee754/ldbl-96/e_rem_pio2l.c.

Remediation

Upgrade glibc to version or higher.

References

low severity

Out-of-bounds Read

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

Affected versions of this package are vulnerable to Out-of-bounds Read. The iconv feature in the GNU C Library (aka glibc or libc6) through 2.32, when processing invalid multi-byte input sequences in the EUC-KR encoding, may have a buffer over-read.

Remediation

There is no fixed version for glibc.

References

low severity

Out-of-bounds Read

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others
  • Fixed in: 2.23-0ubuntu11.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

In the GNU C Library (aka glibc or libc6) through 2.29, proceed_next_node in posix/regexec.c has a heap-based buffer over-read via an attempted case-insensitive regular-expression match.

References

low severity

Uncontrolled Recursion

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/locales@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/multiarch-support@2.23-0ubuntu10

Overview

In the GNU C Library (aka glibc or libc6) through 2.29, check_dst_limits_calc_pos_1 in posix/regexec.c has Uncontrolled Recursion, as demonstrated by '(\227|)(\1\1|t1|\\2537)+' in grep.

References

low severity

Use After Free

  • Vulnerable module: glibc/libc-bin
  • Introduced through: glibc/libc-bin@2.23-0ubuntu10, glibc/libc6@2.23-0ubuntu10 and others
  • Fixed in: 2.23-0ubuntu11.2

Detailed paths

  • Introduced through: humio/humio:1.0.56@* glibc/libc-bin@2.23-0ubuntu10
  • Introduced through: humio/humio:1.0.56@* glibc/libc6@2.23-0ubuntu10