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

win,msi: link node.exe to iojs.exe #346

Merged
merged 1 commit into from
Jan 14, 2015

Conversation

piscisaureus
Copy link
Contributor

Add a feature to the MSI installer that, when selected, hard-links
node.exe to iojs.exe.

R=@rvagg

@indutny
Copy link
Member

indutny commented Jan 14, 2015

Yes, please!

@rvagg
Copy link
Member

rvagg commented Jan 14, 2015

pretty funny that you have to use iojs.exe to make the link ...

LGTM! YAY!

@indutny
Copy link
Member

indutny commented Jan 14, 2015

Shall we land it?

Add a feature to the MSI installer that, when selected, hard-links
node.exe to iojs.exe.

PR: nodejs#346
Reviewed-by: Fedor Indutny <[email protected]>
Reviewed-by: Rod Vagg <[email protected]>
@piscisaureus piscisaureus merged commit 42c31f4 into nodejs:v1.x Jan 14, 2015
@piscisaureus piscisaureus deleted the node-alias branch January 14, 2015 01:17
RafaelGSS pushed a commit that referenced this pull request Sep 23, 2022
Commit dae283d from August 2020 introduced a call to EntropySource()
in SecretKeyGenTraits::DoKeyGen() in src/crypto/crypto_keygen.cc. There
are two problems with that:

1. It does not check the return value, it assumes EntropySource() always
   succeeds, but it can (and sometimes will) fail.

2. The random data returned byEntropySource() may not be
   cryptographically strong and therefore not suitable as keying
   material.

An example is a freshly booted system or a system without /dev/random or
getrandom(2).

EntropySource() calls out to openssl's RAND_poll() and RAND_bytes() in a
best-effort attempt to obtain random data. OpenSSL has a built-in CSPRNG
but that can fail to initialize, in which case it's possible either:

1. No random data gets written to the output buffer, i.e., the output is
   unmodified, or

2. Weak random data is written. It's theoretically possible for the
   output to be fully predictable because the CSPRNG starts from a
   predictable state.

Replace EntropySource() and CheckEntropy() with new function CSPRNG()
that enforces checking of the return value. Abort on startup when the
entropy pool fails to initialize because that makes it too easy to
compromise the security of the process.

Refs: https://hackerone.com/bugs?report_id=1690000
Refs: #35093

Reviewed-By: Rafael Gonzaga <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
PR-URL: #346
Backport-PR-URL: #351
CVE-ID: CVE-2022-35255
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants