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

Enforce minimum merges when using match merging. #2188

Merged
merged 5 commits into from
Feb 19, 2025

Conversation

tsaglam
Copy link
Member

@tsaglam tsaglam commented Feb 14, 2025

For pairs of unrelated programs, match merging may increase the similarity as it is a heuristic-based approach to revert the effects of obfuscation. To reduce this effect on false positives, this PR introduces a threshold for the minimum number of merges. Below this threshold, the merged matches are discarded, and the original matches are used. Resolves #2077.

This PR includes:

  • Implement minimal required merges
  • Adapt tests
  • Introduce CLI parameter
  • Add parameter export for report viewer
  • set fitting default value

…sing match merging. Below this threshold, merged matches are discarded.
@tsaglam tsaglam added enhancement Issue/PR that involves features, improvements and other changes minor Minor issue/feature/contribution/change labels Feb 14, 2025
@tsaglam tsaglam linked an issue Feb 14, 2025 that may be closed by this pull request
@tsaglam tsaglam requested review from a team and uuqjz February 17, 2025 10:09
@tsaglam tsaglam marked this pull request as ready for review February 17, 2025 10:09
@tsaglam tsaglam added this to the 6.0.0 milestone Feb 17, 2025
Copy link
Contributor

@uuqjz uuqjz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me

Copy link
Member

@Kr0nox Kr0nox left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will add the new option to the report viewer. Blocking because of that

@Kr0nox Kr0nox requested a review from TwoOfTwelve February 17, 2025 14:54
@tsaglam tsaglam changed the title Enforce mimum merges when using match merging. Enforce minimum merges when using match merging. Feb 19, 2025
Copy link

Copy link

@tsaglam
Copy link
Member Author

tsaglam commented Feb 19, 2025

Details from the default value tests:

Toggle me!

image

6 was chosen as a suitable default value.

@tsaglam tsaglam merged commit cd83953 into develop Feb 19, 2025
56 checks passed
@tsaglam tsaglam deleted the feature/match-merging-improvement branch February 19, 2025 13:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Issue/PR that involves features, improvements and other changes minor Minor issue/feature/contribution/change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Subsequence match merging: implement minimum number of merges
3 participants