{"id":"CVE-2021-47235","state":"PUBLISHED","title":"net: ethernet: fix potential use-after-free in ec_bhf_remove","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: ethernet: fix potential use-after-free in ec_bhf_remove\n\nstatic void ec_bhf_remove(struct pci_dev *dev)\n{\n...\n\tstruct ec_bhf_priv *priv = netdev_priv(net_dev);\n\n\tunregister_netdev(net_dev);\n\tfree_netdev(net_dev);\n\n\tpci_iounmap(dev, priv->dma_io);\n\tpci_iounmap(dev, priv->io);\n...\n}\n\npriv is netdev private data, but it is used\nafter free_netdev(). It can cause use-after-free when accessing priv\npointer. So, fix it by moving free_netdev() after pci_iounmap()\ncalls.","publishedAt":"2024-05-21T14:19:37.070Z","updatedAt":"2026-05-11T13:50:34.524Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"db2bc3cfd2bc01621014d4f17cdfc74611f339c8","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"1cafc540b7bf1b6a5a77dc000205fe337ef6eba6","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"b1ad283755095a4b9d1431aeb357d7df1a33d3bb","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"0260916843cc74f3906acf8b6f256693e01530a2","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"19f88ca68ccf8771276a606765239b167654f84a","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"95deeb29d831e2fae608439e243e7a520611e7ea","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"d11d79e52ba080ee567cb7d7eb42a5ade60a8130","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"9cca0c2d70149160407bda9a9446ce0c29b6e6c6","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/ethernet/ec_bhf.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"3.15","status":"affected"},{"version":"0","status":"unaffected","lessThan":"3.15","versionType":"semver"},{"version":"4.4.274","status":"unaffected","lessThanOrEqual":"4.4.*","versionType":"semver"},{"version":"4.9.274","status":"unaffected","lessThanOrEqual":"4.9.*","versionType":"semver"},{"version":"4.14.238","status":"unaffected","lessThanOrEqual":"4.14.*","versionType":"semver"},{"version":"4.19.196","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.128","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.46","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.12.13","status":"unaffected","lessThanOrEqual":"5.12.*","versionType":"semver"},{"version":"5.13","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/ethernet/ec_bhf.c"]}],"references":["https://git.kernel.org/stable/c/db2bc3cfd2bc01621014d4f17cdfc74611f339c8","https://git.kernel.org/stable/c/1cafc540b7bf1b6a5a77dc000205fe337ef6eba6","https://git.kernel.org/stable/c/b1ad283755095a4b9d1431aeb357d7df1a33d3bb","https://git.kernel.org/stable/c/0260916843cc74f3906acf8b6f256693e01530a2","https://git.kernel.org/stable/c/19f88ca68ccf8771276a606765239b167654f84a","https://git.kernel.org/stable/c/95deeb29d831e2fae608439e243e7a520611e7ea","https://git.kernel.org/stable/c/d11d79e52ba080ee567cb7d7eb42a5ade60a8130","https://git.kernel.org/stable/c/9cca0c2d70149160407bda9a9446ce0c29b6e6c6"],"weaknesses":[],"ingestedAt":"2026-10-29T19:49:19.404Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2021/47xxx/CVE-2021-47235.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2021-47235","state":"PUBLISHED","datePublished":"2024-05-21T14:19:37.070Z","dateUpdated":"2026-05-11T13:50:34.524Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2024-04-10T18:59:19.531Z"},"containers":{"cna":{"title":"net: ethernet: fix potential use-after-free in ec_bhf_remove","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: ethernet: fix potential use-after-free in ec_bhf_remove\n\nstatic void ec_bhf_remove(struct pci_dev *dev)\n{\n...\n\tstruct ec_bhf_priv *priv = netdev_priv(net_dev);\n\n\tunregister_netdev(net_dev);\n\tfree_netdev(net_dev);\n\n\tpci_iounmap(dev, priv->dma_io);\n\tpci_iounmap(dev, priv->io);\n...\n}\n\npriv is netdev private data, but it is used\nafter free_netdev(). It can cause use-after-free when accessing priv\npointer. So, fix it by moving free_netdev() after pci_iounmap()\ncalls."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"db2bc3cfd2bc01621014d4f17cdfc74611f339c8","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"1cafc540b7bf1b6a5a77dc000205fe337ef6eba6","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"b1ad283755095a4b9d1431aeb357d7df1a33d3bb","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"0260916843cc74f3906acf8b6f256693e01530a2","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"19f88ca68ccf8771276a606765239b167654f84a","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"95deeb29d831e2fae608439e243e7a520611e7ea","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"d11d79e52ba080ee567cb7d7eb42a5ade60a8130","versionType":"git"},{"version":"6af55ff52b02d492d45db88df3e461fa51a6f753","status":"affected","lessThan":"9cca0c2d70149160407bda9a9446ce0c29b6e6c6","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/ethernet/ec_bhf.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"3.15","status":"affected"},{"version":"0","status":"unaffected","lessThan":"3.15","versionType":"semver"},{"version":"4.4.274","status":"unaffected","lessThanOrEqual":"4.4.*","versionType":"semver"},{"version":"4.9.274","status":"unaffected","lessThanOrEqual":"4.9.*","versionType":"semver"},{"version":"4.14.238","status":"unaffected","lessThanOrEqual":"4.14.*","versionType":"semver"},{"version":"4.19.196","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.128","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.46","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.12.13","status":"unaffected","lessThanOrEqual":"5.12.*","versionType":"semver"},{"version":"5.13","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/ethernet/ec_bhf.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/db2bc3cfd2bc01621014d4f17cdfc74611f339c8"},{"url":"https://git.kernel.org/stable/c/1cafc540b7bf1b6a5a77dc000205fe337ef6eba6"},{"url":"https://git.kernel.org/stable/c/b1ad283755095a4b9d1431aeb357d7df1a33d3bb"},{"url":"https://git.kernel.org/stable/c/0260916843cc74f3906acf8b6f256693e01530a2"},{"url":"https://git.kernel.org/stable/c/19f88ca68ccf8771276a606765239b167654f84a"},{"url":"https://git.kernel.org/stable/c/95deeb29d831e2fae608439e243e7a520611e7ea"},{"url":"https://git.kernel.org/stable/c/d11d79e52ba080ee567cb7d7eb42a5ade60a8130"},{"url":"https://git.kernel.org/stable/c/9cca0c2d70149160407bda9a9446ce0c29b6e6c6"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-05-11T13:50:34.524Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.15","versionEndExcluding":"4.4.274"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.15","versionEndExcluding":"4.9.274"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.15","versionEndExcluding":"4.14.238"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.15","versionEndExcluding":"4.19.196"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.15","versionEndExcluding":"5.4.128"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.15","versionEndExcluding":"5.10.46"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.15","versionEndExcluding":"5.12.13"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"3.15","versionEndExcluding":"5.13"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2024-06-17T17:38:04.934934Z","id":"CVE-2021-47235","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2024-06-17T17:40:03.824Z"}},{"title":"CVE Program Container","references":[{"url":"https://git.kernel.org/stable/c/db2bc3cfd2bc01621014d4f17cdfc74611f339c8","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/1cafc540b7bf1b6a5a77dc000205fe337ef6eba6","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/b1ad283755095a4b9d1431aeb357d7df1a33d3bb","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/0260916843cc74f3906acf8b6f256693e01530a2","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/19f88ca68ccf8771276a606765239b167654f84a","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/95deeb29d831e2fae608439e243e7a520611e7ea","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/d11d79e52ba080ee567cb7d7eb42a5ade60a8130","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/9cca0c2d70149160407bda9a9446ce0c29b6e6c6","tags":["x_transferred"]}],"providerMetadata":{"shortName":"CVE","orgId":"af854a3a-2127-422b-91ae-364da2661108","dateUpdated":"2024-08-04T05:32:07.501Z"}}]}}}