Skip to content

Fuzzing improvements and bugfixes#466

Merged
athre0z merged 3 commits intozyantific:masterfrom
mappzor:absolute_fixes
Dec 9, 2023
Merged

Fuzzing improvements and bugfixes#466
athre0z merged 3 commits intozyantific:masterfrom
mappzor:absolute_fixes

Conversation

@mappzor
Copy link
Copy Markdown
Contributor

@mappzor mappzor commented Dec 9, 2023

I'm putting 3 changes in this PR because fuzzers naturally depend on bugfixes and those are one-liners anyway. Having separate pull requests would be an overkill and they would have to be merged in a specific order. I've kept one change per commit for clarity.

Changes:

  • Fuzzing ZydisEncoderEncodeInstructionAbsolute - primary goal of this PR, doesn't need much explanation. Although ZydisTestEncoderAbsolute aims to cover every case some stuff went unnoticed like Encoder generates wrong relative offset with bnd prefix #463. Fuzzing is a valuable 2nd layer of testing here.
  • 3DNow! handling - first and hopefully the last issue found by new fuzzing logic. 3DNow! instructions have extra opcode byte at the end and that confused logic inside ZydisEncoderEncodeInstructionAbsolute.
  • Enable IPREFETCH mode by default - we had it documented as enabled by default while it wasn't

Copy link
Copy Markdown
Member

@flobernd flobernd left a comment

Choose a reason for hiding this comment

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

LGTM! Thank you!

Copy link
Copy Markdown
Member

@athre0z athre0z left a comment

Choose a reason for hiding this comment

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

LGTM as well!

@athre0z athre0z merged commit 04c6c1b into zyantific:master Dec 9, 2023
@mappzor mappzor deleted the absolute_fixes branch December 9, 2023 16:16
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.

3 participants