Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(deps): update module golang.org/x/crypto to v0.17.0 [security] - autoclosed #57

Closed

Conversation

renovate[bot]
Copy link

@renovate renovate bot commented Jul 17, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
golang.org/x/crypto v0.0.0-20191206172530-e9b2fee46413 -> v0.17.0 age adoption passing confidence

GitHub Vulnerability Alerts

CVE-2020-9283

golang.org/x/crypto before v0.0.0-20200220183623-bac4c82f6975 for Go allows a panic during signature verification in the golang.org/x/crypto/ssh package. A client can attack an SSH server that accepts public keys. Also, a server can attack any SSH client.

CVE-2020-7919

The Helm core maintainers have identified a high severity security vulnerability in Go's crypto package affecting all versions prior to Helm 2.16.8 and Helm 3.1.0.

Thanks to @​ravin9249 for identifying the vulnerability.

Impact

Go before 1.12.16 and 1.13.x before 1.13.7 (and the crypto/cryptobyte package before 0.0.0-20200124225646-8b5121be2f68 for Go) allows attacks on clients resulting in a panic via a malformed X.509 certificate. This may allow a remote attacker to cause a denial of service.

Patches

A patch to compile Helm against Go 1.14.4 has been provided for Helm 2 and is available in Helm 2.16.8. Helm 3.1.0 and newer are compiled against Go 1.13.7+.

Workarounds

No workaround is available. Users are urged to upgrade.

References

For more information

If you have any questions or comments about this advisory:

CVE-2022-27191

The golang.org/x/crypto/ssh package before 0.0.0-20220314234659-1baeb1ce4c0b for Go allows an attacker to crash a server in certain circumstances involving AddHostKey.

CVE-2021-43565

The x/crypto/ssh package before 0.0.0-20211202192323-5770296d904e of golang.org/x/crypto allows an unauthenticated attacker to panic an SSH server. When using AES-GCM or ChaCha20Poly1305, consuming a malformed packet which contains an empty plaintext causes a panic.

CVE-2020-29652

A nil pointer dereference in the golang.org/x/crypto/ssh component through v0.0.0-20201203163018-be400aefbc4c for Go allows remote attackers to cause a denial of service against SSH servers. An attacker can craft an authentication request message for the gssapi-with-mic method which will cause NewServerConn to panic via a nil pointer dereference if ServerConfig.GSSAPIWithMICConfig is nil.

CVE-2023-48795

Summary

Terrapin is a prefix truncation attack targeting the SSH protocol. More precisely, Terrapin breaks the integrity of SSH's secure channel. By carefully adjusting the sequence numbers during the handshake, an attacker can remove an arbitrary amount of messages sent by the client or server at the beginning of the secure channel without the client or server noticing it.

Mitigations

To mitigate this protocol vulnerability, OpenSSH suggested a so-called "strict kex" which alters the SSH handshake to ensure a Man-in-the-Middle attacker cannot introduce unauthenticated messages as well as convey sequence number manipulation across handshakes.

Warning: To take effect, both the client and server must support this countermeasure.

As a stop-gap measure, peers may also (temporarily) disable the affected algorithms and use unaffected alternatives like AES-GCM instead until patches are available.

Details

The SSH specifications of ChaCha20-Poly1305 (chacha20-poly1305@​openssh.com) and Encrypt-then-MAC (*[email protected] MACs) are vulnerable against an arbitrary prefix truncation attack (a.k.a. Terrapin attack). This allows for an extension negotiation downgrade by stripping the SSH_MSG_EXT_INFO sent after the first message after SSH_MSG_NEWKEYS, downgrading security, and disabling attack countermeasures in some versions of OpenSSH. When targeting Encrypt-then-MAC, this attack requires the use of a CBC cipher to be practically exploitable due to the internal workings of the cipher mode. Additionally, this novel attack technique can be used to exploit previously unexploitable implementation flaws in a Man-in-the-Middle scenario.

The attack works by an attacker injecting an arbitrary number of SSH_MSG_IGNORE messages during the initial key exchange and consequently removing the same number of messages just after the initial key exchange has concluded. This is possible due to missing authentication of the excess SSH_MSG_IGNORE messages and the fact that the implicit sequence numbers used within the SSH protocol are only checked after the initial key exchange.

In the case of ChaCha20-Poly1305, the attack is guaranteed to work on every connection as this cipher does not maintain an internal state other than the message's sequence number. In the case of Encrypt-Then-MAC, practical exploitation requires the use of a CBC cipher; while theoretical integrity is broken for all ciphers when using this mode, message processing will fail at the application layer for CTR and stream ciphers.

For more details see https://terrapin-attack.com.

Impact

This attack targets the specification of ChaCha20-Poly1305 (chacha20-poly1305@​openssh.com) and Encrypt-then-MAC (*[email protected]), which are widely adopted by well-known SSH implementations and can be considered de-facto standard. These algorithms can be practically exploited; however, in the case of Encrypt-Then-MAC, we additionally require the use of a CBC cipher. As a consequence, this attack works against all well-behaving SSH implementations supporting either of those algorithms and can be used to downgrade (but not fully strip) connection security in case SSH extension negotiation (RFC8308) is supported. The attack may also enable attackers to exploit certain implementation flaws in a man-in-the-middle (MitM) scenario.


Configuration

📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot requested a review from moul as a code owner July 17, 2023 05:55
@trafico-bot trafico-bot bot added the 🔍 Ready for Review Pull Request is not reviewed yet label Jul 17, 2023
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to e984872 [security] fix(deps): update golang.org/x/crypto digest to 3f8f064 [security] Jul 18, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 9f8edb0 to 6c18d8b Compare July 18, 2023 08:54
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 3f8f064 [security] fix(deps): update golang.org/x/crypto digest to e984872 [security] Jul 19, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 6c18d8b to 065c228 Compare July 19, 2023 17:46
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to e984872 [security] fix(deps): update golang.org/x/crypto digest to 12e1fcd [security] Jul 21, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 065c228 to 6be9fdb Compare July 21, 2023 05:37
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 12e1fcd [security] fix(deps): update golang.org/x/crypto digest to e984872 [security] Jul 22, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 6be9fdb to d039d18 Compare July 22, 2023 02:32
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to e984872 [security] fix(deps): update golang.org/x/crypto digest to d08e19b [security] Jul 30, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from d039d18 to 1d24ed6 Compare July 30, 2023 02:11
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to d08e19b [security] fix(deps): update golang.org/x/crypto digest to e984872 [security] Jul 31, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 1d24ed6 to cb9159a Compare July 31, 2023 06:00
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to e984872 [security] fix(deps): update golang.org/x/crypto digest to b4ddeed [security] Aug 7, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from cb9159a to d49be0c Compare August 7, 2023 02:25
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to b4ddeed [security] fix(deps): update golang.org/x/crypto digest to 0d375be [security] Sep 5, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from d49be0c to 35c39df Compare September 5, 2023 17:54
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 0d375be [security] fix(deps): update golang.org/x/crypto digest to d359caa [security] Sep 6, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 35c39df to a572b0f Compare September 6, 2023 23:54
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to d359caa [security] fix(deps): update golang.org/x/crypto digest to 0d375be [security] Sep 7, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from a572b0f to 2ee2056 Compare September 7, 2023 11:54
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 0d375be [security] fix(deps): update golang.org/x/crypto digest to e90f1e1 [security] Sep 8, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 2ee2056 to 8f259df Compare September 8, 2023 05:16
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to e90f1e1 [security] fix(deps): update golang.org/x/crypto digest to 0d375be [security] Sep 9, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 8f259df to b1c438f Compare September 9, 2023 14:34
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 0d375be [security] fix(deps): update golang.org/x/crypto digest to 3f0842a [security] Sep 12, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from b1c438f to 2980298 Compare September 12, 2023 02:54
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 3f0842a [security] fix(deps): update golang.org/x/crypto digest to 0d375be [security] Sep 14, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 2980298 to 4055639 Compare September 14, 2023 20:46
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 1cf1811 [security] fix(deps): update golang.org/x/crypto digest to eb61739 [security] Nov 13, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 3240416 to 3fcb1d9 Compare November 13, 2023 02:56
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to eb61739 [security] fix(deps): update golang.org/x/crypto digest to 1cf1811 [security] Nov 20, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 3fcb1d9 to 66c2c86 Compare November 20, 2023 08:24
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 1cf1811 [security] fix(deps): update golang.org/x/crypto digest to eb61739 [security] Nov 21, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 66c2c86 to b7e79c9 Compare November 21, 2023 02:52
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to eb61739 [security] fix(deps): update golang.org/x/crypto digest to 270bf25 [security] Nov 22, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from b7e79c9 to bcf643a Compare November 22, 2023 17:50
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 270bf25 [security] fix(deps): update golang.org/x/crypto digest to eb61739 [security] Nov 23, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from bcf643a to dbb69a6 Compare November 23, 2023 05:17
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to eb61739 [security] fix(deps): update golang.org/x/crypto digest to 325b735 [security] Nov 28, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from dbb69a6 to 00b4fb6 Compare November 28, 2023 02:54
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 325b735 [security] fix(deps): update golang.org/x/crypto digest to 152cdb1 [security] Nov 30, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 00b4fb6 to 0d0f27e Compare November 30, 2023 08:33
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 152cdb1 [security] fix(deps): update golang.org/x/crypto digest to 325b735 [security] Dec 6, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 0d0f27e to 4b72420 Compare December 6, 2023 02:35
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 325b735 [security] fix(deps): update golang.org/x/crypto digest to 152cdb1 [security] Dec 9, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 4b72420 to 60e8fc6 Compare December 9, 2023 05:55
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 152cdb1 [security] fix(deps): update golang.org/x/crypto digest to 325b735 [security] Dec 11, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 60e8fc6 to 0070adf Compare December 11, 2023 05:05
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 325b735 [security] fix(deps): update golang.org/x/crypto digest to 4e5a261 [security] Dec 15, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 0070adf to 03b991a Compare December 15, 2023 17:47
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 4e5a261 [security] fix(deps): update golang.org/x/crypto digest to 325b735 [security] Dec 16, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from 03b991a to d469326 Compare December 16, 2023 08:38
@renovate renovate bot changed the title fix(deps): update golang.org/x/crypto digest to 325b735 [security] fix(deps): update module golang.org/x/crypto to v0.17.0 [security] Dec 19, 2023
@renovate renovate bot force-pushed the renovate/go-golang.org/x/crypto-vulnerability branch from d469326 to 9b89bfb Compare December 19, 2023 05:29
@renovate renovate bot changed the title fix(deps): update module golang.org/x/crypto to v0.17.0 [security] fix(deps): update module golang.org/x/crypto to v0.17.0 [security] - autoclosed Jan 30, 2024
@renovate renovate bot closed this Jan 30, 2024
@renovate renovate bot deleted the renovate/go-golang.org/x/crypto-vulnerability branch January 30, 2024 23:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🔍 Ready for Review Pull Request is not reviewed yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants