GeezerVison is showing github.com — deps: upgrade openssl sources to quictls/openssl-3.0.14+quic1 · nodejs/node@48d643f
File treeExpand file treeCollapse file tree Open diff view settings 15-test_dsaparam_data/invalid
Some content is hiddenLarge Commits have some content hidden by default. Use the searchbox below for content that may be hidden. Dismiss bannerExpand file treeCollapse file tree Open diff view settings Collapse file Copy file name to clipboardExpand all lines: deps/openssl/openssl/CHANGES.md +70-1Lines changed: 70 additions & 1 deletion - Display the source diff
- Display the rich diff
| Original file line number | Diff line number | Diff line change |
|---|
@@ -28,12 +28,78 @@ breaking changes, and mappings for the large list of deprecated functions. | 28 | 28 |
| 29 | 29 | [Migration guide]: https://github.com/openssl/openssl/tree/master/doc/man7/migration_guide.pod | 30 | 30 |
| 31 | | -### Changes between 3.0.13 and 3.0.13+quic [30 Jan 2024] | | 31 | +### Changes between 3.0.14 and 3.0.14+quic [7 Jun 2024] | 32 | 32 |
| 33 | 33 | * Add QUIC API support from BoringSSL | 34 | 34 |
| 35 | 35 | *Todd Short* | 36 | 36 |
| | 37 | +### Changes between 3.0.13 and 3.0.14 [4 Jun 2024] | | 38 | + | | 39 | + * Fixed potential use after free after SSL_free_buffers() is called. | | 40 | + | | 41 | + The SSL_free_buffers function is used to free the internal OpenSSL | | 42 | + buffer used when processing an incoming record from the network. | | 43 | + The call is only expected to succeed if the buffer is not currently | | 44 | + in use. However, two scenarios have been identified where the buffer | | 45 | + is freed even when still in use. | | 46 | + | | 47 | + The first scenario occurs where a record header has been received | | 48 | + from the network and processed by OpenSSL, but the full record body | | 49 | + has not yet arrived. In this case calling SSL_free_buffers will succeed | | 50 | + even though a record has only been partially processed and the buffer | | 51 | + is still in use. | | 52 | + | | 53 | + The second scenario occurs where a full record containing application | | 54 | + data has been received and processed by OpenSSL but the application has | | 55 | + only read part of this data. Again a call to SSL_free_buffers will | | 56 | + succeed even though the buffer is still in use. | | 57 | + | | 58 | + ([CVE-2024-4741]) | | 59 | + | | 60 | + *Matt Caswell* | | 61 | + | | 62 | + * Fixed an issue where checking excessively long DSA keys or parameters may | | 63 | + be very slow. | | 64 | + | | 65 | + Applications that use the functions EVP_PKEY_param_check() or | | 66 | + EVP_PKEY_public_check() to check a DSA public key or DSA parameters may | | 67 | + experience long delays. Where the key or parameters that are being checked | | 68 | + have been obtained from an untrusted source this may lead to a Denial of | | 69 | + Service. | | 70 | + | | 71 | + To resolve this issue DSA keys larger than OPENSSL_DSA_MAX_MODULUS_BITS | | 72 | + will now fail the check immediately with a DSA_R_MODULUS_TOO_LARGE error | | 73 | + reason. | | 74 | + | | 75 | + ([CVE-2024-4603]) | | 76 | + | | 77 | + *Tomáš Mráz* | | 78 | + | | 79 | + * Fixed an issue where some non-default TLS server configurations can cause | | 80 | + unbounded memory growth when processing TLSv1.3 sessions. An attacker may | | 81 | + exploit certain server configurations to trigger unbounded memory growth that | | 82 | + would lead to a Denial of Service | | 83 | + | | 84 | + This problem can occur in TLSv1.3 if the non-default SSL_OP_NO_TICKET option | | 85 | + is being used (but not if early_data is also configured and the default | | 86 | + anti-replay protection is in use). In this case, under certain conditions, | | 87 | + the session cache can get into an incorrect state and it will fail to flush | | 88 | + properly as it fills. The session cache will continue to grow in an unbounded | | 89 | + manner. A malicious client could deliberately create the scenario for this | | 90 | + failure to force a Denial of Service. It may also happen by accident in | | 91 | + normal operation. | | 92 | + | | 93 | + ([CVE-2024-2511]) | | 94 | + | | 95 | + *Matt Caswell* | | 96 | + | | 97 | + * New atexit configuration switch, which controls whether the OPENSSL_cleanup | | 98 | + is registered when libcrypto is unloaded. This can be used on platforms | | 99 | + where using atexit() from shared libraries causes crashes on exit. | | 100 | + | | 101 | + *Randall S. Becker* | | 102 | + | 37 | 103 | ### Changes between 3.0.12 and 3.0.13 [30 Jan 2024] | 38 | 104 |
| 39 | 105 | * A file in PKCS12 format can contain certificates and keys and may come from | @@ -19830,6 +19896,9 @@ ndif | 19830 | 19896 |
| 19831 | 19897 | <!-- Links --> | 19832 | 19898 |
| | 19899 | +[CVE-2024-4741]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-4741 | | 19900 | +[CVE-2024-4603]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-4603 | | 19901 | +[CVE-2024-2511]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-2511 | 19833 | 19902 | [CVE-2024-0727]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-0727 | 19834 | 19903 | [CVE-2023-6237]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-6237 | 19835 | 19904 | [CVE-2023-6129]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-6129 | |
Collapse file Copy file name to clipboardExpand all lines: deps/openssl/openssl/CONTRIBUTING.md +4-2Lines changed: 4 additions & 2 deletions - Display the source diff
- Display the rich diff
| Original file line number | Diff line number | Diff line change |
|---|
@@ -9,7 +9,7 @@ Development is done on GitHub in the [openssl/openssl] repository. | 9 | 9 |
| 10 | 10 | [openssl/openssl]: <https://github.com/openssl/openssl> | 11 | 11 |
| 12 | | -To request new a feature, ask a question, or report a bug, | | 12 | +To request a new feature, ask a question, or report a bug, | 13 | 13 | please open an [issue on GitHub](https://github.com/openssl/openssl/issues). | 14 | 14 |
| 15 | 15 | To submit a patch or implement a new feature, please open a | @@ -67,7 +67,8 @@ guidelines: | 67 | 67 | often. We do not accept merge commits, you will have to remove them | 68 | 68 | (usually by rebasing) before it will be acceptable. | 69 | 69 |
| 70 | | - 4. Code provided should follow our [coding style] and compile without warnings. | | 70 | + 4. Code provided should follow our [coding style] and [documentation policy] | | 71 | + and compile without warnings. | 71 | 72 | There is a [Perl tool](util/check-format.pl) that helps | 72 | 73 | finding code formatting mistakes and other coding style nits. | 73 | 74 | Where `gcc` or `clang` is available, you should use the | @@ -77,6 +78,7 @@ guidelines: | 77 | 78 | whenever a PR is created or updated by committers. | 78 | 79 |
| 79 | 80 | [coding style]: https://www.openssl.org/policies/technical/coding-style.html | | 81 | + [documentation policy]: https://openssl.org/policies/technical/documentation-policy.html | 80 | 82 |
| 81 | 83 | 5. When at all possible, code contributions should include tests. These can | 82 | 84 | either be added to an existing test, or completely new. Please see | |
Collapse file Copy file name to clipboardExpand all lines: deps/openssl/openssl/Configurations/10-main.conf +8-1Lines changed: 8 additions & 1 deletion | Original file line number | Diff line number | Diff line change |
|---|
@@ -784,7 +784,14 @@ my %targets = ( | 784 | 784 | asm_arch => 'aarch64', | 785 | 785 | perlasm_scheme => "linux64", | 786 | 786 | }, | 787 | | - | | 787 | + "linux-arm64ilp32-clang" => { # clang config abi by --target | | 788 | + inherit_from => [ "linux-generic32" ], | | 789 | + CC => "clang", | | 790 | + CXX => "clang++", | | 791 | + bn_ops => "SIXTY_FOUR_BIT RC4_CHAR", | | 792 | + asm_arch => 'aarch64', | | 793 | + perlasm_scheme => "linux64", | | 794 | + }, | 788 | 795 | "linux-mips32" => { | 789 | 796 | # Configure script adds minimally required -march for assembly | 790 | 797 | # support, if no -march was specified at command line. | |
Collapse file Copy file name to clipboardExpand all lines: deps/openssl/openssl/Configurations/15-ios.conf +3-3Lines changed: 3 additions & 3 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -49,16 +49,16 @@ my %targets = ( | 49 | 49 | # | 50 | 50 | "iphoneos-cross" => { | 51 | 51 | inherit_from => [ "ios-common" ], | 52 | | - cflags => add("-isysroot \$(CROSS_TOP)/SDKs/\$(CROSS_SDK) -fno-common"), | | 52 | + cflags => add("-isysroot \"\$(CROSS_TOP)/SDKs/\$(CROSS_SDK)\" -fno-common"), | 53 | 53 | }, | 54 | 54 | "ios-cross" => { | 55 | 55 | inherit_from => [ "ios-xcrun" ], | 56 | 56 | CC => "cc", | 57 | | - cflags => add("-isysroot \$(CROSS_TOP)/SDKs/\$(CROSS_SDK)"), | | 57 | + cflags => add("-isysroot \"\$(CROSS_TOP)/SDKs/\$(CROSS_SDK)\""), | 58 | 58 | }, | 59 | 59 | "ios64-cross" => { | 60 | 60 | inherit_from => [ "ios64-xcrun" ], | 61 | 61 | CC => "cc", | 62 | | - cflags => add("-isysroot \$(CROSS_TOP)/SDKs/\$(CROSS_SDK)"), | | 62 | + cflags => add("-isysroot \"\$(CROSS_TOP)/SDKs/\$(CROSS_SDK)\""), | 63 | 63 | }, | 64 | 64 | ); |
Collapse file Copy file name to clipboardExpand all lines: deps/openssl/openssl/Configurations/unix-Makefile.tmpl +7-7Lines changed: 7 additions & 7 deletions | Original file line number | Diff line number | Diff line change |
|---|
| 21 | 21 | sub dependmagic { | 22 | 22 | my $target = shift; | 23 | 23 |
| 24 | | - return "$target: build_generated\n\t\$(MAKE) depend && \$(MAKE) _$target\n_$target"; | | 24 | + return "$target: build_generated\n\t\"\$(MAKE)\" depend && \"\$(MAKE)\" _$target\n_$target"; | 25 | 25 | } | 26 | 26 |
| 27 | 27 | our $COLUMNS = $ENV{COLUMNS}; | @@ -527,7 +527,7 @@ all: build_sw build_docs | 527 | 527 |
| 528 | 528 | test: tests | 529 | 529 | {- dependmagic('tests'); -}: build_programs_nodep build_modules_nodep link-utils | 530 | | - $(MAKE) run_tests | | 530 | + "$(MAKE)" run_tests | 531 | 531 | run_tests: FORCE | 532 | 532 | @ : {- output_off() if $disabled{tests}; "" -} | 533 | 533 | ( SRCTOP=$(SRCDIR) \ | @@ -542,7 +542,7 @@ run_tests: FORCE | 542 | 542 |
| 543 | 543 | list-tests: | 544 | 544 | @ : {- output_off() if $disabled{tests}; "" -} | 545 | | - $(MAKE) run_tests TESTS=list | | 545 | + "$(MAKE)" run_tests TESTS=list | 546 | 546 | @ : {- if ($disabled{tests}) { output_on(); } else { output_off(); } "" -} | 547 | 547 | @echo "Tests are not supported with your chosen Configure options" | 548 | 548 | @ : {- output_on() if !$disabled{tests}; "" -} | @@ -1193,12 +1193,12 @@ providers/fips.module.sources.new: configdata.pm | 1193 | 1193 | cd sources-tmp \ | 1194 | 1194 | && $$srcdir/Configure --banner=Configured enable-fips -O0 \ | 1195 | 1195 | && ./configdata.pm --query 'get_sources("providers/fips")' > sources1 \ | 1196 | | - && $(MAKE) -sj 4 build_generated providers/fips.so \ | | 1196 | + && "$(MAKE)" -sj 4 build_generated providers/fips.so \ | 1197 | 1197 | && find . -name '*.d' | xargs cat > dep1 \ | 1198 | | - && $(MAKE) distclean \ | | 1198 | + && "$(MAKE)" distclean \ | 1199 | 1199 | && $$srcdir/Configure --banner=Configured enable-fips no-asm -O0 \ | 1200 | 1200 | && ./configdata.pm --query 'get_sources("providers/fips")' > sources2 \ | 1201 | | - && $(MAKE) -sj 4 build_generated providers/fips.so \ | | 1201 | + && "$(MAKE)" -sj 4 build_generated providers/fips.so \ | 1202 | 1202 | && find . -name '*.d' | xargs cat > dep2 \ | 1203 | 1203 | && cat sources1 sources2 \ | 1204 | 1204 | | grep -v ' : \\$$' | grep -v util/providers.num \ | @@ -1332,7 +1332,7 @@ ordinals: build_generated | 1332 | 1332 | $(SSLHEADERS) | 1333 | 1333 |
| 1334 | 1334 | test_ordinals: | 1335 | | - $(MAKE) run_tests TESTS=test_ordinals | | 1335 | + "$(MAKE)" run_tests TESTS=test_ordinals | 1336 | 1336 |
| 1337 | 1337 | tags TAGS: FORCE | 1338 | 1338 | rm -f TAGS tags | |
Collapse file Copy file name to clipboardExpand all lines: deps/openssl/openssl/Configure +2-1Lines changed: 2 additions & 1 deletion | Original file line number | Diff line number | Diff line change |
|---|
| 1 | 1 | #! /usr/bin/env perl | 2 | 2 | # -*- mode: perl; -*- | 3 | | -# Copyright 2016-2023 The OpenSSL Project Authors. All Rights Reserved. | | 3 | +# Copyright 2016-2024 The OpenSSL Project Authors. All Rights Reserved. | 4 | 4 | # | 5 | 5 | # Licensed under the Apache License 2.0 (the "License"). You may not use | 6 | 6 | # this file except in compliance with the License. You can obtain a copy | @@ -405,6 +405,7 @@ my @disablables = ( | 405 | 405 | "asan", | 406 | 406 | "asm", | 407 | 407 | "async", | | 408 | + "atexit", | 408 | 409 | "autoalginit", | 409 | 410 | "autoerrinit", | 410 | 411 | "autoload-config", | |
Collapse file Copy file name to clipboardExpand all lines: deps/openssl/openssl/FAQ.md -6Lines changed: 0 additions & 6 deletions Collapse file Copy file name to clipboardExpand all lines: deps/openssl/openssl/INSTALL.md +8-1Lines changed: 8 additions & 1 deletion - Display the source diff
- Display the rich diff
| Original file line number | Diff line number | Diff line change |
|---|
@@ -480,7 +480,7 @@ Setting the FIPS HMAC key | 480 | 480 |
| 481 | 481 | As part of its self-test validation, the FIPS module must verify itself | 482 | 482 | by performing a SHA-256 HMAC computation on itself. The default key is | 483 | | -the SHA256 value of "the holy handgrenade of antioch" and is sufficient | | 483 | +the SHA256 value of "holy hand grenade of antioch" and is sufficient | 484 | 484 | for meeting the FIPS requirements. | 485 | 485 |
| 486 | 486 | To change the key to a different value, use this flag. The value should | @@ -546,6 +546,13 @@ be used even with this option. | 546 | 546 |
| 547 | 547 | Do not build support for async operations. | 548 | 548 |
| | 549 | +### no-atexit | | 550 | + | | 551 | +Do not use `atexit()` in libcrypto builds. | | 552 | + | | 553 | +`atexit()` has varied semantics between platforms and can cause SIGSEGV in some | | 554 | +circumstances. This option disables the atexit registration of OPENSSL_cleanup. | | 555 | + | 549 | 556 | ### no-autoalginit | 550 | 557 |
| 551 | 558 | Don't automatically load all supported ciphers and digests. | |
Collapse file Copy file name to clipboardExpand all lines: deps/openssl/openssl/NEWS.md +15Lines changed: 15 additions & 0 deletions - Display the source diff
- Display the rich diff
| Original file line number | Diff line number | Diff line change |
|---|
@@ -18,6 +18,18 @@ OpenSSL Releases | 18 | 18 | OpenSSL 3.0 | 19 | 19 | ----------- | 20 | 20 |
| | 21 | +### Major changes between OpenSSL 3.0.13 and OpenSSL 3.0.14 [4 Jun 2024] | | 22 | + | | 23 | + * Fixed potential use after free after SSL_free_buffers() is called | | 24 | + ([CVE-2024-4741]) | | 25 | + | | 26 | + * Fixed an issue where checking excessively long DSA keys or parameters may | | 27 | + be very slow | | 28 | + ([CVE-2024-4603]) | | 29 | + | | 30 | + * Fixed unbounded memory growth with session handling in TLSv1.3 | | 31 | + ([CVE-2024-2511]) | | 32 | + | 21 | 33 | ### Major changes between OpenSSL 3.0.12 and OpenSSL 3.0.13 [30 Jan 2024] | 22 | 34 |
| 23 | 35 | * Fixed PKCS12 Decoding crashes | @@ -1470,6 +1482,9 @@ OpenSSL 0.9.x | 1470 | 1482 |
| 1471 | 1483 | <!-- Links --> | 1472 | 1484 |
| | 1485 | +[CVE-2024-4741]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-4741 | | 1486 | +[CVE-2024-4603]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-4603 | | 1487 | +[CVE-2024-2511]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-2511 | 1473 | 1488 | [CVE-2024-0727]: https://www.openssl.org/news/vulnerabilities.html#CVE-2024-0727 | 1474 | 1489 | [CVE-2023-6237]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-6237 | 1475 | 1490 | [CVE-2023-6129]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-6129 | |
Collapse file Copy file name to clipboardExpand all lines: deps/openssl/openssl/NOTES-NONSTOP.md +4-1Lines changed: 4 additions & 1 deletion - Display the source diff
- Display the rich diff
| Original file line number | Diff line number | Diff line change |
|---|
@@ -56,7 +56,10 @@ relating to `atexit()` processing when a shared library is unloaded and when | 56 | 56 | the program terminates. This limitation applies to all OpenSSL shared library | 57 | 57 | components. | 58 | 58 |
| 59 | | -A resolution to this situation is under investigation. | | 59 | +It is possible to configure the build with `no-atexit` to avoid the SIGSEGV. | | 60 | +Preferably, you can explicitly call `OPENSSL_cleanup()` from your application. | | 61 | +It is not mandatory as it just deallocates various global data structures | | 62 | +OpenSSL allocated. | 60 | 63 |
| 61 | 64 | About Prefix and OpenSSLDir | 62 | 65 | --------------------------- | |
|