In the Linux kernel, the following vulnerability has been resolved:
block: don't delete queue kobject before its children
kobjects aren't supposed to be deleted before their child kobjects are deleted. Apparently this is usually benign; however, a WARN will be triggered if one of the child kobjects has a named attribute group:
sysfs group 'modes' not found for kobject 'crypto'
WARNING: CPU: 0 PID: 1 at fs/sysfs/group.c:278 sysfs_remove_group+0x72/0x80
...
Call Trace:
sysfs_remove_groups+0x29/0x40 fs/sysfs/group.c:312
__kobject_del+0x20/0x80 lib/kobject.c:611
kobject_cleanup+0xa4/0x140 lib/kobject.c:696
kobject_release lib/kobject.c:736 [inline]
kref_put include/linux/kref.h:65 [inline]
kobject_put+0x53/0x70 lib/kobject.c:753
blk_crypto_sysfs_unregister+0x10/0x20 block/blk-crypto-sysfs.c:159
blk_unregister_queue+0xb0/0x110 block/blk-sysfs.c:962
del_gendisk+0x117/0x250 block/genhd.c:610
Fix this by moving the kobjectdel() and the corresponding kobjectuevent() to the correct place.
[
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0b5924a14d64487ebd51127b0358d06066ef5384",
"target": {
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-0ada5593",
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"24198592950604978504679239553401895772",
"74409837946906845371158062088448466388",
"136836383636129179746724012810981898978",
"82132666179804281731737740103215619095",
"72021321008156569034563242616168249670",
"329301736535190226338992736714652071902",
"64547411446103771687398504275517241166",
"163051034341865803899186826906502084211",
"6944162636623421374442396313316564175",
"156912233604732173901895245683575228865"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@cf0cb8686e55d9c022944bc6ba9e19e832889e83",
"target": {
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-21593440",
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"24198592950604978504679239553401895772",
"74409837946906845371158062088448466388",
"136836383636129179746724012810981898978",
"82132666179804281731737740103215619095",
"72021321008156569034563242616168249670",
"159046903302026207743099957830256271456",
"215868339991946233324089902286805128483",
"275998942913292863224440820727595761106",
"156912233604732173901895245683575228865"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b2001eb10f59363da930cdd6e086a2861986fa18",
"target": {
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-23c2d15f",
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"135305726813816085813448641100369329502",
"85266513502295951788051322009065157859",
"136836383636129179746724012810981898978",
"82132666179804281731737740103215619095",
"167000917269126586746717581079195855773",
"207538578826534088100208829511572113148",
"95144088210617689691294874376537267343",
"6944162636623421374442396313316564175",
"156912233604732173901895245683575228865"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3d7e32c8da45957326f56937e0471c686d1a7711",
"target": {
"function": "blk_unregister_queue",
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-39bba1a1",
"signature_type": "Function",
"digest": {
"length": 675.0,
"function_hash": "168386411524904696372887832789591201883"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@b2001eb10f59363da930cdd6e086a2861986fa18",
"target": {
"function": "blk_unregister_queue",
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-526474d2",
"signature_type": "Function",
"digest": {
"length": 672.0,
"function_hash": "24851343038371307645800833247979436064"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3d7e32c8da45957326f56937e0471c686d1a7711",
"target": {
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-69f1c168",
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"24198592950604978504679239553401895772",
"74409837946906845371158062088448466388",
"136836383636129179746724012810981898978",
"82132666179804281731737740103215619095",
"72021321008156569034563242616168249670",
"159046903302026207743099957830256271456",
"215868339991946233324089902286805128483",
"275998942913292863224440820727595761106",
"156912233604732173901895245683575228865"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0f69288253e9fc7c495047720e523b9f1aba5712",
"target": {
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-70fbc65e",
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"24198592950604978504679239553401895772",
"74409837946906845371158062088448466388",
"136836383636129179746724012810981898978",
"82132666179804281731737740103215619095",
"119287563971571967762041237001501684729",
"9567795018482839084534139785885409363",
"226636740265430885651587359202149434502",
"215868339991946233324089902286805128483",
"275998942913292863224440820727595761106",
"156912233604732173901895245683575228865"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0b5924a14d64487ebd51127b0358d06066ef5384",
"target": {
"function": "blk_unregister_queue",
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-8120855f",
"signature_type": "Function",
"digest": {
"length": 654.0,
"function_hash": "262825622747360330050627351888160625381"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@cf0cb8686e55d9c022944bc6ba9e19e832889e83",
"target": {
"function": "blk_unregister_queue",
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-99c40d68",
"signature_type": "Function",
"digest": {
"length": 675.0,
"function_hash": "168386411524904696372887832789591201883"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@0f69288253e9fc7c495047720e523b9f1aba5712",
"target": {
"function": "blk_unregister_queue",
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-a41fc35a",
"signature_type": "Function",
"digest": {
"length": 652.0,
"function_hash": "196627061233630448790914916000562644354"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@efaa0e969261e97c1fdd8e0338e5dd3ba5b9219c",
"target": {
"function": "blk_unregister_queue",
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-a5fff5c4",
"signature_type": "Function",
"digest": {
"length": 654.0,
"function_hash": "262825622747360330050627351888160625381"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@efaa0e969261e97c1fdd8e0338e5dd3ba5b9219c",
"target": {
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-c2c98003",
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"24198592950604978504679239553401895772",
"74409837946906845371158062088448466388",
"136836383636129179746724012810981898978",
"82132666179804281731737740103215619095",
"72021321008156569034563242616168249670",
"329301736535190226338992736714652071902",
"64547411446103771687398504275517241166",
"163051034341865803899186826906502084211",
"6944162636623421374442396313316564175",
"156912233604732173901895245683575228865"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@84fe3ca6e7910beb47ec13509d484f84fa2a41ad",
"target": {
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-cb63d488",
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"24198592950604978504679239553401895772",
"74409837946906845371158062088448466388",
"136836383636129179746724012810981898978",
"82132666179804281731737740103215619095",
"72021321008156569034563242616168249670",
"329301736535190226338992736714652071902",
"64547411446103771687398504275517241166",
"163051034341865803899186826906502084211",
"6944162636623421374442396313316564175",
"156912233604732173901895245683575228865"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@84fe3ca6e7910beb47ec13509d484f84fa2a41ad",
"target": {
"function": "blk_unregister_queue",
"file": "block/blk-sysfs.c"
},
"deprecated": false,
"signature_version": "v1",
"id": "CVE-2022-49259-e1c2b24b",
"signature_type": "Function",
"digest": {
"length": 654.0,
"function_hash": "262825622747360330050627351888160625381"
}
}
]