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

Use CLE from angr project to load dynamically linked executable #53

Merged
merged 2 commits into from
Mar 5, 2024

Conversation

erdnaxe
Copy link
Contributor

@erdnaxe erdnaxe commented Sep 27, 2023

This patch proposes to use CLE as a dynamic library loader.

This enables users to load dynamically linked executable. This greatly simplifies the simulation of programs linked with glibc as one would usually only need to hook calloc, malloc and free functions.

To make this patch fully usable, #51 is needed.

@yhql
Copy link
Collaborator

yhql commented Oct 24, 2023

Thank you very much, very useful.
Do you think cle could replace the other wonky loaders (ELF, PE, ... )? Would be a nice cleanup.

rainbow/loaders/cleloader.py Outdated Show resolved Hide resolved
@erdnaxe
Copy link
Contributor Author

erdnaxe commented Nov 28, 2023

Thank you very much, very useful. Do you think cle could replace the other wonky loaders (ELF, PE, ... )? Would be a nice cleanup.

  • For ELF loader, CLE seems to handle more cases than current elfloader.
  • Same for PE loader.
  • As far as I know, CLE does not handle a hex loader.

Would it be okay if I propose to drop peloader and elfloader in this pull request?

@yhql
Copy link
Collaborator

yhql commented Nov 28, 2023

Would it be okay if I propose to drop peloader and elfloader in this pull request?

Yes you can :)

@yhql yhql merged commit 6bd303e into Ledger-Donjon:master Mar 5, 2024
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