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

Additional analyses #796

Open
2 of 3 tasks
woodruffw opened this issue Jan 9, 2021 · 1 comment
Open
2 of 3 tasks

Additional analyses #796

woodruffw opened this issue Jan 9, 2021 · 1 comment
Labels
C:analysis Tasks related to mishegos's analysis passes enhancement New feature or request

Comments

@woodruffw
Copy link
Member

woodruffw commented Jan 9, 2021

The following analyses are needed:

  • size-discrepancies: Find all cohorts where all decoders succeed, but one or more disagree on the decoded instruction's size
  • destroy-xed: Try to find errors in XED by pressuring it against Zydis, bddisasm, and iced
  • single-status-discrepancy: Exactly one decoder disagrees with all of the others on the instruction's validity (treating everything that isn't S_SUCCESS as a failure)
@woodruffw woodruffw added enhancement New feature or request C:analysis Tasks related to mishegos's analysis passes labels Jan 9, 2021
@woodruffw
Copy link
Member Author

woodruffw commented Jan 10, 2021

The individual size-discrepancies passes should probably look like this:

  • filter-all-failure: remove all cohorts in which every decoder failed (already implemented)
  • dedupe: remove any duplicate inputs (analysis: add a dedupe pass #797)
  • filter-ndecoded-same: remove all cohorts in which every succeeding decoder consumed the same number of input bytes
    • This is currently implemented as filter-ndecoded, and should be renamed + tweaked
  • minimize-input: reduce each cohort's input instruction to the smallest length accepted by all decoders (already implemented)
  • normalize: perform some basic normalization of each decoder's output string (already implemented)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C:analysis Tasks related to mishegos's analysis passes enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant