Skip to content

[rlc-9/5.14.0-687.13.1.el9_8] ip6_tunnel: clear skb2->cb[] in ip4ip6_err()#1332

Merged
PlaidCat merged 1 commit into
rlc-9/5.14.0-687.13.1.el9_8from
{jmaple}_rlc-9/5.14.0-687.13.1.el9_8
Jun 11, 2026
Merged

[rlc-9/5.14.0-687.13.1.el9_8] ip6_tunnel: clear skb2->cb[] in ip4ip6_err()#1332
PlaidCat merged 1 commit into
rlc-9/5.14.0-687.13.1.el9_8from
{jmaple}_rlc-9/5.14.0-687.13.1.el9_8

Conversation

@ciq-kernel-automation

Copy link
Copy Markdown

Summary

This PR has been automatically created after successful completion of all CI stages.

Commit Message(s)

ip6_tunnel: clear skb2->cb[] in ip4ip6_err()

cve cve-2026-43037
commit-author Eric Dumazet <edumazet@google.com>
commit 2edfa31769a4add828a7e604b21cb82aaaa05925

Test Results

✅ Build Stage

Architecture Build Time Total Time
x86_64 32m 55s 34m 9s
aarch64 21m 25s 22m 14s

✅ Boot Verification

✅ Kernel Selftests

Architecture Passed Failed Compared Against Status
x86_64 206 49 rlc-9/5.14.0-687.13.1.el9_8 ⚠️ No baseline available
aarch64 150 53 rlc-9/5.14.0-687.13.1.el9_8 ⚠️ No baseline available

✅ LTP Results

Architecture Passed Failed Compared Against Status
x86_64 1456 81 rlc-9/5.14.0-687.13.1.el9_8 ⚠️ No baseline available
aarch64 1429 82 rlc-9/5.14.0-687.13.1.el9_8 ⚠️ No baseline available

🤖 This PR was automatically generated by GitHub Actions
Run ID: 27349133634

cve cve-2026-43037
commit-author Eric Dumazet <edumazet@google.com>
commit 2edfa31

Oskar Kjos reported the following problem.

ip4ip6_err() calls icmp_send() on a cloned skb whose cb[] was written
by the IPv6 receive path as struct inet6_skb_parm. icmp_send() passes
IPCB(skb2) to __ip_options_echo(), which interprets that cb[] region
as struct inet_skb_parm (IPv4). The layouts differ: inet6_skb_parm.nhoff
at offset 14 overlaps inet_skb_parm.opt.rr, producing a non-zero rr
value. __ip_options_echo() then reads optlen from attacker-controlled
packet data at sptr[rr+1] and copies that many bytes into dopt->__data,
a fixed 40-byte stack buffer (IP_OPTIONS_DATA_FIXED_SIZE).

To fix this we clear skb2->cb[], as suggested by Oskar Kjos.

Also add minimal IPv4 header validation (version == 4, ihl >= 5).

Fixes: c4d3efa ("[IPV6] IP6TUNNEL: Add support to IPv4 over IPv6 tunnel.")
	Reported-by: Oskar Kjos <oskar.kjos@hotmail.com>
	Signed-off-by: Eric Dumazet <edumazet@google.com>
	Reviewed-by: Ido Schimmel <idosch@nvidia.com>
Link: https://patch.msgid.link/20260326155138.2429480-1-edumazet@google.com
	Signed-off-by: Jakub Kicinski <kuba@kernel.org>
(cherry picked from commit 2edfa31)
	Signed-off-by: Jonathan Maple <jmaple@ciq.com>
@ciq-kernel-automation ciq-kernel-automation Bot added the created-by-kernelci Tag PRs that were automatically created when a user branch was pushed to the repo (kernelCI) label Jun 11, 2026
@github-actions

Copy link
Copy Markdown

🤖 Validation Checks In Progress Workflow run: https://github.com/ctrliq/kernel-src-tree/actions/runs/27365103553

@github-actions

Copy link
Copy Markdown

Validation checks completed successfully View full results: https://github.com/ctrliq/kernel-src-tree/actions/runs/27365103553

@PlaidCat PlaidCat left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:shipit:

@bmastbergen bmastbergen left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🥌

@PlaidCat PlaidCat merged commit 22b8242 into rlc-9/5.14.0-687.13.1.el9_8 Jun 11, 2026
6 checks passed
@PlaidCat PlaidCat deleted the {jmaple}_rlc-9/5.14.0-687.13.1.el9_8 branch June 11, 2026 17:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

created-by-kernelci Tag PRs that were automatically created when a user branch was pushed to the repo (kernelCI)

Development

Successfully merging this pull request may close these issues.

2 participants