-
Notifications
You must be signed in to change notification settings - Fork 770
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
Question: does Fast-RTPS support OpenSSL 1.1.1d ? [8117] #1087
Comments
We are trying to work this out but we are not yet able to reproduce the issue: In an ubuntu disco:
We have replaced the OpenSSL distro version:
with the OpenSSL 1.1.1d (https://github.com/openssl/openssl/archive/OpenSSL_1_1_1d.tar.gz). We rebuild Fast-RTPS assuring CMake finds the new OpenSSL version by hinting him ( We are now going to try to reproduce the ros2/sros2#180 scenario on a Ubuntu Focal docker. We'll keep you update asap. |
Thank you @MiguelBarro! I look forward to hearing more. |
That's promising ! Looking forward to hearing your results with a Focal based system |
A little update on the current status of our works. We have generated several dockerfiles in order to account for platform, OpenSSL source (direct build from 1.1.1d or The dockerfiles:
will build the image and run the security tests.
We can summarize the results as:
These results are puzzling, basically OpenSSL 1.1.1d:
Right now we are managing several hypothesis and debugging on focal is in progress... Feel free to comment 😃. Hope we can update you soon. |
So it appears that the libssl in Focal is, to quote the Ubuntu security team, "almost 1.1.1e." You might try with that as far as the from-source experiments are concerned, should be a closer match. |
Great minds :) I was thinking the same thing so I launched a job based on ros2/ci#421 to see if fastrtps was passing wth it. It's still queued so we don't know yet. However I tested a Dockerfile with openssl 1.1.1e from source and it fails in a similar way at with openssl from the Focal repos. |
Now that's what I like to hear! Well... kinda. You know what I mean. |
also OpenSSL 1.1.1f has been released a couple days ago and is already the one shipped Windows and homebrew, so we'll need to make sure to test against that one too |
Your insight serves you well...
OpenSSL 1.1.1e mimics libssl-dev behaviour 👍. |
eProsima/Fast-DDS#1087 is the issue that needs to be resolved. Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
@MiguelBarro Any news on this? Security is going to be completely broken on ROS 2 Foxy unless this gets fixed in Fast-RTPS. |
eProsima/Fast-DDS#1087 is the issue that needs to be resolved. Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
eProsima/Fast-DDS#1087 is the issue that needs to be resolved. Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
When there's a PR resolving this issue if someone would be kind enough to ping the thread here ros2/system_tests#415 we'll be able to run the ROS 2 security tests over it. Thanks! |
We (@MiguelBarro and myself) have been looking into this. As the problems seem to be on the key agreement, and we are defaulting the algorithm to DH+MODP-2048-256, I thought of a possible workaround for the issue, which is to use the other possible algorithm stated on the DDS-SEC 1.1 standard (i.e. ECDH+prime256v1-CEUM) The proposed changes are on 23e40d3 On my VirtualBox with Focal, I did see an improvement on SecureHelloWorldExample. No error logs are generated, but Publisher and Subscriber do not match. Wireshark inspection shows that the PKI phase completes, and a lot of SRTPS messages are exchanged, but it seems that the key exchange phase is not working correctly. @MiguelBarro will check my changes tomorrow on his dockers, but it would be great if someone could also test with my changes. I don't rely much on my Virtual Box. |
I merged https://github.com/eProsima/Fast-RTPS/compare/bugfix/pki-selection/1.10.x at 340bdf42f3bc1051d3a1c6a3ebb31e68abf548ca into 1.10.x locally. I think I'm reproducing @MiguelCompany's scenario but I am out of time to wire up packet captures. Running the security tests last week I was seen log messages about being unable to create secure participants. Today I see the following:
Let me know if there's anything else I can extract and I'll try again tomorrow. |
@mikaelarguedas @nuclearsandwich Could you please check with PR #1163, which should fix this on branch 1.10.x? |
#1163 has been merged on 1.10.x, and the same changes have been applied on master. @mikaelarguedas Close this when you think everything is fixed |
It seems to fail the ROS tests on MacOS.
|
Closing as related ROS2 tests are now reenabled and passing, thanks @MiguelBarro @MiguelCompany @richiware for the fixes! |
Trying to run the ros2 security example on Ubuntu Focal (OpenSSL 1.1.1d) fails with Fast-RTPS (branch 1.9.x): more details at ros2/sros2#180
Running the provided
SecureHelloWorld
example also fails with:Does Fast-RTPS support OpenSSL 1.1.1d? and if yes could you point at a set of certificates that workwith that version? thanks!
The text was updated successfully, but these errors were encountered: