Skip to content

← Public intelligence

crates.io package

openssl-src

Open actionable advisories and recorded vendor fixes. This public package view has no inventory attached and cannot establish whether your deployment is affected. A vendor fix never resolves your finding; verify your installed version and the source guidance.

Open advisories

26 actionable advisories, newest first. Withdrawn advisories and news are excluded. Coverage is partial.

  1. Medium, CVSS 5.9crates.ioPublished

    openssl-src subject to Timing Oracle in RSA Decryption

    CVE-2022-4304 · GHSA-p52g-cm5j-mjv4

    Affected
    • crates.io openssl-src < 111.25.0; >= 300.0.0, < 300.0.12
    Fixed in
    111.25.0300.0.12· Vendor fix available
    Issue
    A timing based side channel exists in the OpenSSL RSA Decryption implementation which could be sufficient to recover a plaintext across a network in a Bleichenbacher style attack. To achieve a successful decryption an attacker would have to be able to send a very large number of trial messages for decryption. The vulnerability affects all RSA padding modes: PKCS#1 v1.5, RSA-OEAP and RSASVE. For example, in a TLS connection, RSA is commonly used by a client to send an encrypted pre-master secret to the server. An attacker that had observed a genuine connection between a client and a server could use this flaw to send trial messages to the server and record the time taken to process them. After a sufficiently large number of messages the attacker could recover the pre-master secret used for the original connection and thus be able to decrypt the application data sent over that connection.

    Recommended action: Upgrade to 300.0.12 or 111.25.0 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  2. High, CVSS 7.5crates.ioPublished

    openssl-src vulnerable to Use-after-free following BIO_new_NDEF

    CVE-2023-0215 · GHSA-r7jw-wp68-3xch

    Affected
    • crates.io openssl-src < 111.25.0; >= 300.0.0, < 300.0.12
    Fixed in
    111.25.0300.0.12· Vendor fix available
    Issue
    The public API function BIOnewNDEF is a helper function used for streaming ASN.1 data via a BIO. It is primarily used internally to OpenSSL to support the SMIME, CMS and PKCS7 streaming capabilities, but may also be called directly by end user applications. The function receives a BIO from the caller, prepends a new BIOfasn1 filter BIO onto the front of it to form a BIO chain, and then returns the new head of the BIO chain to the caller. Under certain conditions, for example if a CMS recipient public key is invalid, the new filter BIO is freed and the function returns a NULL result indicating a failure. However, in this case, the BIO chain is not properly cleaned up and the BIO passed by the caller still retains internal pointers to the previously freed filter BIO. If the caller then goes on to call BIOpop() on the BIO then a use-after-free will occur. This will most likely result in a crash. This scenario occurs directly in the internal function B64writeASN1() which may cause…

    Recommended action: Upgrade to 300.0.12 or 111.25.0 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  3. Critical, CVSS 9.1crates.ioPublished

    openssl-src contains Read Buffer Overflow in X.509 Name Constraint

    CVE-2022-4203 · GHSA-w67w-mw4j-8qrv

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.12
    Fixed in
    300.0.12· Vendor fix available
    Issue
    A read buffer overrun can be triggered in X.509 certificate verification, specifically in name constraint checking. Note that this occurs after certificate chain signature verification and requires either a CA to have signed the malicious certificate or for the application to continue certificate verification despite failure to construct a path to a trusted issuer. The read buffer overrun might result in a crash which could lead to a denial of service attack. In theory it could also result in the disclosure of private memory contents (such as private keys, or sensitive plaintext) although we are not aware of any working exploit leading to memory contents disclosure as of the time of release of this advisory. In a TLS client, this can be triggered by connecting to a malicious server. In a TLS server, this can be triggered if the server requests client authentication and a malicious client connects.

    Recommended action: Upgrade to 300.0.12 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  4. High, CVSS 7.5crates.ioPublished

    openssl-src subject to Invalid pointer dereference in d2i_PKCS7 functions

    CVE-2023-0216 · GHSA-29xx-hcv2-c4cp

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.12
    Fixed in
    300.0.12· Vendor fix available
    Issue
    An invalid pointer dereference on read can be triggered when an application tries to load malformed PKCS7 data with the d2iPKCS7(), d2iPKCS7bio() or d2iPKCS7fp() functions. The result of the dereference is an application crash which could lead to a denial of service attack. The TLS implementation in OpenSSL does not call this function however third party applications might call these functions on untrusted data.

    Recommended action: Upgrade to 300.0.12 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  5. High, CVSS 7.5crates.ioPublished

    openssl-src contains Double free after calling PEM_read_bio_ex

    CVE-2022-4450 · GHSA-v5w6-wcm8-jm4q

    Affected
    • crates.io openssl-src < 111.25.0; >= 300.0.0, < 300.0.12
    Fixed in
    111.25.0300.0.12· Vendor fix available
    Issue
    The function PEMreadbioex() reads a PEM file from a BIO and parses and decodes the "name" (e.g. "CERTIFICATE"), any header data and the payload data. If the function succeeds then the "nameout", "header" and "data" arguments are populated with pointers to buffers containing the relevant decoded data. The caller is responsible for freeing those buffers. It is possible to construct a PEM file that results in 0 bytes of payload data. In this case PEMreadbioex() will return a failure code but will populate the header argument with a pointer to a buffer that has already been freed. If the caller also frees this buffer then a double free will occur. This will most likely lead to a crash. This could be exploited by an attacker who has the ability to supply malicious PEM files for parsing to achieve a denial of service attack. The functions PEMreadbio() and PEMread() are simple wrappers around PEMreadbioex() and therefore these functions are also directly affected. These functions are also…

    Recommended action: Upgrade to 300.0.12 or 111.25.0 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  6. High, CVSS 7.5crates.ioPublished

    openssl-src subject to NULL dereference validating DSA public key

    CVE-2023-0217 · GHSA-vxrh-cpg7-8vjr

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.12
    Fixed in
    300.0.12· Vendor fix available
    Issue
    An invalid pointer dereference on read can be triggered when an application tries to check a malformed DSA public key by the EVPPKEYpubliccheck() function. This will most likely lead to an application crash. This function can be called on public keys supplied from untrusted sources which could allow an attacker to cause a denial of service attack. The TLS implementation in OpenSSL does not call this function but applications might call the function if there are additional security requirements imposed by standards such as FIPS 140-3.

    Recommended action: Upgrade to 300.0.12 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  7. High, CVSS 7.5crates.ioPublished

    openssl-src contains NULL dereference during PKCS7 data verification

    CVE-2023-0401 · GHSA-vrh7-x64v-7vxq

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.12
    Fixed in
    300.0.12· Vendor fix available
    Issue
    A NULL pointer can be dereferenced when signatures are being verified on PKCS7 signed or signedAndEnveloped data. In case the hash algorithm used for the signature is known to the OpenSSL library but the implementation of the hash algorithm is not available the digest initialization will fail. There is a missing check for the return value from the initialization function which later leads to invalid usage of the digest API most likely leading to a crash. The unavailability of an algorithm can be caused by using FIPS enabled configuration of providers or more commonly by not loading the legacy provider. PKCS7 data is processed by the SMIME library calls and also by the time stamp (TS) library calls. The TLS implementation in OpenSSL does not call these functions however third party applications would be affected if they call these functions to verify signatures on untrusted data.

    Recommended action: Upgrade to 300.0.12 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  8. High, CVSS 7.4crates.ioAmendedPublished

    Vulnerable OpenSSL included in cryptography wheels

    CVE-2023-0286 · GHSA-x4qr-2fvf-3mr5

    Affected
    • crates.io openssl-src < 111.25.0; >= 300.0.0, < 300.0.12
    Fixed in
    111.25.0300.0.12· Vendor fix available
    Issue
    pyca/cryptography's wheels include a statically linked copy of OpenSSL. The versions of OpenSSL included in cryptography 0.8.1-39.0.0 are vulnerable to a security issue. More details about the vulnerabilities themselves can be found in https://www.openssl.org/news/secadv/20221213.txt and https://www.openssl.org/news/secadv/20230207.txt. If you are building cryptography source ("sdist") then you are responsible for upgrading your copy of OpenSSL. Only users installing from wheels built by the cryptography project (i.e., those distributed on PyPI) need to update their cryptography versions.

    Recommended action: Upgrade to 300.0.12 or 111.25.0 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:osv.dev (1)github.com (2)Source checked Evidence →
  9. High, CVSS 8.7crates.ioPublished

    Denial of service by double-checked locking in openssl-src

    CVE-2022-3996 · GHSA-vr8j-hgmm-jh9r

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.12
    Fixed in
    300.0.12· Vendor fix available
    Issue
    If an X.509 certificate contains a malformed policy constraint and policy processing is enabled, then a write lock will be taken twice recursively. On some operating systems (most widely: Windows) this results in a denial of service when the affected process hangs. Policy processing being enabled on a publicly facing server is not considered to be a common setup. Policy processing is enabled by passing the -policy' argument to the command line utilities or by calling either X509VERIFYPARAMadd0policy()' or X509VERIFYPARAMset1policies()' functions.

    Recommended action: Upgrade to 300.0.12 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  10. Critical, CVSS 9.8crates.ioPublished

    X.509 Email Address 4-byte Buffer Overflow

    CVE-2022-3602 · GHSA-8rwr-x37p-mx23

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.11
    Fixed in
    300.0.11· Vendor fix available
    Issue
    A buffer overrun can be triggered in X.509 certificate verification, specifically in name constraint checking. Note that this occurs after certificate chain signature verification and requires either a CA to have signed the malicious certificate or for the application to continue certificate verification despite failure to construct a path to a trusted issuer. An attacker can craft a malicious email address to overflow four attacker-controlled bytes on the stack. This buffer overflow could result in a crash (causing a denial of service) or potentially remote code execution. Many platforms implement stack overflow protections which would mitigate against the risk of remote code execution. The risk may be further mitigated based on stack layout for any given platform/compiler. Pre-announcements of CVE-2022-3602 described this issue as CRITICAL. Further analysis based on some of the mitigating factors described above have led this to be downgraded to HIGH. Users are still encouraged to…

    Recommended action: Upgrade to 300.0.11 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  11. High, CVSS 7.5crates.ioPublished

    X.509 Email Address Variable Length Buffer Overflow

    CVE-2022-3786 · GHSA-h8jm-2x53-xhp5

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.11
    Fixed in
    300.0.11· Vendor fix available
    Issue
    A buffer overrun can be triggered in X.509 certificate verification, specifically in name constraint checking. Note that this occurs after certificate chain signature verification and requires either a CA to have signed a malicious certificate or for an application to continue certificate verification despite failure to construct a path to a trusted issuer. An attacker can craft a malicious email address in a certificate to overflow an arbitrary number of bytes containing the . character (decimal 46) on the stack. This buffer overflow could result in a crash (causing a denial of service). In a TLS client, this can be triggered by connecting to a malicious server. In a TLS server, this can be triggered if the server requests client authentication and a malicious client connects.

    Recommended action: Upgrade to 300.0.11 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  12. High, CVSS 7.5crates.ioPublished

    Using a Custom Cipher with NID_undef may lead to NULL encryption

    CVE-2022-3358 · GHSA-4f63-89w9-3jjv

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.10
    Fixed in
    300.0.10· Vendor fix available
    Issue
    OpenSSL supports creating a custom cipher via the legacy EVPCIPHERmethnew() function and associated function calls. This function was deprecated in OpenSSL 3.0 and application authors are instead encouraged to use the new provider mechanism in order to implement custom ciphers. OpenSSL versions 3.0.0 to 3.0.5 incorrectly handle legacy custom ciphers passed to the EVPEncryptInitex2(), EVPDecryptInitex2() and EVPCipherInitex2() functions (as well as other similarly named encryption and decryption initialisation functions). Instead of using the custom cipher directly it incorrectly tries to fetch an equivalent cipher from the available providers. An equivalent cipher is found based on the NID passed to EVPCIPHERmethnew(). This NID is supposed to represent the unique NID for a given cipher. However it is possible for an application to incorrectly pass NIDundef as this value in the call to EVPCIPHERmethnew(). When NIDundef is used in this way the OpenSSL encryption/decryption…

    Recommended action: Upgrade to 300.0.10 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  13. High, CVSS 7.5crates.ioPublished

    AES OCB fails to encrypt some bytes

    CVE-2022-2097 · GHSA-3wx7-46ch-7rq2

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.9; < 111.22.0
    Fixed in
    111.22.0300.0.9· Vendor fix available
    Issue
    AES OCB mode for 32-bit x86 platforms using the AES-NI assembly optimized implementation will not encrypt the entirety of the data under some circumstances. This could reveal sixteen bytes of data that was pre-existing in the memory that wasn't written. In the special case of "in place" encryption, sixteen bytes of the plaintext would be revealed. Since OpenSSL does not support OCB based cipher suites for TLS and DTLS, they are both unaffected.

    Recommended action: Upgrade to 300.0.9 or 111.22.0 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  14. Critical, CVSS 9.8crates.ioPublished

    openssl-src heap memory corruption with RSA private key operation

    CVE-2022-2274 · GHSA-735f-pg76-fxc4

    Affected
    • crates.io openssl-src >= 300.0.8, < 300.0.9
    Fixed in
    300.0.9· Vendor fix available
    Issue
    The OpenSSL 3.0.4 release introduced a serious bug in the RSA implementation for X8664 CPUs supporting the AVX512IFMA instructions. This issue makes the RSA implementation with 2048 bit private keys incorrect on such machines and memory corruption will happen during the computation. As a consequence of the memory corruption an attacker may be able to trigger a remote code execution on the machine performing the computation. SSL/TLS servers or other servers using 2048 bit RSA private keys running on machines supporting AVX512IFMA instructions of the X8664 architecture are affected by this issue.

    Recommended action: Upgrade to 300.0.9 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  15. Critical, CVSS 9.8crates.ioPublished

    SM2 Decryption Buffer Overflow

    CVE-2021-3711 · GHSA-5ww6-px42-wc85

    Affected
    • crates.io openssl-src < 111.16.0
    Fixed in
    111.16.0· Vendor fix available
    Issue
    In order to decrypt SM2 encrypted data an application is expected to call the API function EVPPKEYdecrypt(). Typically an application will call this function twice. The first time, on entry, the "out" parameter can be NULL and, on exit, the "outlen" parameter is populated with the buffer size required to hold the decrypted plaintext. The application can then allocate a sufficiently sized buffer and call EVPPKEYdecrypt() again, but this time passing a non-NULL value for the "out" parameter. A bug in the implementation of the SM2 decryption code means that the calculation of the buffer size required to hold the plaintext returned by the first call to EVPPKEYdecrypt() can be smaller than the actual size required by the second call. This can lead to a buffer overflow when EVPPKEYdecrypt() is called by the application a second time with a buffer that is too small. A malicious attacker who is able present SM2 content for decryption to an application could cause attacker chosen data to…

    Recommended action: Upgrade to 111.16.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  16. High, CVSS 7.4crates.ioPublished

    Read buffer overruns processing ASN.1 strings

    CVE-2021-3712 · GHSA-q9wj-f4qw-6vfj

    Affected
    • crates.io openssl-src < 111.16.0
    Fixed in
    111.16.0· Vendor fix available
    Issue
    ASN.1 strings are represented internally within OpenSSL as an ASN1STRING structure which contains a buffer holding the string data and a field holding the buffer length. This contrasts with normal C strings which are repesented as a buffer for the string data which is terminated with a NUL (0) byte. Although not a strict requirement, ASN.1 strings that are parsed using OpenSSL's own "d2i" functions (and other similar parsing functions) as well as any string whose value has been set with the ASN1STRINGset() function will additionally NUL terminate the byte array in the ASN1STRING structure. However, it is possible for applications to directly construct valid ASN1STRING structures which do not NUL terminate the byte array by directly setting the "data" and "length" fields in the ASN1STRING array. This can also happen by using the ASN1STRINGset0() function. Numerous OpenSSL functions that print ASN.1 data have been found to assume that the ASN1STRING byte array will be NUL terminated,…

    Recommended action: Upgrade to 111.16.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  17. Medium, CVSS 5.3crates.ioPublished

    OCSP_basic_verify may incorrectly verify the response signing certificate

    CVE-2022-1343 · GHSA-mfm6-r9g2-q4r7

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.6
    Fixed in
    300.0.6· Vendor fix available
    Issue
    The function OCSPbasicverify verifies the signer certificate on an OCSP response. In the case where the (non-default) flag OCSPNOCHECKS is used then the response will be positive (meaning a successful verification) even in the case where the response signing certificate fails to verify. It is anticipated that most users of OCSPbasicverify will not use the OCSPNOCHECKS flag. In this case the OCSPbasicverify function will return a negative value (indicating a fatal error) in the case of a certificate verification failure. The normal expected return value in this case would be 0. This issue also impacts the command line OpenSSL "ocsp" application. When verifying an ocsp response with the "-nocertchecks" option the command line application will report that the verification is successful even though it has in fact failed. In this case the incorrect successful response will also be accompanied by error messages showing the failure and contradicting the apparently successful result. Fixed…

    Recommended action: Upgrade to 300.0.6 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  18. High, CVSS 7.5crates.ioPublished

    Resource leakage when decoding certificates and keys

    CVE-2022-1473 · GHSA-g323-fr93-4j3c

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.6
    Fixed in
    300.0.6· Vendor fix available
    Issue
    The OPENSSLLHflush() function, which empties a hash table, contains a bug that breaks reuse of the memory occuppied by the removed hash table entries. This function is used when decoding certificates or keys. If a long lived process periodically decodes certificates or keys its memory usage will expand without bounds and the process might be terminated by the operating system causing a denial of service. Also traversing the empty hash table entries will take increasingly more time. Typically such long lived processes might be TLS clients or TLS servers configured to accept client certificate authentication. The function was added in the OpenSSL 3.0 version thus older releases are not affected by the issue. Fixed in OpenSSL 3.0.3 (Affected 3.0.0,3.0.1,3.0.2).

    Recommended action: Upgrade to 300.0.6 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  19. Medium, CVSS 5.9crates.ioPublished

    Incorrect MAC key used in the RC4-MD5 ciphersuite

    CVE-2022-1434 · GHSA-638m-m8mh-7gw2

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.6
    Fixed in
    300.0.6· Vendor fix available
    Issue
    The OpenSSL 3.0 implementation of the RC4-MD5 ciphersuite incorrectly uses the AAD data as the MAC key. This makes the MAC key trivially predictable. An attacker could exploit this issue by performing a man-in-the-middle attack to modify data being sent from one endpoint to an OpenSSL 3.0 recipient such that the modified data would still pass the MAC integrity check. Note that data sent from an OpenSSL 3.0 endpoint to a non-OpenSSL 3.0 endpoint will always be rejected by the recipient and the connection will fail at that point. Many application protocols require data to be sent from the client to the server first. Therefore, in such a case, only an OpenSSL 3.0 server would be impacted when talking to a non-OpenSSL 3.0 client. If both endpoints are OpenSSL 3.0 then the attacker could modify data being sent in both directions. In this case both clients and servers could be affected, regardless of the application protocol. Note that in the absence of an attacker this bug means that an…

    Recommended action: Upgrade to 300.0.6 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  20. High, CVSS 7.5crates.ioAmendedPublished

    openssl-src's infinite loop in BN_mod_sqrt() reachable when parsing certificates

    CVE-2022-0778 · GHSA-x3mh-jvjw-3xwx

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.5; < 111.18.0
    Fixed in
    111.18.0300.0.5· Vendor fix available
    Issue
    The BNmodsqrt() function, which computes a modular square root, contains a bug that can cause it to loop forever for non-prime moduli. Internally this function is used when parsing certificates that contain elliptic curve public keys in compressed form or explicit elliptic curve parameters with a base point encoded in compressed form. It is possible to trigger the infinite loop by crafting a certificate that has invalid explicit curve parameters. Since certificate parsing happens prior to verification of the certificate signature, any process that parses an externally supplied certificate may thus be subject to a denial of service attack. The infinite loop can also be reached when parsing crafted private keys as they can contain explicit elliptic curve parameters. Thus vulnerable situations include: - TLS clients consuming server certificates - TLS servers consuming client certificates - Hosting providers taking certificates or private keys from customers - Certificate authorities…

    Recommended action: Upgrade to 300.0.5 or 111.18.0 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

  21. High, CVSS 7.5crates.ioPublished

    Invalid handling of X509_verify_cert() internal errors in libssl

    CVE-2021-4044 · GHSA-mmjf-f5jw-w72q

    Affected
    • crates.io openssl-src >= 300.0.0, < 300.0.4
    Fixed in
    300.0.4· Vendor fix available
    Issue
    Internally libssl in OpenSSL calls X509verifycert() on the client side to verify a certificate supplied by a server. That function may return a negative return value to indicate an internal error (for example out of memory). Such a negative return value is mishandled by OpenSSL and will cause an IO function (such as SSLconnect() or SSLdohandshake()) to not indicate success and a subsequent call to SSLgeterror() to return the value SSLERRORWANTRETRYVERIFY. This return value is only supposed to be returned by OpenSSL if the application has previously called SSLCTXsetcertverifycallback(). Since most applications do not do this the SSLERRORWANTRETRYVERIFY return value from SSLgeterror() will be totally unexpected and applications may not behave correctly as a result. The exact behaviour will depend on the application but it could result in crashes, infinite loops or other similar incorrect responses. This issue is made more serious in combination with a separate bug in OpenSSL 3.0 that…

    Recommended action: Upgrade to 300.0.4 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  22. Medium, CVSS 5.9crates.ioAmendedPublished

    openssl-src NULL pointer Dereference in signature_algorithms processing

    CVE-2021-3449 · GHSA-83mx-573x-5rw9

    Affected
    • crates.io openssl-src < 111.15.0
    Fixed in
    111.15.0· Vendor fix available
    Issue
    An OpenSSL TLS server may crash if sent a maliciously crafted renegotiation ClientHello message from a client. If a TLSv1.2 renegotiation ClientHello omits the signaturealgorithms extension (where it was present in the initial ClientHello), but includes a signaturealgorithmscert extension then a NULL pointer dereference will result, leading to a crash and a denial of service attack. A server is only vulnerable if it has TLSv1.2 and renegotiation enabled (which is the default configuration). OpenSSL TLS clients are not impacted by this issue. All OpenSSL 1.1.1 versions are affected by this issue. Users of these versions should upgrade to OpenSSL 1.1.1k. OpenSSL 1.0.2 is not impacted by this issue. Fixed in OpenSSL 1.1.1k (Affected 1.1.1-1.1.1j).

    Recommended action: Upgrade to 111.15.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

  23. High, CVSS 7.4crates.ioAmendedPublished

    Certificate check bypass in openssl-src

    CVE-2021-3450 · GHSA-8hfj-xrj2-pm22

    Affected
    • crates.io openssl-src >= 111.11.0, < 111.15.0
    Fixed in
    111.15.0· Vendor fix available
    Issue
    The X509VFLAGX509STRICT flag enables additional security checks of the certificates present in a certificate chain. It is not set by default. Starting from OpenSSL version 1.1.1h a check to disallow certificates in the chain that have explicitly encoded elliptic curve parameters was added as an additional strict check. An error in the implementation of this check meant that the result of a previous check to confirm that certificates in the chain are valid CA certificates was overwritten. This effectively bypasses the check that non-CA certificates must not be able to issue other certificates. If a "purpose" has been configured then there is a subsequent opportunity for checks that the certificate is a valid CA. All of the named "purpose" values implemented in libcrypto perform this check. Therefore, where a purpose is set the certificate chain will still be rejected even when the strict flag has been used. A purpose is set by default in libssl client and server certificate…

    Recommended action: Upgrade to 111.15.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

  24. Medium, CVSS 5.9crates.ioPublished

    Integer Overflow in openssl-src

    CVE-2021-23841 · GHSA-84rm-qf37-fgc2

    Affected
    • crates.io openssl-src < 111.14.0
    Fixed in
    111.14.0· Vendor fix available
    Issue
    Calls to EVPCipherUpdate, EVPEncryptUpdate and EVPDecryptUpdate may overflow the output length argument in some cases where the input length is close to the maximum permissable length for an integer on the platform. In such cases the return value from the function call will be 1 (indicating success), but the output length value will be negative. This could cause applications to behave incorrectly or crash. 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).

    Recommended action: Upgrade to 111.14.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  25. High, CVSS 7.5crates.ioAmendedPublished

    Integer Overflow in openssl-src

    CVE-2021-23840 · GHSA-qgm6-9472-pwq7

    Affected
    • crates.io openssl-src < 111.14.0
    Fixed in
    111.14.0· Vendor fix available
    Issue
    Calls to EVPCipherUpdate, EVPEncryptUpdate and EVPDecryptUpdate may overflow the output length argument in some cases where the input length is close to the maximum permissable length for an integer on the platform. In such cases the return value from the function call will be 1 (indicating success), but the output length value will be negative. This could cause applications to behave incorrectly or crash. 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).

    Recommended action: Upgrade to 111.14.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.