T7909: FRR EIGRP - Handling for malformed update msgs - #1053
Conversation
|
👍 |
There was a problem hiding this comment.
Pull Request Overview
This PR adds a patch to FRR's EIGRP implementation to fix crashes caused by malformed update packets. The patch addresses the issue where code attempts to read more data from TLV (Type-Length-Value) structures than is available in the packet stream.
- Adds bounds checking before reading packet data to prevent crashes
- Implements graceful handling of unknown TLV types with proper validation
- Adds safety checks for packet header lengths and TLV structure integrity
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
This patch fixes the crashes happening upon receipt of malformed update packets carrying routes other than IPv4 Internal routes. For packets carrying IPv4 Inernal routes, a subsequent patch is required
9bc941e to
3fcf5f9
Compare
|
All contributors have signed the CLA ✍️ ✅ |
|
I have read the CLA Document and I hereby sign the CLA |
sever-sever
left a comment
There was a problem hiding this comment.
Merged in the upstream FRRouting/frr#19699
dmbaturin
left a comment
There was a problem hiding this comment.
We do not expose EIGPR yet but the patch will not harm, so let's merge it.
This patch fixes the crashes happening upon receipt of malformed update packets carrying routes other than IPv4 Internal routes. For packets carrying IPv4 Inernal routes, a subsequent patch is required
Change summary
This patch fixes the crashes happening upon receipt of malformed update packets carrying routes other than IPv4 Internal routes. The crash happens because the code is trying to read more data in TLVs than is available in the packet stream. Fix is implemented by first checking the length of available data in the stream before reading/accessing it. If sufficient data is not present to read, it is handled appropriately.
Types of changes
Related Task(s)
Related PR(s)
Checklist: