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

discussion: Use capstone for disasm() #2461

Open
tesuji opened this issue Sep 15, 2024 · 1 comment
Open

discussion: Use capstone for disasm() #2461

tesuji opened this issue Sep 15, 2024 · 1 comment
Labels

Comments

@tesuji
Copy link
Contributor

tesuji commented Sep 15, 2024

  • What the feature does
    cc Capstone/Keystone vs. Binutils #683 but for the disasm part only.
    If I understand correctly, one cencern raised in Capstone/Keystone vs. Binutils #683 is that the shellcraft module
    depends heavily on binutils. But I don't see this concern holds on disassembly part.
  • Why the feature should exist
    disasm in case cross-binutils toolchain not installed.
  • What tests should be included
    <I don't think I know this>
@tesuji tesuji added the feature label Sep 15, 2024
@tesuji tesuji changed the title Use capstone for disasm() discussion: Use capstone for disasm() Sep 15, 2024
@peace-maker
Copy link
Member

Sorry for the delay! I think supporting capstone as a fallback when the required binutils aren't available for disassembly is useful. Maybe even make it configurable on the context to force the use capstone.

I haven't used keystone a lot, so I don't know how much work it would be to get our shellcraft corpus to assemble. Does anyone have input there? What are the differences?

We can add support in small steps and think about ELF creation when we get to the point of only requiring binutils for that feature.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants