FAILED: patch "[PATCH] firmware: qemu_fw_cfg: fix sysfs information leak" failed to apply to 4.9-stable tree
Subsystems (2)
[email protected]
maintainerThe patch below does not apply to the 4.9-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From 1b656e9aad7f4886ed466094d1dc5ee4dd900d20 Mon Sep 17 00:00:00 2001
From: Johan Hovold <[email protected]>
Date: Wed, 1 Dec 2021 14:25:27 +0100
Subject: [PATCH] firmware: qemu_fw_cfg: fix sysfs information leak
Make sure to always NUL-terminate file names retrieved from the firmware to avoid accessing data beyond the entry slab buffer and exposing it through sysfs in case the firmware data is corrupt.
Fixes 75f3e8e47f38 ("firmware: introduce sysfs driver for QEMU's fw_cfg device")
Cc [email protected] # 4.6
Cc Gabriel Somlo <[email protected]>
Signed-off-by Johan Hovold <[email protected]>
Signed-off-by Michael S. Tsirkin <[email protected]>
drivers/firmware/qemu_fw_cfg.c +1 -1
@@ -598,7 +598,7 @@ static int fw_cfg_register_file(const struct fw_cfg_file *f)/* set file entry information */ entry->size =be32_to_cpu (f->size); entry->select =be16_to_cpu (f->select); -memcpy (entry->name, f->name,FW_CFG_MAX_FILE_PATH ); +strscpy (entry->name, f->name,FW_CFG_MAX_FILE_PATH );/* register entry under "/sys/firmware/qemu_fw_cfg/by_key/" */ err = kobject_init_and_add(&entry->kobj, &fw_cfg_sysfs_entry_ktype,