Node.js 20 and 1 other: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
CVE-2024-21891 is fixed in 20 products on 2 platforms, first by Node.js 20 20.11.1, released February 13, 2024. It is not reported as exploited. Patch Radar priority: High.
Node.js depends on multiple built-in utility functions to normalize paths provided to node:fs functions, which can be overwitten with user-defined implementations leading to filesystem permission model bypass through path traversal attack. This vulnerability affects all users using the experimental permission model in Node.js 20 and Node.js 21. Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.
Where it's fixed
| Product | Fixed in | Fix | Released |
|---|---|---|---|
| Windows apps | |||
| Node.js 20 | 20.11.1 | Node.js 20 20.11.1 | Feb 13, 2024 |
| Node.js 21 | 21.6.2 | Node.js 21 21.6.2 | Feb 13, 2024 |
| Linux | |||
| nodejs · RHEL 8 | 1:20.11.1-1.module+el8.9.0+21380+12032667 | RHSA-2024:1687 | Apr 8, 2024 |
| nodejs · RHEL 9 | 1:20.11.1-1.module+el9.3.0+21385+bac43d5a | RHSA-2024:1688 | Apr 8, 2024 |
| nodejs · almalinux 8 | 1:20.11.1-1.module_el8.9.0+3775+d8460d35 | ALSA-2024:1687 | Apr 8, 2024 |
| nodejs · almalinux 9 | 1:20.11.1-1.module_el9.3.0+88+29afeaa2 | ALSA-2024:1688 | Apr 8, 2024 |
| nodejs · ol 8 | 1:20.11.1-1.module+el8.9.0+90250+089ba5e1 | ELSA-2024-1687 | Apr 8, 2024 |
| nodejs · ol 9 | 1:20.11.1-1.module+el9.3.0+90254+3f4d3ee1 | ELSA-2024-1688 | Apr 8, 2024 |
| nodejs · rocky 8 | 1:20.11.1-1.module+el8.9.0+1776+addd4aec | RLSA-2024:1687 | May 6, 2024 |
| nodejs-devel · RHEL 8 | 1:20.11.1-1.module+el8.9.0+21380+12032667 | RHSA-2024:1687 | Apr 8, 2024 |
| nodejs-devel · RHEL 9 | 1:20.11.1-1.module+el9.3.0+21385+bac43d5a | RHSA-2024:1688 | Apr 8, 2024 |
| nodejs-devel · almalinux 8 | 1:20.11.1-1.module_el8.9.0+3775+d8460d35 | ALSA-2024:1687 | Apr 8, 2024 |
| nodejs-devel · almalinux 9 | 1:20.11.1-1.module_el9.3.0+88+29afeaa2 | ALSA-2024:1688 | Apr 8, 2024 |
| nodejs-devel · ol 8 | 1:20.11.1-1.module+el8.9.0+90250+089ba5e1 | ELSA-2024-1687 | Apr 8, 2024 |
| nodejs-devel · ol 9 | 1:20.11.1-1.module+el9.3.0+90254+3f4d3ee1 | ELSA-2024-1688 | Apr 8, 2024 |
| nodejs-docs · RHEL 8 | 1:20.11.1-1.module+el8.9.0+21380+12032667 | RHSA-2024:1687 | Apr 8, 2024 |
| nodejs-docs · RHEL 9 | 1:20.11.1-1.module+el9.3.0+21385+bac43d5a | RHSA-2024:1688 | Apr 8, 2024 |
| nodejs-docs · almalinux 8 | 1:20.11.1-1.module_el8.9.0+3775+d8460d35 | ALSA-2024:1687 | Apr 8, 2024 |
| nodejs-docs · almalinux 9 | 1:20.11.1-1.module_el9.3.0+88+29afeaa2 | ALSA-2024:1688 | Apr 8, 2024 |
| nodejs-docs · ol 8 | 1:20.11.1-1.module+el8.9.0+90250+089ba5e1 | ELSA-2024-1687 | Apr 8, 2024 |
| nodejs-docs · ol 9 | 1:20.11.1-1.module+el9.3.0+90254+3f4d3ee1 | ELSA-2024-1688 | Apr 8, 2024 |
| nodejs-full-i18n · RHEL 8 | 1:20.11.1-1.module+el8.9.0+21380+12032667 | RHSA-2024:1687 | Apr 8, 2024 |
| nodejs-full-i18n · RHEL 9 | 1:20.11.1-1.module+el9.3.0+21385+bac43d5a | RHSA-2024:1688 | Apr 8, 2024 |
| nodejs-full-i18n · almalinux 8 | 1:20.11.1-1.module_el8.9.0+3775+d8460d35 | ALSA-2024:1687 | Apr 8, 2024 |
| nodejs-full-i18n · almalinux 9 | 1:20.11.1-1.module_el9.3.0+88+29afeaa2 | ALSA-2024:1688 | Apr 8, 2024 |
| nodejs-full-i18n · ol 8 | 1:20.11.1-1.module+el8.9.0+90250+089ba5e1 | ELSA-2024-1687 | Apr 8, 2024 |
| nodejs-full-i18n · ol 9 | 1:20.11.1-1.module+el9.3.0+90254+3f4d3ee1 | ELSA-2024-1688 | Apr 8, 2024 |
| nodejs-nodemon · RHEL 8 | 0:3.0.1-1.module+el8.9.0+20473+c4e3d824 | RHSA-2024:1687 | Apr 8, 2024 |
| nodejs-nodemon · RHEL 9 | 0:3.0.1-1.module+el9.3.0.z+20478+84a9f781 | RHSA-2024:1688 | Apr 8, 2024 |
| nodejs-nodemon · almalinux 8 | 3.0.1-1.module_el8.9.0+3731+490e3ce5 | ALSA-2024:1687 | Apr 8, 2024 |
| nodejs-nodemon · almalinux 9 | 3.0.1-1.module_el9.3.0+47+c33bc288 | ALSA-2024:1688 | Apr 8, 2024 |
| nodejs-nodemon · ol 8 | 0:3.0.1-1.module+el8.9.0+90082+b6a613a6 | ELSA-2024-1687 | Apr 8, 2024 |
| nodejs-nodemon · ol 9 | 0:3.0.1-1.module+el9.3.0+90066+12d4a8d7 | ELSA-2024-1688 | Apr 8, 2024 |
| nodejs-nodemon · rocky 8 | 0:3.0.1-1.module+el8.8.0+1459+02651ab6 | RLSA-2024:1687 | May 6, 2024 |
| nodejs-nodemon · rocky 9 | 0:3.0.1-1.module+el9.6.0+32322+a8b1fd01 | RLSA-2024:1688 | May 6, 2024 |
| nodejs-packaging · RHEL 8 | 0:2021.06-4.module+el8.9.0+19519+e25b965a | RHSA-2024:1687 | Apr 8, 2024 |
| nodejs-packaging · RHEL 9 | 0:2021.06-4.module+el9.3.0+19518+63aad52d | RHSA-2024:1688 | Apr 8, 2024 |
| nodejs-packaging · almalinux 8 | 2021.06-4.module_el8.9.0+3684+11b9e959 | ALSA-2024:1687 | Apr 8, 2024 |
| nodejs-packaging · almalinux 9 | 2021.06-4.module_el9.3.0+48+1cf146a1 | ALSA-2024:1688 | Apr 8, 2024 |
| nodejs-packaging · ol 8 | 0:2021.06-4.module+el8.9.0+90082+b6a613a6 | ELSA-2024-1687 | Apr 8, 2024 |
| nodejs-packaging · ol 9 | 0:2021.06-4.module+el9.3.0+90066+12d4a8d7 | ELSA-2024-1688 | Apr 8, 2024 |
| nodejs-packaging · rocky 8 | 0:2021.06-4.module+el8.7.0+1072+5b168780 | RLSA-2024:1687 | May 6, 2024 |
| nodejs-packaging · rocky 9 | 0:2021.06-4.module+el9.5.0+31770+0da7192d | RLSA-2024:1688 | May 6, 2024 |
| nodejs-packaging-bundler · RHEL 8 | 0:2021.06-4.module+el8.9.0+19519+e25b965a | RHSA-2024:1687 | Apr 8, 2024 |
| nodejs-packaging-bundler · RHEL 9 | 0:2021.06-4.module+el9.3.0+19518+63aad52d | RHSA-2024:1688 | Apr 8, 2024 |
| nodejs-packaging-bundler · almalinux 8 | 2021.06-4.module_el8.9.0+3684+11b9e959 | ALSA-2024:1687 | Apr 8, 2024 |
| nodejs-packaging-bundler · almalinux 9 | 2021.06-4.module_el9.3.0+48+1cf146a1 | ALSA-2024:1688 | Apr 8, 2024 |
| nodejs-packaging-bundler · ol 8 | 0:2021.06-4.module+el8.9.0+90082+b6a613a6 | ELSA-2024-1687 | Apr 8, 2024 |
| nodejs-packaging-bundler · ol 9 | 0:2021.06-4.module+el9.3.0+90066+12d4a8d7 | ELSA-2024-1688 | Apr 8, 2024 |
| nodejs20 · amzn 2023 | 1:20.11.1-1.amzn2023.0.1 | ALAS2023-2024-544 | Feb 29, 2024 |
| nodejs20-debuginfo · amzn 2023 | 1:20.11.1-1.amzn2023.0.1 | ALAS2023-2024-544 | Feb 29, 2024 |
| nodejs20-debugsource · amzn 2023 | 1:20.11.1-1.amzn2023.0.1 | ALAS2023-2024-544 | Feb 29, 2024 |
| nodejs20-devel · amzn 2023 | 1:20.11.1-1.amzn2023.0.1 | ALAS2023-2024-544 | Feb 29, 2024 |
| nodejs20-docs · amzn 2023 | 1:20.11.1-1.amzn2023.0.1 | ALAS2023-2024-544 | Feb 29, 2024 |
| nodejs20-full-i18n · amzn 2023 | 1:20.11.1-1.amzn2023.0.1 | ALAS2023-2024-544 | Feb 29, 2024 |
| nodejs20-libs · amzn 2023 | 1:20.11.1-1.amzn2023.0.1 | ALAS2023-2024-544 | Feb 29, 2024 |
| nodejs20-libs-debuginfo · amzn 2023 | 1:20.11.1-1.amzn2023.0.1 | ALAS2023-2024-544 | Feb 29, 2024 |
| nodejs20-npm · amzn 2023 | 1:10.2.4-1.20.11.1.1.amzn2023.0.1 | ALAS2023-2024-544 | Feb 29, 2024 |
| npm · RHEL 8 | 1:10.2.4-1.20.11.1.1.module+el8.9.0+21380+12032667 | RHSA-2024:1687 | Apr 8, 2024 |
| npm · RHEL 9 | 1:10.2.4-1.20.11.1.1.module+el9.3.0+21385+bac43d5a | RHSA-2024:1688 | Apr 8, 2024 |
| npm · almalinux 8 | 1:10.2.4-1.20.11.1.1.module_el8.9.0+3775+d8460d35 | ALSA-2024:1687 | Apr 8, 2024 |
| npm · almalinux 9 | 1:10.2.4-1.20.11.1.1.module_el9.3.0+88+29afeaa2 | ALSA-2024:1688 | Apr 8, 2024 |
| npm · ol 8 | 1:10.2.4-1.20.11.1.1.module+el8.9.0+90250+089ba5e1 | ELSA-2024-1687 | Apr 8, 2024 |
| npm · ol 9 | 1:10.2.4-1.20.11.1.1.module+el9.3.0+90254+3f4d3ee1 | ELSA-2024-1688 | Apr 8, 2024 |
| v8-11.3-devel · amzn 2023 | 3:11.3.244.8-1.20.11.1.1.amzn2023.0.1 | ALAS2023-2024-544 | Feb 29, 2024 |
Patch Radar data is free to use with attribution. Terms and how to credit it.
Product names, logos and trademarks shown on Patch Radar belong to their respective owners. They are used only to identify the software each security fix applies to and to help readers find their platform. Their use does not imply any affiliation with, or endorsement by, those owners, and Patchblox is not affiliated with any of them.