|
Message-ID: <CABXRUiQuyKO0DcAkODv6k-e5LLDu-D_8g6KOw4Xr1ZpuDSh2mw@mail.gmail.com> Date: Thu, 18 Apr 2019 21:32:54 +0800 From: Fuqian Huang <huangfq.daxian@...il.com> To: oss-security@...ts.openwall.com Subject: Linux kernel < 4.14.111 drivers/message/fusion/mptscsih.c kernel address dumps to user space In drivers/message/fusion/mptscsih.c:1701 and drivers/message/fusion/mptscsih.c:1786, mptscsih_abort will dump the address of SCpnt into dmesg, which allows local user to read the kernel address via dmesg. int mptscsih_abort(struct scsi_cmnd * SCpnt) { ... printk(MYIOC_s_INFO_FMT "attempting task abort! (sc=%p)\n", ioc->name, SCpnt); ... out: printk(MYIOC_s_INFO_FMT "task abort: %s (rv=%04x) (sc=%p)\n", ioc->name, ((retval == SUCCESS) ? "SUCCESS" : "FAILED"), retval, SCpnt); ... } In drivers/message/fusion/mptscsih.c:1819 and drivers/message/fusion/mptscsih.c:1843, mptscsih_dev_reset will dump the address of SCpnt into dmesg, which allows local user to read the kernel address via dmesg. int mptscsih_dev_reset(struct scsi_cmnd *SCpnt) { ... printk(MYIOC_s_INFO_FMT "attempting target reset! (sc=%p)\n", ioc->name, SCpnt); ... out: printk (MYIOC_s_INFO_FMT "target reset: %s (sc=%p)\n", ioc->name, ((retval == 0) ? "SUCCESS" : "FAILED" ), SCpnt); ... } In drivers/message/fusion/mptscsih.c:1931 and drivers/message/fusion/mptscsih.c:1943, mptscsih_host_reset will dump the address of SCpnt into dmesg, which allows local user to read the kernel address via dmesg. int mptscsih_host_reset(struct scsi_cmnd *SCpnt) { ... printk(MYIOC_s_INFO_FMT "attempting host reset! (sc=%p)\n", ioc->name, SCpnt); ... printk(MYIOC_s_INFO_FMT "host reset: %s (sc=%p)\n", ioc->name, ((retval == 0) ? "SUCCESS" : "FAILED" ), SCpnt); ... }
Powered by blists - more mailing lists
Please check out the Open Source Software Security Wiki, which is counterpart to this mailing list.
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.