GHSA-pwqm-x5x6-5586

Source
https://github.com/advisories/GHSA-pwqm-x5x6-5586
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2024/03/GHSA-pwqm-x5x6-5586/GHSA-pwqm-x5x6-5586.json
Aliases
Published
2024-03-28T17:27:40Z
Modified
2024-04-16T18:51:51Z
Summary
Cilium has insecure IPsec transport encryption
Details

Impact

Users of IPsec transparent encryption in Cilium may be vulnerable to cryptographic attacks that render the transparent encryption ineffective.

In particular, Cilium is vulnerable to the following attacks by a man-in-the-middle attacker:

  • Chosen plaintext attacks
  • Key recovery attacks
  • Replay attacks

These attacks are possible due to an ESP sequence number collision when multiple nodes are configured with the same key. Fixed versions of Cilium use unique keys for each IPsec tunnel established between nodes, resolving all of the above attacks.

Important: After upgrading, users must perform a key rotation using the instructions here to ensure that they are no longer vulnerable to this issue. Please note that the key rotation instructions have recently been updated, and users must use the new instructions to properly establish secure IPsec tunnels. To validate that the new instructions have been followed properly, ensure that the IPsec Kubernetes secret contains a "+" sign.

Patches

All prior versions of Cilium that support IPsec transparent encryption (Cilium 1.4 onwards) are affected by this issue.

Patched versions:

  • Cilium 1.15.3
  • Cilium 1.14.9
  • Cilium 1.13.14

Workarounds

There is no workaround to this issue. IPsec transparent encryption users are strongly encouraged to upgrade.

Acknowledgements

The Cilium community has worked together with members of Cure53 and Isovalent to prepare these mitigations. Special thanks to @NikAleksandrov and @pchaigno for their work on remediating the issue. Thanks to Marsh Ray, Senior Software Developer at Microsoft, for input and guidance on the fix.

For more information

If you have any questions or comments about this advisory, please reach out on Slack.

As usual, if you think you found a related vulnerability, we strongly encourage you to report security vulnerabilities to our private security mailing list: security@cilium.io - first, before disclosing them in any public forums. This is a private mailing list where only members of the Cilium internal security team are subscribed to, and is treated as top priority.

References

Affected packages

Go / github.com/cilium/cilium

Affected ranges

Type
SEMVER
Events
Introduced
1.4.0
Fixed
1.13.14

Database specific

{
    "last_known_affected_version_range": "<= 1.13.13"
}

Go / github.com/cilium/cilium

Affected ranges

Type
SEMVER
Events
Introduced
1.14.0
Fixed
1.14.9

Database specific

{
    "last_known_affected_version_range": "<= 1.14.7"
}

Go / github.com/cilium/cilium

Affected ranges

Type
SEMVER
Events
Introduced
1.15.0
Fixed
1.15.3

Database specific

{
    "last_known_affected_version_range": "<= 1.15.2"
}