In the Linux kernel, the following vulnerability has been resolved:
Revert "usb: typec: ucsi: add a common function ucsiunregisterconnectors()"
The recent commit 87d0e2f41b8c ("usb: typec: ucsi: add a common function ucsiunregisterconnectors()") introduced a regression that caused NULL dereference at reading the power supply sysfs. It's a stale sysfs entry that should have been removed but remains with NULL ops. The commit changed the error handling to skip the entries after a NULL con->wq, and this leaves the power device unreleased.
For addressing the regression, the straight revert is applied here. Further code improvements can be done from the scratch again.
[
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3d4044c9e6d2e3f11f1f8b5e0ee8647d3eb1afad",
"id": "CVE-2022-49944-0fd06f9a",
"deprecated": false,
"target": {
"file": "drivers/usb/typec/ucsi/ucsi.c"
},
"signature_version": "v1",
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"319630493793791825932159130726105489988",
"216054820874483060888137573341965562980",
"156223306171886838820238820887852168528",
"306457992731074053618284843940226252655",
"147539719211442373700068530255572607202",
"135111356111389443685057134546872468064",
"15290504396495309411495135836829329248",
"137670961695375580057584219795943270919",
"65586347739562476696169346515954797956",
"117933987658125777627193460888375311186",
"61518847259798015151236892311265011429",
"171020364158845121858964885806759492827",
"302240268615779911935096308295845875270",
"101067449083564016952170259903491568815",
"321375120907954816443511656220207597428",
"317370477591810028238884822618468659595",
"272286489543288630954068440016323041303",
"94574948027891805828207255807004459804",
"337759325907857871347152532616422817849",
"180936077102515332322476338877640938341",
"209491365915066209487454255765989863963",
"90877537091538544149907913687135406897",
"184590143273519193979415001904026305401",
"17926991067248072436850854836348841222",
"319725459013301770919489385792865700913",
"9963176842957332132010351020768484872",
"309178243430783178455464923449718816395",
"233461185711838097783614238748718367106",
"200863737881630719775847954623168743033",
"83424689803314240761845019639227433139",
"184767912060212926881334243682609626762",
"169432465007235386146082683341289350786",
"120013206236918616397109314203224635970",
"35402807862271252263808312091213468204",
"33628302675658396809918507252865917891",
"5062197070413188318118150371758581125",
"139360051574056826157506945041626275442",
"203354261905230048097806453889617180356",
"3959248009366094990973378860775544312",
"220091488853492854979301519703095617076"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5f73aa2cf8bef4a39baa1591c3144ede4788826e",
"id": "CVE-2022-49944-11ea235f",
"deprecated": false,
"target": {
"function": "ucsi_init",
"file": "drivers/usb/typec/ucsi/ucsi.c"
},
"signature_version": "v1",
"signature_type": "Function",
"digest": {
"length": 1248.0,
"function_hash": "92173058003376344370768778062653839813"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5f73aa2cf8bef4a39baa1591c3144ede4788826e",
"id": "CVE-2022-49944-36a87fee",
"deprecated": false,
"target": {
"function": "ucsi_unregister_connectors",
"file": "drivers/usb/typec/ucsi/ucsi.c"
},
"signature_version": "v1",
"signature_type": "Function",
"digest": {
"length": 458.0,
"function_hash": "169661277934217551670063647133906229975"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5f73aa2cf8bef4a39baa1591c3144ede4788826e",
"id": "CVE-2022-49944-7a235840",
"deprecated": false,
"target": {
"file": "drivers/usb/typec/ucsi/ucsi.c"
},
"signature_version": "v1",
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"319630493793791825932159130726105489988",
"216054820874483060888137573341965562980",
"156223306171886838820238820887852168528",
"306457992731074053618284843940226252655",
"147539719211442373700068530255572607202",
"135111356111389443685057134546872468064",
"15290504396495309411495135836829329248",
"137670961695375580057584219795943270919",
"65586347739562476696169346515954797956",
"117933987658125777627193460888375311186",
"61518847259798015151236892311265011429",
"171020364158845121858964885806759492827",
"302240268615779911935096308295845875270",
"101067449083564016952170259903491568815",
"321375120907954816443511656220207597428",
"317370477591810028238884822618468659595",
"272286489543288630954068440016323041303",
"94574948027891805828207255807004459804",
"337759325907857871347152532616422817849",
"180936077102515332322476338877640938341",
"209491365915066209487454255765989863963",
"90877537091538544149907913687135406897",
"184590143273519193979415001904026305401",
"17926991067248072436850854836348841222",
"319725459013301770919489385792865700913",
"9963176842957332132010351020768484872",
"309178243430783178455464923449718816395",
"233461185711838097783614238748718367106",
"200863737881630719775847954623168743033",
"83424689803314240761845019639227433139",
"184767912060212926881334243682609626762",
"169432465007235386146082683341289350786",
"120013206236918616397109314203224635970",
"35402807862271252263808312091213468204",
"33628302675658396809918507252865917891",
"5062197070413188318118150371758581125",
"139360051574056826157506945041626275442",
"203354261905230048097806453889617180356",
"3959248009366094990973378860775544312",
"220091488853492854979301519703095617076"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3d4044c9e6d2e3f11f1f8b5e0ee8647d3eb1afad",
"id": "CVE-2022-49944-b44f79db",
"deprecated": false,
"target": {
"function": "ucsi_init",
"file": "drivers/usb/typec/ucsi/ucsi.c"
},
"signature_version": "v1",
"signature_type": "Function",
"digest": {
"length": 1248.0,
"function_hash": "92173058003376344370768778062653839813"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5f73aa2cf8bef4a39baa1591c3144ede4788826e",
"id": "CVE-2022-49944-c82792ef",
"deprecated": false,
"target": {
"function": "ucsi_unregister",
"file": "drivers/usb/typec/ucsi/ucsi.c"
},
"signature_version": "v1",
"signature_type": "Function",
"digest": {
"length": 211.0,
"function_hash": "236917856575453851580782410491202913969"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3d4044c9e6d2e3f11f1f8b5e0ee8647d3eb1afad",
"id": "CVE-2022-49944-da883338",
"deprecated": false,
"target": {
"function": "ucsi_unregister",
"file": "drivers/usb/typec/ucsi/ucsi.c"
},
"signature_version": "v1",
"signature_type": "Function",
"digest": {
"length": 211.0,
"function_hash": "236917856575453851580782410491202913969"
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3d4044c9e6d2e3f11f1f8b5e0ee8647d3eb1afad",
"id": "CVE-2022-49944-f80ef3ef",
"deprecated": false,
"target": {
"function": "ucsi_unregister_connectors",
"file": "drivers/usb/typec/ucsi/ucsi.c"
},
"signature_version": "v1",
"signature_type": "Function",
"digest": {
"length": 458.0,
"function_hash": "169661277934217551670063647133906229975"
}
}
]