---
id: CVE-2023-53635
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  netfilter: conntrack: fix wrong ct->timeout value

  (struct nf_conn)->timeout is an interval before the conntrack
  confirmed
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  netfilter: conntrack: fix wrong ct->timeout value

  (struct nf_conn)->timeout is an interval before the conntrack
  confirmed.  After confirmed, it becomes a timestamp.

  I…
severity: high
cvss: 8.2
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H'
vendor: linux
product: linux_kernel
affected:
  - 'linux_kernel >= 4.4, < 6.1.28'
  - 'linux_kernel >= 6.2, < 6.2.15'
  - 'linux_kernel >= 6.3, < 6.3.2'
patched:
  - linux_kernel 6.3.2
published: '2025-10-07'
updated: '2026-10-15'
sourceUpdated: '2026-10-15T22:17:44.927'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2023-53635'
references:
  - url: 'https://git.kernel.org/stable/c/73db1b8f2bb6725b7391e85aab41fdf592b3c0c1'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/80c5ba0078e20d926d11d0778f9a43902664ebf0'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/f612ae1ab4793701caf39386fb3b7f4b3ef44e48'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/ff5e4ac8dd7be7f1faba955c5779a68571eeb0f8'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
epss: 0.00435
epssPercentile: 0.37574
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-10-15T21:36:08.236702Z'
ingestedAt: '2026-10-15T22:48:25.413Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

netfilter: conntrack: fix wrong ct->timeout value

(struct nf_conn)->timeout is an interval before the conntrack
confirmed.  After confirmed, it becomes a timestamp.

It is observed that timeout of an unconfirmed conntrack:
- Set by calling ctnetlink_change_timeout(). As a result,
  `nfct_time_stamp` was wrongly added to `ct->timeout` twice.
- Get by calling ctnetlink_dump_timeout(). As a result,
  `nfct_time_stamp` was wrongly subtracted.

Call Trace:
 <TASK>
 dump_stack_lvl
 ctnetlink_dump_timeout
 __ctnetlink_glue_build
 ctnetlink_glue_build
 __nfqnl_enqueue_packet
 nf_queue
 nf_hook_slow
 ip_mc_output
 ? __pfx_ip_finish_output
 ip_send_skb
 ? __pfx_dst_output
 udp_send_skb
 udp_sendmsg
 ? __pfx_ip_generic_getfrag
 sock_sendmsg

Separate the 2 cases in:
- Setting `ct->timeout` in __nf_ct_set_timeout().
- Getting `ct->timeout` in ctnetlink_dump_timeout().

Pablo appends:

Update ctnetlink to set up the timeout _after_ the IPS_CONFIRMED flag is
set on, otherwise conntrack creation via ctnetlink breaks.

Note that the problem described in this patch occurs since the
introduction of the nfnetlink_queue conntrack support, select a
sufficiently old Fixes: tag for -stable kernel to pick up this fix.

## Affected

- `linux_kernel >= 4.4, < 6.1.28`
- `linux_kernel >= 6.2, < 6.2.15`
- `linux_kernel >= 6.3, < 6.3.2`

## Remediation

Upgrade past the affected range:

- `linux_kernel 6.3.2`
