Skip to content

Fixed SIB.base handling when ASIZE == 32 (Fixes #592)#593

Merged
mappzor merged 1 commit intomasterfrom
fix_sib_base
Nov 20, 2025
Merged

Fixed SIB.base handling when ASIZE == 32 (Fixes #592)#593
mappzor merged 1 commit intomasterfrom
fix_sib_base

Conversation

@mappzor
Copy link
Contributor

@mappzor mappzor commented Nov 19, 2025

Fixes #592

Copy link
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. Interesting that this hasn't popped up earlier.

@mappzor mappzor merged commit cfd721b into master Nov 20, 2025
24 checks passed
@mappzor mappzor deleted the fix_sib_base branch November 20, 2025 07:11
@mappzor
Copy link
Contributor Author

mappzor commented Nov 20, 2025

Yeah but on the other hand it was pretty well hidden. It required malicious input ticking several boxes:

  • address size override (rarely seen in x64 code)
  • REX.B set (ignored bits should be set to logical 0, hence malicious input is required)
  • SIB.base == 13/29

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.

Incorrect decoding of memory operand with address size override and REX.B = 1

2 participants