Fix enum_user_directories Duplicate Directories #20903
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This first part of #enum_user_directories parses
/etc/passwdand adds for example/home/msfuserto theuser_dirsarray.The second part #enum_user_directories runs the
cmd_execcommand below and adds for example/home/msfuser\nto theuser_dirsarray. Every directory contains a new line at the end of the string except for the last entry, which is why we've added.chompso that the duplicate entries will now get removed by the.uniqcall at the end of the method.Verification
Test this in isolation or run a post module such as the new
ssh_keypersistence module which calls #enum_user_directories to see how it was evaluating some home directories twice before this fix. Note this wasn't causing issues but figured it should be corrected.