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

Draft: add support for unicorn engine #1

Closed
wants to merge 27 commits into from
Closed

Conversation

henri2h
Copy link
Owner

@henri2h henri2h commented Dec 15, 2022

Add support for unicorn engine for CPU emulation

Currently support

  • X86
  • ARM
  • ARM64

@henri2h henri2h changed the title Henri2h/libafl unicorn Draft: add support for unicorn engine Jan 8, 2023
@henri2h henri2h force-pushed the henri2h/libafl_unicorn branch from 92b81b7 to 5947e22 Compare January 9, 2023 20:46
@henri2h
Copy link
Owner Author

henri2h commented Jan 19, 2023

Okay, now the fuzzing on unicorn works on this specific harnessed function

pub fn prog(emu: &mut unicorn_engine::Unicorn<'static, ()>, arm_code_len: u64) {
let result = emu.emu_start(
match emu.get_arch() {
Arch::ARM64 => CODE_ADDRESS + 0x40, // Position of main: 0x40 TODO: see if possible to get the main position from header file. Seems weird doing so
Copy link
Owner Author

@henri2h henri2h Feb 5, 2023

Choose a reason for hiding this comment

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

TODO: delete this override
This was added as in the text program the section 0x0 - 0x3F contains invalid code

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.

2 participants