CVE-2022-49259 Information

Description

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 kobject_del() and the corresponding kobject_uevent() to the correct place.

Reference

https://git.kernel.org/stable/c/0b5924a14d64487ebd51127b0358d06066ef5384 https://git.kernel.org/stable/c/0f69288253e9fc7c495047720e523b9f1aba5712 https://git.kernel.org/stable/c/3d7e32c8da45957326f56937e0471c686d1a7711 https://git.kernel.org/stable/c/84fe3ca6e7910beb47ec13509d484f84fa2a41ad https://git.kernel.org/stable/c/b2001eb10f59363da930cdd6e086a2861986fa18 https://git.kernel.org/stable/c/cf0cb8686e55d9c022944bc6ba9e19e832889e83 https://git.kernel.org/stable/c/efaa0e969261e97c1fdd8e0338e5dd3ba5b9219c

Share on: