Skip to content

Make EFI Resolver a native plugin #5855

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

Merged
merged 6 commits into from
May 9, 2025
Merged

Make EFI Resolver a native plugin #5855

merged 6 commits into from
May 9, 2025

Conversation

river-li
Copy link
Contributor

Also made some changes related to EFI

  1. Leveraged the typed register for defining PEI service pointers
  2. Fixed Missing Protocol Types efi-resolver#20 and Types are not propagated due to incorrect parameters efi-resolver#14
  3. Supported renaming SMI handlers Rename SMI Handlers efi-resolver#12

river-li and others added 6 commits May 8, 2025 07:23
UEFI PEI modules often use IDTR to fetch the pointer to the pointer to
EFI_PEI_SERVICES. We can leverage binja's global register type for this
Support all existing features in EFI Resolver,
1. Doesn't support running on existing BNDBs (though we tried to support
this in python plugins, it doesn't work well)
2. Perform analysis on MLIL rather than HLIL, previous pattern matching
on HLIL constains many false negatives
1. Fix code related to SMI handlers
2. also parse handlers registered by SxDispatch and parse them together
3. Set Progress Text properly
@zznop zznop force-pushed the test_native_efi_resolver branch from 0c4f237 to 5147249 Compare May 8, 2025 20:04
@zznop zznop merged commit 5147249 into dev May 9, 2025
5 checks passed
@zznop zznop deleted the test_native_efi_resolver branch May 12, 2025 17:42
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.

Missing Protocol Types
2 participants