An issue was discovered in the Linux kernel before 4.19.9. The USB subsystem mishandles size checks during the reading of an extra descriptor, related to _usbgetextradescriptor in drivers/usb/core/usb.c.
[
{
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@704620afc70cf47abb9d6a1a57f3825d2bca49cf",
"digest": {
"function_hash": "108552719086346714571027888220402703553",
"length": 2080.0
},
"target": {
"file": "drivers/usb/host/hwa-hc.c",
"function": "hwahc_security_create"
},
"id": "CVE-2018-20169-615141b3",
"deprecated": false,
"signature_version": "v1"
},
{
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@704620afc70cf47abb9d6a1a57f3825d2bca49cf",
"digest": {
"threshold": 0.9,
"line_hashes": [
"6037581503288747433921314450144172507",
"139903329310350938777407910467270734871",
"339740303375474719694890654092942288879",
"340115483467601268182031388706474816578"
]
},
"target": {
"file": "drivers/usb/core/hub.c"
},
"id": "CVE-2018-20169-855bbe13",
"deprecated": false,
"signature_version": "v1"
},
{
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@704620afc70cf47abb9d6a1a57f3825d2bca49cf",
"digest": {
"function_hash": "175891076154797192968020155359980188516",
"length": 1221.0
},
"target": {
"file": "drivers/usb/core/hub.c",
"function": "usb_enumerate_device_otg"
},
"id": "CVE-2018-20169-8c9e60e9",
"deprecated": false,
"signature_version": "v1"
},
{
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@704620afc70cf47abb9d6a1a57f3825d2bca49cf",
"digest": {
"threshold": 0.9,
"line_hashes": [
"106392268084903669729888084152014851798",
"30387269731080015644791173927862905748",
"114868493639398778424803972862654683241",
"39292794038734605123137583067272170116",
"14392271974095269249145450354406220567",
"117224573157910048797050567124308748565",
"279908918726066469558321789143397632022"
]
},
"target": {
"file": "include/linux/usb.h"
},
"id": "CVE-2018-20169-a075ca50",
"deprecated": false,
"signature_version": "v1"
},
{
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@704620afc70cf47abb9d6a1a57f3825d2bca49cf",
"digest": {
"threshold": 0.9,
"line_hashes": [
"254309943892474601404378900947907224162",
"118790136998453724407936953137907468614",
"318603872131632609948344928732055771551",
"113931800945622181998023459552835693137",
"198950771387656663848737338065811562895",
"238354764614969826926098683969902959039",
"117093015313758640322912973265346354140",
"16946145297564356722221948506427567070",
"180268488518335108680414683981788140987",
"216821215586659542925216899792697966385",
"76049138309997595323787834570703577568",
"215522293717014643212004629886561161392",
"203491258069288441750961045392048225358"
]
},
"target": {
"file": "drivers/usb/core/usb.c"
},
"id": "CVE-2018-20169-a6777ca4",
"deprecated": false,
"signature_version": "v1"
},
{
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@704620afc70cf47abb9d6a1a57f3825d2bca49cf",
"digest": {
"function_hash": "18754420185408492287158179098292085982",
"length": 481.0
},
"target": {
"file": "drivers/usb/core/usb.c",
"function": "__usb_get_extra_descriptor"
},
"id": "CVE-2018-20169-f7a3be43",
"deprecated": false,
"signature_version": "v1"
},
{
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git@704620afc70cf47abb9d6a1a57f3825d2bca49cf",
"digest": {
"threshold": 0.9,
"line_hashes": [
"106205976932024195711442837667562648823",
"266903207656329863786375254836629076957",
"141916878985665084239603630611508626079",
"74786727094307325686985258184794222126"
]
},
"target": {
"file": "drivers/usb/host/hwa-hc.c"
},
"id": "CVE-2018-20169-fc4e33f5",
"deprecated": false,
"signature_version": "v1"
}
]
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2018-20169.json"