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

Wip/dumb tracer #33

Merged
merged 36 commits into from
May 11, 2021
Merged

Wip/dumb tracer #33

merged 36 commits into from
May 11, 2021

Conversation

Kyle-Kyle
Copy link
Collaborator

many changes:

  1. generate ropchain in a generator manner instead of finding the "best" gadget. This allows us to handle cases where the "best" gadgets are conflict with each other and fail the longer chain generation. For example, memory setter relies on using register setters for several times. It's possible that the "best" register setters do not work. In those cases, finding the second best gadget may resolve the issue
  2. support JOP in primitive way
  3. clean up the code for a bit
  4. add timeout mechanisms in gadget analyzer to prevent hangs during gadget analysis.
  5. angrop does not handle conditional execution in arm properly, so we disable it at the moment.

Kyle-Kyle and others added 30 commits February 20, 2021 11:50
…se those addresses can be rebased to be good again
…tes filtering out all gadgets in a range with badbytes, e.g. the binary addresses containing NULL bytes
@rhelmot
Copy link
Member

rhelmot commented May 7, 2021

This is way too big to review... can you add one or more tests verifying the new functionality?

@Kyle-Kyle
Copy link
Collaborator Author

Sure

@Kyle-Kyle
Copy link
Collaborator Author

I just added some tests:

  1. make sure gadget with conditional execution is filtered out on arm because currently angrop does not model conditional execution well.
  2. make sure angrop can make use of gadgets ending with jmp
  3. make sure angrop supports mips

@rhelmot
Copy link
Member

rhelmot commented May 8, 2021

lgtm!

@salls
Copy link
Member

salls commented May 8, 2021

Changes seem good to me

@ltfish
Copy link
Member

ltfish commented May 9, 2021

LGTM. Thank you!

@rhelmot rhelmot merged commit e629274 into master May 11, 2021
@rhelmot rhelmot deleted the wip/dumb_tracer branch May 11, 2021 07:57
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.

5 participants