{
   "containers": {
      "cna": {
         "providerMetadata": {
            "orgId": "f4215fc3-5b6b-47ff-a258-f7189bd81038"
         },
         "descriptions": [
            {
               "lang": "en",
               "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nwireguard: receive: annotate data-race around receiving_counter.counter\n\nSyzkaller with KCSAN identified a data-race issue when accessing\nkeypair->receiving_counter.counter. Use READ_ONCE() and WRITE_ONCE()\nannotations to mark the data race as intentional.\n\n    BUG: KCSAN: data-race in wg_packet_decrypt_worker / wg_packet_rx_poll\n\n    write to 0xffff888107765888 of 8 bytes by interrupt on cpu 0:\n     counter_validate drivers/net/wireguard/receive.c:321 [inline]\n     wg_packet_rx_poll+0x3ac/0xf00 drivers/net/wireguard/receive.c:461\n     __napi_poll+0x60/0x3b0 net/core/dev.c:6536\n     napi_poll net/core/dev.c:6605 [inline]\n     net_rx_action+0x32b/0x750 net/core/dev.c:6738\n     __do_softirq+0xc4/0x279 kernel/softirq.c:553\n     do_softirq+0x5e/0x90 kernel/softirq.c:454\n     __local_bh_enable_ip+0x64/0x70 kernel/softirq.c:381\n     __raw_spin_unlock_bh include/linux/spinlock_api_smp.h:167 [inline]\n     _raw_spin_unlock_bh+0x36/0x40 kernel/locking/spinlock.c:210\n     spin_unlock_bh include/linux/spinlock.h:396 [inline]\n     ptr_ring_consume_bh include/linux/ptr_ring.h:367 [inline]\n     wg_packet_decrypt_worker+0x6c5/0x700 drivers/net/wireguard/receive.c:499\n     process_one_work kernel/workqueue.c:2633 [inline]\n     ...\n\n    read to 0xffff888107765888 of 8 bytes by task 3196 on cpu 1:\n     decrypt_packet drivers/net/wireguard/receive.c:252 [inline]\n     wg_packet_decrypt_worker+0x220/0x700 drivers/net/wireguard/receive.c:501\n     process_one_work kernel/workqueue.c:2633 [inline]\n     process_scheduled_works+0x5b8/0xa30 kernel/workqueue.c:2706\n     worker_thread+0x525/0x730 kernel/workqueue.c:2787\n     ..."
            }
         ],
         "affected": [
            {
               "product": "Linux",
               "vendor": "Linux",
               "defaultStatus": "unaffected",
               "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
               "programFiles": [
                  "drivers/net/wireguard/receive.c"
               ],
               "versions": [
                  {
                     "version": "a9e90d9931f3",
                     "lessThan": "f87884e0dffd",
                     "status": "affected",
                     "versionType": "git"
                  },
                  {
                     "version": "a9e90d9931f3",
                     "lessThan": "d691be84ab89",
                     "status": "affected",
                     "versionType": "git"
                  },
                  {
                     "version": "a9e90d9931f3",
                     "lessThan": "45a83b220c83",
                     "status": "affected",
                     "versionType": "git"
                  },
                  {
                     "version": "a9e90d9931f3",
                     "lessThan": "78739d72f16b",
                     "status": "affected",
                     "versionType": "git"
                  },
                  {
                     "version": "a9e90d9931f3",
                     "lessThan": "3f94da807fe1",
                     "status": "affected",
                     "versionType": "git"
                  },
                  {
                     "version": "a9e90d9931f3",
                     "lessThan": "fdf16de078a9",
                     "status": "affected",
                     "versionType": "git"
                  },
                  {
                     "version": "a9e90d9931f3",
                     "lessThan": "bba045dc4d99",
                     "status": "affected",
                     "versionType": "git"
                  }
               ]
            },
            {
               "product": "Linux",
               "vendor": "Linux",
               "defaultStatus": "affected",
               "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
               "programFiles": [
                  "drivers/net/wireguard/receive.c"
               ],
               "versions": [
                  {
                     "version": "5.7",
                     "status": "affected"
                  },
                  {
                     "version": "0",
                     "lessThan": "5.7",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "5.10.214",
                     "lessThanOrEqual": "5.10.*",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "5.15.153",
                     "lessThanOrEqual": "5.15.*",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "6.1.83",
                     "lessThanOrEqual": "6.1.*",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "6.6.23",
                     "lessThanOrEqual": "6.6.*",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "6.7.11",
                     "lessThanOrEqual": "6.7.*",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "6.8.2",
                     "lessThanOrEqual": "6.8.*",
                     "status": "unaffected",
                     "versionType": "custom"
                  },
                  {
                     "version": "6.9",
                     "lessThanOrEqual": "*",
                     "status": "unaffected",
                     "versionType": "original_commit_for_fix"
                  }
               ]
            }
         ],
         "references": [
            {
               "url": "https://git.kernel.org/stable/c/f87884e0dffd61b47e58bc6e1e2f6843c212b0cc"
            },
            {
               "url": "https://git.kernel.org/stable/c/d691be84ab898cf136a35176eaf2f8fc116563f0"
            },
            {
               "url": "https://git.kernel.org/stable/c/45a83b220c83e3c326513269afbf69ae6fc65cce"
            },
            {
               "url": "https://git.kernel.org/stable/c/78739d72f16b2d7d549f713f1dfebd678d32484b"
            },
            {
               "url": "https://git.kernel.org/stable/c/3f94da807fe1668b9830f0eefbbf7e887b0a7bc6"
            },
            {
               "url": "https://git.kernel.org/stable/c/fdf16de078a97bf14bb8ee2b8d47cc3d3ead09ed"
            },
            {
               "url": "https://git.kernel.org/stable/c/bba045dc4d996d03dce6fe45726e78a1a1f6d4c3"
            }
         ],
         "title": "wireguard: receive: annotate data-race around receiving_counter.counter",
         "x_generator": {
            "engine": "bippy-a5840b7849dd"
         }
      }
   },
   "cveMetadata": {
      "assignerOrgId": "f4215fc3-5b6b-47ff-a258-f7189bd81038",
      "cveID": "CVE-2024-26861",
      "requesterUserId": "gregkh@kernel.org",
      "serial": "1",
      "state": "PUBLISHED"
   },
   "dataType": "CVE_RECORD",
   "dataVersion": "5.0"
}
