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.
Hi! Whenever importing a profile from a code or a file, r2modman would arbitrarily extract all files without checking the type. This allows the user to add DLL files to the modpack that aren't included on the mod list, allowing a malicious party to add malware that is automatically loaded by BepInEx and run in the game without appearing on the modlist of the pack. This change ignores DLL files when extracting, not allowing them to be extracted to the user's installation directory.
Suggested remediation in the future would be to add more security onto the profile code APIs, as any user can upload any data permanently and receive a profile code that can be used to download their arbitrary content from your servers. This can be used in many malicious ways, for example allowing a hacker to shift blame to you for holding exploit code on your local servers.