Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Create dfg from x86 binary #2

Closed
2 tasks done
sdasgup3 opened this issue Jul 22, 2019 · 1 comment
Closed
2 tasks done

Create dfg from x86 binary #2

sdasgup3 opened this issue Jul 22, 2019 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@sdasgup3
Copy link
Owner

sdasgup3 commented Jul 22, 2019

  • Build the pldi19-equivalence-checker
  • Write the reaching definition analysis
@sdasgup3 sdasgup3 self-assigned this Jul 22, 2019
@sdasgup3 sdasgup3 added the enhancement New feature or request label Jul 22, 2019
@sdasgup3
Copy link
Owner Author

Options

  1. Creating a parser for the binary code (using IDA) + decode the instruction (using mcsema's port of XED).
    This will not work for binaries parsed and decoded with other tools like different disassembler than IDA and decoder.

  2. Parse the binary using K semantics and build the dfg on top of KAST.
    Pros: We can have both the dfgs for llvm and x86 build on top of KAST.
    Cons: Working on KAST might not be easy.

  3. Write a K module which parses the assembly code and writes rules to create a dfg. At the end dump the dfg in some structured format.

sdasgup3 added a commit that referenced this issue Jul 26, 2019
sdasgup3 added a commit to allvm/pldi19-equivalence-checker that referenced this issue Jul 27, 2019
sdasgup3 added a commit to allvm/pldi19-equivalence-checker that referenced this issue Jul 27, 2019
sdasgup3 added a commit to allvm/pldi19-equivalence-checker that referenced this issue Jul 30, 2019
sdasgup3 added a commit to allvm/pldi19-equivalence-checker that referenced this issue Jul 31, 2019
…n gives us information about all the definitions reaching a program point. But for data-flow-graph we need which of those reaching defintions are actually used at that program point.
sdasgup3 added a commit to allvm/pldi19-equivalence-checker that referenced this issue Aug 1, 2019
sdasgup3 added a commit to allvm/pldi19-equivalence-checker that referenced this issue Aug 6, 2019
sdasgup3 added a commit that referenced this issue Aug 7, 2019
sdasgup3 added a commit that referenced this issue Aug 7, 2019
sdasgup3 added a commit to allvm/pldi19-equivalence-checker that referenced this issue Aug 10, 2019
sdasgup3 added a commit that referenced this issue Aug 10, 2019
@sdasgup3 sdasgup3 closed this as completed Oct 8, 2019
sdasgup3 added a commit that referenced this issue Oct 20, 2019
sdasgup3 added a commit that referenced this issue Oct 20, 2019
sdasgup3 added a commit that referenced this issue Oct 20, 2019
sdasgup3 added a commit that referenced this issue Oct 20, 2019
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant