fkie_cve-2021-47102
Vulnerability from fkie_nvd
Published
2024-03-04 18:15
Modified
2025-02-14 14:54
Summary
In the Linux kernel, the following vulnerability has been resolved: net: marvell: prestera: fix incorrect structure access In line: upper = info->upper_dev; We access upper_dev field, which is related only for particular events (e.g. event == NETDEV_CHANGEUPPER). So, this line cause invalid memory access for another events, when ptr is not netdev_notifier_changeupper_info. The KASAN logs are as follows: [ 30.123165] BUG: KASAN: stack-out-of-bounds in prestera_netdev_port_event.constprop.0+0x68/0x538 [prestera] [ 30.133336] Read of size 8 at addr ffff80000cf772b0 by task udevd/778 [ 30.139866] [ 30.141398] CPU: 0 PID: 778 Comm: udevd Not tainted 5.16.0-rc3 #6 [ 30.147588] Hardware name: DNI AmazonGo1 A7040 board (DT) [ 30.153056] Call trace: [ 30.155547] dump_backtrace+0x0/0x2c0 [ 30.159320] show_stack+0x18/0x30 [ 30.162729] dump_stack_lvl+0x68/0x84 [ 30.166491] print_address_description.constprop.0+0x74/0x2b8 [ 30.172346] kasan_report+0x1e8/0x250 [ 30.176102] __asan_load8+0x98/0xe0 [ 30.179682] prestera_netdev_port_event.constprop.0+0x68/0x538 [prestera] [ 30.186847] prestera_netdev_event_handler+0x1b4/0x1c0 [prestera] [ 30.193313] raw_notifier_call_chain+0x74/0xa0 [ 30.197860] call_netdevice_notifiers_info+0x68/0xc0 [ 30.202924] register_netdevice+0x3cc/0x760 [ 30.207190] register_netdev+0x24/0x50 [ 30.211015] prestera_device_register+0x8a0/0xba0 [prestera]
Impacted products



{
  "configurations": [
    {
      "nodes": [
        {
          "cpeMatch": [
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
              "matchCriteriaId": "901A6B90-4B30-4E61-9B88-844D6E11AE47",
              "versionEndExcluding": "5.15.12",
              "versionStartIncluding": "5.14",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:5.16:rc1:*:*:*:*:*:*",
              "matchCriteriaId": "357AA433-37E8-4323-BFB2-3038D6E4B414",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:5.16:rc2:*:*:*:*:*:*",
              "matchCriteriaId": "A73429BA-C2D9-4D0C-A75F-06A1CA8B3983",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:5.16:rc3:*:*:*:*:*:*",
              "matchCriteriaId": "F621B5E3-E99D-49E7-90B9-EC3B77C95383",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:5.16:rc4:*:*:*:*:*:*",
              "matchCriteriaId": "F7BFDCAA-1650-49AA-8462-407DD593F94F",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:5.16:rc5:*:*:*:*:*:*",
              "matchCriteriaId": "6EC9882F-866D-4ACB-8FBC-213D8D8436C8",
              "vulnerable": true
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:5.16:rc6:*:*:*:*:*:*",
              "matchCriteriaId": "8A0915FE-A4AA-4C94-B783-CF29D81E7E54",
              "vulnerable": true
            }
          ],
          "negate": false,
          "operator": "OR"
        }
      ]
    }
  ],
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet: marvell: prestera: fix incorrect structure access\n\nIn line:\n\tupper = info-\u003eupper_dev;\nWe access upper_dev field, which is related only for particular events\n(e.g. event == NETDEV_CHANGEUPPER). So, this line cause invalid memory\naccess for another events,\nwhen ptr is not netdev_notifier_changeupper_info.\n\nThe KASAN logs are as follows:\n\n[   30.123165] BUG: KASAN: stack-out-of-bounds in prestera_netdev_port_event.constprop.0+0x68/0x538 [prestera]\n[   30.133336] Read of size 8 at addr ffff80000cf772b0 by task udevd/778\n[   30.139866]\n[   30.141398] CPU: 0 PID: 778 Comm: udevd Not tainted 5.16.0-rc3 #6\n[   30.147588] Hardware name: DNI AmazonGo1 A7040 board (DT)\n[   30.153056] Call trace:\n[   30.155547]  dump_backtrace+0x0/0x2c0\n[   30.159320]  show_stack+0x18/0x30\n[   30.162729]  dump_stack_lvl+0x68/0x84\n[   30.166491]  print_address_description.constprop.0+0x74/0x2b8\n[   30.172346]  kasan_report+0x1e8/0x250\n[   30.176102]  __asan_load8+0x98/0xe0\n[   30.179682]  prestera_netdev_port_event.constprop.0+0x68/0x538 [prestera]\n[   30.186847]  prestera_netdev_event_handler+0x1b4/0x1c0 [prestera]\n[   30.193313]  raw_notifier_call_chain+0x74/0xa0\n[   30.197860]  call_netdevice_notifiers_info+0x68/0xc0\n[   30.202924]  register_netdevice+0x3cc/0x760\n[   30.207190]  register_netdev+0x24/0x50\n[   30.211015]  prestera_device_register+0x8a0/0xba0 [prestera]"
    },
    {
      "lang": "es",
      "value": "En el kernel de Linux se ha resuelto la siguiente vulnerabilidad: net:marvell:prestera: corrige el acceso a la estructura incorrecta En l\u00ednea: superior = info-\u0026gt;upper_dev; Accedemos al campo Upper_dev, que est\u00e1 relacionado s\u00f3lo para eventos particulares (por ejemplo, evento == NETDEV_CHANGEUPPER). Entonces, esta l\u00ednea causa un acceso no v\u00e1lido a la memoria para otros eventos, cuando ptr no es netdev_notifier_changeupper_info. Los registros de KASAN son los siguientes: [30.123165] ERROR: KASAN: pila fuera de los l\u00edmites en prestera_netdev_port_event.constprop.0+0x68/0x538 [prestera] [30.133336] Lectura de tama\u00f1o 8 en la direcci\u00f3n ffff80000cf772b0 mediante tarea udevd/778 [ 0x0/0 x2c0 [ 30.159320] show_stack+0x18/0x30 [ 30.162729] dump_stack_lvl+0x68/0x84 [ 30.166491] print_address_description.constprop.0+0x74/0x2b8 [ 30.172346] kasan_report+0x1e8/0x250 [ 3 0.176102] __asan_load8+0x98/0xe0 [ 30.179682] prestera_netdev_port_event.constprop .0+0x68/0x538 [prestera] [ 30.186847] prestera_netdev_event_handler+0x1b4/0x1c0 [prestera] [ 30.193313] raw_notifier_call_chain+0x74/0xa0 [ 30.197860] call_netdevice_notifiers_info+0x68/0xc0 [ 30.202924] registro_netdevice+0x3cc/0x760 [ 30.207190] registro_netdev+0x24 /0x50 [ 30.211015] prestera_device_register+0x8a0/0xba0 [prestera]"
    }
  ],
  "id": "CVE-2021-47102",
  "lastModified": "2025-02-14T14:54:40.247",
  "metrics": {
    "cvssMetricV31": [
      {
        "cvssData": {
          "attackComplexity": "LOW",
          "attackVector": "LOCAL",
          "availabilityImpact": "HIGH",
          "baseScore": 7.1,
          "baseSeverity": "HIGH",
          "confidentialityImpact": "HIGH",
          "integrityImpact": "NONE",
          "privilegesRequired": "LOW",
          "scope": "UNCHANGED",
          "userInteraction": "NONE",
          "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H",
          "version": "3.1"
        },
        "exploitabilityScore": 1.8,
        "impactScore": 5.2,
        "source": "nvd@nist.gov",
        "type": "Primary"
      }
    ]
  },
  "published": "2024-03-04T18:15:08.600",
  "references": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "tags": [
        "Exploit",
        "Mailing List",
        "Patch"
      ],
      "url": "https://git.kernel.org/stable/c/2efc2256febf214e7b2bdaa21fe6c3c3146acdcb"
    },
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "tags": [
        "Exploit",
        "Mailing List",
        "Patch"
      ],
      "url": "https://git.kernel.org/stable/c/5c553a0cd1263e4da5f220d80fa713fc3959c1d0"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Exploit",
        "Mailing List",
        "Patch"
      ],
      "url": "https://git.kernel.org/stable/c/2efc2256febf214e7b2bdaa21fe6c3c3146acdcb"
    },
    {
      "source": "af854a3a-2127-422b-91ae-364da2661108",
      "tags": [
        "Exploit",
        "Mailing List",
        "Patch"
      ],
      "url": "https://git.kernel.org/stable/c/5c553a0cd1263e4da5f220d80fa713fc3959c1d0"
    }
  ],
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
  "vulnStatus": "Analyzed",
  "weaknesses": [
    {
      "description": [
        {
          "lang": "en",
          "value": "CWE-125"
        }
      ],
      "source": "nvd@nist.gov",
      "type": "Primary"
    }
  ]
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…