In the Linux kernel, the following vulnerability has been resolved:
net: ethernet: fix potential use-after-free in ec_bhf_remove
static void ec_bhf_remove(struct pci_dev *dev)
{
…
struct ec_bhf_priv *priv = netdev_priv(net_dev);
unregister_netdev(net_dev);
free_netdev(net_dev);
pci_iounmap(dev, priv->dma_io);
pci_iounmap(dev, priv->io);
…
}
priv is netdev private data, but it is used
after free_netdev(). It can cause use-after-free when accessing priv
pointer. So, fix it by moving free_netdev() after pci_iounmap()
calls.
git.kernel.org/stable/c/0260916843cc74f3906acf8b6f256693e01530a2
git.kernel.org/stable/c/19f88ca68ccf8771276a606765239b167654f84a
git.kernel.org/stable/c/1cafc540b7bf1b6a5a77dc000205fe337ef6eba6
git.kernel.org/stable/c/95deeb29d831e2fae608439e243e7a520611e7ea
git.kernel.org/stable/c/9cca0c2d70149160407bda9a9446ce0c29b6e6c6
git.kernel.org/stable/c/b1ad283755095a4b9d1431aeb357d7df1a33d3bb
git.kernel.org/stable/c/d11d79e52ba080ee567cb7d7eb42a5ade60a8130
git.kernel.org/stable/c/db2bc3cfd2bc01621014d4f17cdfc74611f339c8