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

FIPS build instructions #2242

Closed
mhdawson opened this issue Jul 24, 2015 · 3 comments
Closed

FIPS build instructions #2242

mhdawson opened this issue Jul 24, 2015 · 3 comments
Labels
doc Issues and PRs related to the documentations. openssl Issues and PRs related to the OpenSSL dependency.

Comments

@mhdawson
Copy link
Member

I'll start out by apologizing that I did not have time to review/comment on this while the initial doc was being written in #1890 but I think we have a few issues:

  1. From my read of the openssl security policy (http://csrc.nist.gov/groups/STM/cmvp/documents/140-1/140sp/140sp1747.pdf)

My read is that in Appendix A, page 27 it states that unless you build in a specific way the following applies as written on page 28:

Note that failure to use one of the specified commands sets exactly as shown will result in a
module that cannot be considered compliant with FIPS 140-2.

Our current instructions here: https://github.com/nodejs/io.js describes building with a prefix which would not match the above instructions. The user guide here https://openssl.org/docs/fips/UserGuide-2.0.pdf specifically calls out that you cannot use a prefix (See section 5.7.1 on page 63)

I think we might be able to update the instructions to indicate to build as outlined in the security policy/user guide and then update the configure line (what is shown is where the make installed on ubuntu 12, we probably need something more generic or to just say to point it to where make install did the installation)

./configure --openssl-fips=/usr/local/ssl/fips-2.0

I have a compile going to see if things build/run ok with that.

  1. There is a requirement to get the source through a "trusted" path. See page 87 in https://openssl.org/docs/fips/UserGuide-2.0.pdf. What we currently describe in our readme is likely not sufficient to ensure that people understand that they have to verify with an already validated tool or get the source through a trusted path like email.

  2. There might be other gotchas in the security polity/user guide but I've not had time to do a full read yet. One I'm wondering about is 5.1 on page as I'm not sure if absolutely all of the crypto in Node comes from openssl or not.

If there is consensus that we need to adjust the doc I can put together a pull request

@Fishrock123 Fishrock123 added the crypto Issues and PRs related to the crypto subsystem. label Jul 24, 2015
@mscdex mscdex added openssl Issues and PRs related to the OpenSSL dependency. and removed crypto Issues and PRs related to the crypto subsystem. labels Jul 24, 2015
@Fishrock123 Fishrock123 added the doc Issues and PRs related to the documentations. label Jul 25, 2015
@bnoordhuis
Copy link
Member

/cc @nodejs/crypto and in particular @indutny

@indutny
Copy link
Member

indutny commented Jul 25, 2015

Sounds great! Thanks for bringing it up @mhdawson

mhdawson added a commit that referenced this issue Aug 19, 2015
Update the instructions to follow the requirements
in the security policy and user guide

PR-URL: #2278
Fixes: #2242
Reviewed-By: Fedor Indutny <[email protected]>
Reviewed-By: Rod Vagg <[email protected]>
@mhdawson
Copy link
Member Author

Resolved by d98eed5

Fishrock123 pushed a commit to Fishrock123/node that referenced this issue Aug 19, 2015
Update the instructions to follow the requirements
in the security policy and user guide

PR-URL: nodejs#2278
Fixes: nodejs#2242
Reviewed-By: Fedor Indutny <[email protected]>
Reviewed-By: Rod Vagg <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
doc Issues and PRs related to the documentations. openssl Issues and PRs related to the OpenSSL dependency.
Projects
None yet
Development

No branches or pull requests

5 participants