In the Linux kernel, the following vulnerability has been resolved:
PCI: keystone: Fix NULL pointer dereference in case of DT error in kspciesetuprcapp_regs()
If IORESOURCEMEM is not provided in Device Tree due to any error, resourcelistfirsttype() will return NULL and pciparserequestofpci_ranges() will just emit a warning.
This will cause a NULL pointer dereference. Fix this bug by adding NULL return check.
Found by Linux Verification Center (linuxtesting.org) with SVACE.
[
{
"id": "CVE-2024-43823-08fbd221",
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bbba48ad67c53feea05936ea1e029dcca8057506",
"target": {
"file": "drivers/pci/controller/dwc/pci-keystone.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"326155664255084636061513227944901051816",
"19752951582121125368991867476663294911",
"160310526968881193513032884081076390855",
"259236785798975692440305678871296387201",
"40722647991669541816416097273782805166",
"196500106576945048113976490270809374381",
"107848685602879110159947943415451503635",
"241321381177701904774370372882955741318",
"70650537443636488015079609133435565312",
"178128599953224575849703217341284059121",
"85925098171318827991060685652006148106",
"157744142117253745008346265879555733814",
"318312108625157426481829688521010637837",
"58474672687675050362835842665177610126",
"248630836012556076829471731553300301499",
"216014178663071713521636355648104715006",
"190908628039418280305254906837171493633",
"127582622768969289977924226627234086682",
"136986417779594779531280591065318071612",
"274675239777757524759105928437036015635",
"195362488286451323551487532818089436352",
"69679511254226161940660100631291015924",
"151269174691111219179369180575570872768",
"148620439284381347943593495924270822309",
"37259025353041054866260159049052868116"
],
"threshold": 0.9
},
"signature_version": "v1"
},
{
"id": "CVE-2024-43823-0cffbf67",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bbba48ad67c53feea05936ea1e029dcca8057506",
"target": {
"file": "drivers/pci/controller/dwc/pci-keystone.c",
"function": "ks_pcie_host_init"
},
"deprecated": false,
"digest": {
"length": 646.0,
"function_hash": "296228393044034350047390732054965613264"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-43823-117023f6",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dbcdd1863ba2ec9b76ec131df25d797709e05597",
"target": {
"file": "drivers/pci/controller/dwc/pci-keystone.c",
"function": "ks_pcie_setup_rc_app_regs"
},
"deprecated": false,
"digest": {
"length": 848.0,
"function_hash": "338732249064303798923664702510532644139"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-43823-251fad6a",
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dbcdd1863ba2ec9b76ec131df25d797709e05597",
"target": {
"file": "drivers/pci/controller/dwc/pci-keystone.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"108976318936377461575941673360071205427",
"19752951582121125368991867476663294911",
"160310526968881193513032884081076390855",
"259236785798975692440305678871296387201",
"40722647991669541816416097273782805166",
"196500106576945048113976490270809374381",
"107848685602879110159947943415451503635",
"241321381177701904774370372882955741318",
"70650537443636488015079609133435565312",
"178128599953224575849703217341284059121",
"85925098171318827991060685652006148106",
"157744142117253745008346265879555733814",
"318312108625157426481829688521010637837",
"58474672687675050362835842665177610126",
"248630836012556076829471731553300301499",
"216014178663071713521636355648104715006",
"190908628039418280305254906837171493633",
"127582622768969289977924226627234086682",
"136986417779594779531280591065318071612",
"274675239777757524759105928437036015635",
"195362488286451323551487532818089436352",
"69679511254226161940660100631291015924",
"151269174691111219179369180575570872768",
"148620439284381347943593495924270822309",
"37259025353041054866260159049052868116"
],
"threshold": 0.9
},
"signature_version": "v1"
},
{
"id": "CVE-2024-43823-28a7e206",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dbcdd1863ba2ec9b76ec131df25d797709e05597",
"target": {
"file": "drivers/pci/controller/dwc/pci-keystone.c",
"function": "ks_pcie_host_init"
},
"deprecated": false,
"digest": {
"length": 646.0,
"function_hash": "296228393044034350047390732054965613264"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-43823-2acfb9eb",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0a6f1b5fe8ef8268aaa069035639968ceeea0a23",
"target": {
"file": "drivers/pci/controller/dwc/pci-keystone.c",
"function": "ks_pcie_setup_rc_app_regs"
},
"deprecated": false,
"digest": {
"length": 848.0,
"function_hash": "338732249064303798923664702510532644139"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-43823-40b63062",
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a231707a91f323af1e5d9f1722055ec2fc1c7775",
"target": {
"file": "drivers/pci/controller/dwc/pci-keystone.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"108976318936377461575941673360071205427",
"19752951582121125368991867476663294911",
"160310526968881193513032884081076390855",
"259236785798975692440305678871296387201",
"40722647991669541816416097273782805166",
"196500106576945048113976490270809374381",
"107848685602879110159947943415451503635",
"241321381177701904774370372882955741318",
"70650537443636488015079609133435565312",
"178128599953224575849703217341284059121",
"85925098171318827991060685652006148106",
"157744142117253745008346265879555733814",
"318312108625157426481829688521010637837",
"58474672687675050362835842665177610126",
"248630836012556076829471731553300301499",
"216014178663071713521636355648104715006",
"190908628039418280305254906837171493633",
"127582622768969289977924226627234086682",
"136986417779594779531280591065318071612",
"274675239777757524759105928437036015635",
"195362488286451323551487532818089436352",
"69679511254226161940660100631291015924",
"151269174691111219179369180575570872768",
"148620439284381347943593495924270822309",
"37259025353041054866260159049052868116"
],
"threshold": 0.9
},
"signature_version": "v1"
},
{
"id": "CVE-2024-43823-a1e95091",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a231707a91f323af1e5d9f1722055ec2fc1c7775",
"target": {
"file": "drivers/pci/controller/dwc/pci-keystone.c",
"function": "ks_pcie_host_init"
},
"deprecated": false,
"digest": {
"length": 646.0,
"function_hash": "296228393044034350047390732054965613264"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-43823-a484843a",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a231707a91f323af1e5d9f1722055ec2fc1c7775",
"target": {
"file": "drivers/pci/controller/dwc/pci-keystone.c",
"function": "ks_pcie_setup_rc_app_regs"
},
"deprecated": false,
"digest": {
"length": 848.0,
"function_hash": "338732249064303798923664702510532644139"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-43823-a8f5bf0c",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0a6f1b5fe8ef8268aaa069035639968ceeea0a23",
"target": {
"file": "drivers/pci/controller/dwc/pci-keystone.c",
"function": "ks_pcie_host_init"
},
"deprecated": false,
"digest": {
"length": 646.0,
"function_hash": "296228393044034350047390732054965613264"
},
"signature_version": "v1"
},
{
"id": "CVE-2024-43823-dc4474f9",
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0a6f1b5fe8ef8268aaa069035639968ceeea0a23",
"target": {
"file": "drivers/pci/controller/dwc/pci-keystone.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"326155664255084636061513227944901051816",
"19752951582121125368991867476663294911",
"160310526968881193513032884081076390855",
"259236785798975692440305678871296387201",
"40722647991669541816416097273782805166",
"196500106576945048113976490270809374381",
"107848685602879110159947943415451503635",
"241321381177701904774370372882955741318",
"70650537443636488015079609133435565312",
"178128599953224575849703217341284059121",
"85925098171318827991060685652006148106",
"157744142117253745008346265879555733814",
"318312108625157426481829688521010637837",
"58474672687675050362835842665177610126",
"248630836012556076829471731553300301499",
"216014178663071713521636355648104715006",
"190908628039418280305254906837171493633",
"127582622768969289977924226627234086682",
"136986417779594779531280591065318071612",
"274675239777757524759105928437036015635",
"195362488286451323551487532818089436352",
"69679511254226161940660100631291015924",
"151269174691111219179369180575570872768",
"148620439284381347943593495924270822309",
"37259025353041054866260159049052868116"
],
"threshold": 0.9
},
"signature_version": "v1"
},
{
"id": "CVE-2024-43823-ee509c27",
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bbba48ad67c53feea05936ea1e029dcca8057506",
"target": {
"file": "drivers/pci/controller/dwc/pci-keystone.c",
"function": "ks_pcie_setup_rc_app_regs"
},
"deprecated": false,
"digest": {
"length": 848.0,
"function_hash": "338732249064303798923664702510532644139"
},
"signature_version": "v1"
}
]