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

[ros2launch] Follow symlinks when walking. #345

Open
wants to merge 1 commit into
base: rolling
Choose a base branch
from

Conversation

mikepurvis
Copy link
Contributor

@mikepurvis mikepurvis commented Jan 23, 2023

Fixes an issue with using ros2 launch inside symlink-joined workspaces, such as when constructing them using systems like Nix or Bazel. Really these loop should just be rewritten to use scandir instead (which follows symlinks as the default behaviour), but this is a simpler change in the immediate.

Similar change to ros/ros#225.

Credit for this find to @iwanders.

@mikepurvis mikepurvis changed the title Follow symlinks when walking. [ros2launch] Follow symlinks when walking. Jan 23, 2023
@clalancette
Copy link
Contributor

We discussed this, and we are a little concerned about the security implications of following symlinked directories. This would seem to open users up to symlink swapping attacks.

That said, we also see how this could be useful. So we think that we should leave the default to not follow symlinks, but add an option to ros2launch to allow following symlinks. Does that make sense?

@mikepurvis
Copy link
Contributor Author

Hmm. We disagree with the reasoning on this— what is the scenario where an adversary can change a symlink on you and you aren't already owned in a dozen other ways?

In any case, if it's at least a config option then we can more trivially patch our version to change the default.

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.

2 participants