In the Linux kernel, the following vulnerability has been resolved:
octeontx2-af: Add validation before accessing cgx and lmac
with the addition of new MAC blocks like CN10K RPM and CN10KB RPM_USX, LMACs are noncontiguous and CGX blocks are also noncontiguous. But during RVU driver initialization, the driver is assuming they are contiguous and trying to access cgx or lmac with their id which is resulting in kernel panic.
This patch fixes the issue by adding proper checks.
[ 23.219150] pc : cgxlmacread+0x38/0x70 [ 23.219154] lr : rvuprogramchannels+0x3f0/0x498 [ 23.223852] sp : ffff000100d6fc80 [ 23.227158] x29: ffff000100d6fc80 x28: ffff00010009f880 x27: 000000000000005a [ 23.234288] x26: ffff000102586768 x25: 0000000000002500 x24: fffffffffff0f000
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/53xxx/CVE-2023-53654.json",
"cna_assigner": "Linux"
}"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2023-53654.json"
[
{
"id": "CVE-2023-53654-1ae13bc3",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@79ebb53772c95d3a6ae51b3c65f9985fdd430df6",
"target": {
"file": "drivers/net/ethernet/marvell/octeontx2/af/cgx.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"135321250449517663140537805534425965572",
"79266273331443913842501852155383048833",
"111099105503659462567502732973528298890",
"94423846617931957609593541689643378638",
"74116501104400796728434945389644208584",
"182801768248574909327951138258026490753"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line"
},
{
"id": "CVE-2023-53654-40e1aa9f",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e425e2ba933618ee5ec8e4f3eb341efeb6c9ddef",
"target": {
"file": "drivers/net/ethernet/marvell/octeontx2/af/cgx.c",
"function": "cgx_lmac_read"
},
"digest": {
"function_hash": "202037019266440503911655180081746137514",
"length": 139.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"id": "CVE-2023-53654-4d5c99b4",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@79ebb53772c95d3a6ae51b3c65f9985fdd430df6",
"target": {
"file": "drivers/net/ethernet/marvell/octeontx2/af/cgx.c",
"function": "cgx_lmac_read"
},
"digest": {
"function_hash": "202037019266440503911655180081746137514",
"length": 139.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"id": "CVE-2023-53654-7bc64dba",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b04872e15f3df62cb2fd530950f769626e1ef489",
"target": {
"file": "drivers/net/ethernet/marvell/octeontx2/af/cgx.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"135321250449517663140537805534425965572",
"79266273331443913842501852155383048833",
"111099105503659462567502732973528298890",
"94423846617931957609593541689643378638",
"74116501104400796728434945389644208584",
"182801768248574909327951138258026490753"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line"
},
{
"id": "CVE-2023-53654-916b64cd",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b04872e15f3df62cb2fd530950f769626e1ef489",
"target": {
"file": "drivers/net/ethernet/marvell/octeontx2/af/cgx.c",
"function": "cgx_lmac_write"
},
"digest": {
"function_hash": "121592567422500012269076121656970965504",
"length": 154.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"id": "CVE-2023-53654-9ed0eb58",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e425e2ba933618ee5ec8e4f3eb341efeb6c9ddef",
"target": {
"file": "drivers/net/ethernet/marvell/octeontx2/af/cgx.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"135321250449517663140537805534425965572",
"79266273331443913842501852155383048833",
"111099105503659462567502732973528298890",
"94423846617931957609593541689643378638",
"74116501104400796728434945389644208584",
"182801768248574909327951138258026490753"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line"
},
{
"id": "CVE-2023-53654-a5457ef6",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b04872e15f3df62cb2fd530950f769626e1ef489",
"target": {
"file": "drivers/net/ethernet/marvell/octeontx2/af/cgx.c",
"function": "cgx_lmac_read"
},
"digest": {
"function_hash": "202037019266440503911655180081746137514",
"length": 139.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"id": "CVE-2023-53654-ae59d51a",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@79ebb53772c95d3a6ae51b3c65f9985fdd430df6",
"target": {
"file": "drivers/net/ethernet/marvell/octeontx2/af/cgx.c",
"function": "cgx_lmac_write"
},
"digest": {
"function_hash": "121592567422500012269076121656970965504",
"length": 154.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"id": "CVE-2023-53654-b4f2c3cf",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a5485a943193e55c79150382e6461e8ea759e96e",
"target": {
"file": "drivers/net/ethernet/marvell/octeontx2/af/cgx.c",
"function": "cgx_lmac_read"
},
"digest": {
"function_hash": "202037019266440503911655180081746137514",
"length": 139.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"id": "CVE-2023-53654-c11d8e16",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a5485a943193e55c79150382e6461e8ea759e96e",
"target": {
"file": "drivers/net/ethernet/marvell/octeontx2/af/cgx.c",
"function": "cgx_lmac_write"
},
"digest": {
"function_hash": "121592567422500012269076121656970965504",
"length": 154.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"id": "CVE-2023-53654-c70d4c0a",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a5485a943193e55c79150382e6461e8ea759e96e",
"target": {
"file": "drivers/net/ethernet/marvell/octeontx2/af/cgx.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"135321250449517663140537805534425965572",
"79266273331443913842501852155383048833",
"111099105503659462567502732973528298890",
"94423846617931957609593541689643378638",
"74116501104400796728434945389644208584",
"182801768248574909327951138258026490753"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line"
},
{
"id": "CVE-2023-53654-fee0e3fa",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e425e2ba933618ee5ec8e4f3eb341efeb6c9ddef",
"target": {
"file": "drivers/net/ethernet/marvell/octeontx2/af/cgx.c",
"function": "cgx_lmac_write"
},
"digest": {
"function_hash": "121592567422500012269076121656970965504",
"length": 154.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
}
]