Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Install directory permissions broken on non-English Windows systems #39224

Closed
DvdGiessen opened this issue Jul 1, 2021 · 53 comments · Fixed by #39241
Closed

Install directory permissions broken on non-English Windows systems #39224

DvdGiessen opened this issue Jul 1, 2021 · 53 comments · Fixed by #39241
Labels
confirmed-bug Issues with confirmed bugs. install Issues and PRs related to the installers. windows Issues and PRs related to the Windows platform.

Comments

@DvdGiessen
Copy link

DvdGiessen commented Jul 1, 2021

  • Version: 16.4.1
  • Platform: Windows

What steps will reproduce the bug?

  • Install Node v16.4.1 on a non-English Windows system.

How often does it reproduce? Is there a required condition?

It always reproduces as far as I can tell.

What do you see?

afbeelding

Additional information

I presume this bug was introduced in e817ba7.

Core issue seems to be that Windows localizes names of built-in users and groups. On my non-English Windows system, there does not exist a group called "Authenticated Users". It exists using a localized name. Hence, the solution implemented in that commit will never work on non-English Windows systems.

Instead, we should probably use a SID to reference the correct group. See https://support.microsoft.com/kb/243330.

EDIT: Presumably also affects v14.17.2 and v12.22.2, as these seem to include this same change. Haven't checked.

EDIT2: To clarify; this completely breaks Node.js installs, make it unable to complete installation, and when upgrading will leave Node.js in a broken state.

@targos targos added install Issues and PRs related to the installers. windows Issues and PRs related to the Windows platform. labels Jul 1, 2021
@ghost
Copy link

ghost commented Jul 1, 2021

Similar. Cannot upgrade from 14.17.1 to 14.17.2

2021-07-01_202225

@gusbarzi
Copy link

gusbarzi commented Jul 1, 2021

I also have the same problem, could you help me

@Theraa0
Copy link

Theraa0 commented Jul 1, 2021

Also just encountered this issue. Neither the long term support, nor the latest version work and give the same error message as in the images shared by DvdGiessen and web2933.

@striezel
Copy link

striezel commented Jul 1, 2021

EDIT: Presumably also affects v14.17.2 and v12.22.2, as these seem to include this same change. Haven't checked.

For what it's worth: I encountered the same issue when trying to upgrade from 14.17.1 LTS to 14.17.2 LTS, x64 version of the installer. Operating system is Windows 10 Home Edition, version 20H2, 64 bit. Language is German.

Just making a guess here, but the problem may be related to commit d0b449d which includes a fix for "CVE-2021-22921: Windows installer - Node Installer Local Privilege Escalation (Medium)". At least that is the only change mentioned in the changelog for 14.17.2 and 16.4.1 that references installation on Windows systems.

@RamiroPastor
Copy link

Same problem here with both msi installers (32 and 64 bit) and Windows in spanish

@cecilemuller
Copy link

cecilemuller commented Jul 1, 2021

I can confirm it must be a recent change: 16.4.0 and older still work, only 16.4.1 produces this issue.

@ThadeuFerreira
Copy link

Is it possible to download the bug free version?

Or is there any workaround?

@Ayase-252
Copy link
Member

@ThadeuFerreira

How about using https://github.com/coreybutler/nvm-windows to install Node.js?

@Lem0nRavioli
Copy link

EDIT: Presumably also affects v14.17.2 and v12.22.2, as these seem to include this same change. Haven't checked.

Thinking about that, i could bypass this error by installing a previous release: https://nodejs.org/download/release/v14.17.1/

@cecilemuller
Copy link

@ThadeuFerreira
Is it possible to download the bug free version?

The old versions are still available, for example:
https://nodejs.org/dist/v16.4.0/node-v16.4.0-x64.msi

@RubenFilipe07
Copy link

I got the same problem when trying to install the x64 versions 4.17.2 LTS and 16.4.1 on Windows 10 Home Single Language (21H1) (Brazilian Portuguese). But I managed to install normally the 4.17.1 version that I downloaded at: https://nodejs.org/dist/v14.17.1/node-v14.17.1-x64.msi

@targos
Copy link
Member

targos commented Jul 2, 2021

/cc @kumarak @nodejs/platform-windows

And @nodejs/releasers because I think we'll want to publish a new release as soon as this is fixed.

@peterterbe
Copy link

A stupid workaround is to create a user called "Authenticated Users". The new user can be removed right after the setup. 🤦

This was referenced Jul 2, 2021
@Griha3212
Copy link

Installed 16.4.0 for now. Awaiting a fix.

@cyrelk
Copy link

cyrelk commented Jul 2, 2021

I confirm, both 14.17.2 and 16.4.1 are unable to install on a French windows 10 system due to the lack of an 'Authenticated Users' group.

@Ayase-252 Ayase-252 added the confirmed-bug Issues with confirmed bugs. label Jul 2, 2021
@szabb
Copy link

szabb commented Jul 2, 2021

I confirm, both 14.17.2 and 16.4.1 are unable to install on a French windows 10 system due to the lack of an 'Authenticated Users' group.

same with Hungarian windows

@Eduardo-Carregoza
Copy link

Hello, really the problem was solved when creating the user "Authenticated Users", however, in my case, I needed to install node via command line with chocolatey.

@inzanty
Copy link

inzanty commented Jul 2, 2021

Confirm too on Windows 7 (Russian Version).

@shal-ae
Copy link

shal-ae commented Jul 2, 2021

I've spent a day trying to install 14.17.2. I even reinstalled windows with no result. I think it is a bad idea to keep it updated

@BethGriggs
Copy link
Member

The problem does appear to have been introduced in e817ba7 (fix for CVE-2021-22921) on non-English Windows. There are a few folks investigating the issue. Once an amended patch is available we will issue a new release for each release line.

@BethGriggs BethGriggs pinned this issue Jul 2, 2021
@mathiasdg
Copy link

same problem here

@RaulSMelo
Copy link

Em sistemas Windows que não sejam em inglês, isso pode ser resolvido usando um único comando como Administrador. Processo completo abaixo:

  1. Inicie o cmd como Administrador
  2. Digite net localgroup /add "Authenticated Users"e pressione Enter
  3. Instale ou atualize o Node.js para a versão 14.17.2

No entanto, este é um bug: o instalador deve ser corrigido.

Muito obrigado !! Funcionou muito bem a instalação com essa linha de comando

@RaulSMelo
Copy link

Muito OBRIGADOOO !!! Excelente dica.

@alexthe2
Copy link

alexthe2 commented Jul 5, 2021

I had the same issue yesterday and "installed" it via binaries, added to path and run installer.bat

richardlau added a commit to richardlau/node-1 that referenced this issue Jul 5, 2021
Well known user account names are localized on Windows. Look up the
"Authenticated Users" user by its security identifier to get the
localized name.

PR-URL: nodejs#39241
Fixes: nodejs#39224
Refs: nodejs@e817ba7
Refs: https://hackerone.com/reports/1211160
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Beth Griggs <bgriggs@redhat.com>
richardlau added a commit that referenced this issue Jul 5, 2021
Well known user account names are localized on Windows. Look up the
"Authenticated Users" user by its security identifier to get the
localized name.

PR-URL: #39241
Fixes: #39224
Refs: e817ba7
Refs: https://hackerone.com/reports/1211160
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Beth Griggs <bgriggs@redhat.com>
BethGriggs pushed a commit that referenced this issue Jul 5, 2021
Well known user account names are localized on Windows. Look up the
"Authenticated Users" user by its security identifier to get the
localized name.

PR-URL: #39241
Fixes: #39224
Refs: e817ba7
Refs: https://hackerone.com/reports/1211160
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Beth Griggs <bgriggs@redhat.com>
@richardlau richardlau reopened this Jul 5, 2021
@revzo
Copy link

revzo commented Jul 5, 2021

Megerősítem, hogy a 14.17.2 és a 16.4.1 egyaránt nem tud telepíteni egy francia Windows 10 rendszerre a „Hitelesített felhasználók” csoport hiánya miatt.

ugyanez a magyar ablakokkal

Ne is mondd, kiégek....mire rájöttem mi a gond:D

@revzo
Copy link

revzo commented Jul 5, 2021

node-v16.4.0-x64 : working
node-v16.4.1-x64 : NOT working

@Shady-ops
Copy link

Run the command prompt as an administrator and ctrl+c/ctrl+v:
net localgroup /add "Authenticated Users"
Then click retry or run the installation file again

@Didier68
Copy link

Didier68 commented Jul 5, 2021

Same problem with 14.17.2 LTS !
Resolved by using a previous package from https://nodejs.org/dist/v14.17.0/

@st4rl0rd
Copy link

st4rl0rd commented Jul 5, 2021

https://exerror.com/an-error-occurred-while-applying-security-settings-authenticated-users-is-not-a-valid-user-or-group-in-nodejs-windows/

@Eliaxs1900
Copy link

Authenticated Users

Hello, really the problem was solved when creating the user "Authenticated Users", however, in my case, I needed to install node via command line with chocolatey.

You are right @Eduardo-Carregoza,
Now i have successfully installed Node 16.4.1
imagen

Thanks 👌🏽

@richardlau
Copy link
Member

👋 The release team are aiming to get releases out later today to fix the regression with the Windows installer. I suggest folks wait for those, rather than create dummy users.

@Trott
Copy link
Member

Trott commented Jul 5, 2021

Fixed releases for 12.x and 14.x are out. Waiting on 16.x but shouldn't be too long.

@ghost
Copy link

ghost commented Jul 5, 2021

https://nodejs.org/dist/v14.17.3/node-v14.17.3-x64.msi - successfully installed ✔

@BethGriggs
Copy link
Member

The regression was introduced in v12.22.2, v14.17.2, and v16.4.1.

The fix (#39241) has been released in v12.22.3, v14.17.3, and v16.4.2. If you hit this issue, the solution is to upgrade to one of these versions.

@Orgelnisten
Copy link

16.4.2 is now available, and works on non english systems!

ejose19 pushed a commit to ejose19/node that referenced this issue Jul 5, 2021
Well known user account names are localized on Windows. Look up the
"Authenticated Users" user by its security identifier to get the
localized name.

PR-URL: nodejs#39241
Fixes: nodejs#39224
Refs: nodejs@e817ba7
Refs: https://hackerone.com/reports/1211160
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Beth Griggs <bgriggs@redhat.com>
@Trott Trott unpinned this issue Jul 11, 2021
foxxyz pushed a commit to foxxyz/node that referenced this issue Oct 18, 2021
Well known user account names are localized on Windows. Look up the
"Authenticated Users" user by its security identifier to get the
localized name.

PR-URL: nodejs#39241
Fixes: nodejs#39224
Refs: nodejs@e817ba7
Refs: https://hackerone.com/reports/1211160
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Beth Griggs <bgriggs@redhat.com>
@kriskris79
Copy link

@ThadeuFerreira

How about using https://github.com/coreybutler/nvm-windows to install Node.js?

It works thanks Thadeu

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
confirmed-bug Issues with confirmed bugs. install Issues and PRs related to the installers. windows Issues and PRs related to the Windows platform.
Projects
None yet
Development

Successfully merging a pull request may close this issue.