Tags: lifting-bits/anvill
Tags
Migrate to new spec format (#328) * Add new spec proto * New type spec * Remove `anvill-specify-bitcode` * Begin parsing stuff, everything is still a mess * Fix `anvill-decompile` * Add constructors for type specs to fix `make_shared` calls * Get things compiling. Now just a linker error to resolve. * Get things linking * Remove JSON module * Fill in a few Protobuf translator methods * Parse values, global variables * Parse control flow overrides * Get default callable decl spec files working * Update to latest spec format * Update spec * Begin rewriting `FunctionLifter` * Fix spec * Restore call redirections * Lift tailcalls * Update spec * Add `return_stack_pointer` * Fix target address in calls * WIP: parse recursive types * Store aliased types into the type map * Check for UINT32_MAX sized unknown types * Don't let Misc overrides displace calls as was happening in challenge 7 * Check that we're not displacing control overrides * add function linkage field * update decl fields * add param splitting to have hacky support for structures for now * print error * revert splitting anvill side * remove compiler used (#331) * implement callsites in pb * dont delete decls too early * keep used in favor of rellic fix * add folding of constant loads * add option to keep anvill pc * Update Dockerfile to not use Binja * Fixed type spec tests for Ghidra * Remove tests referencing JSON things * Disable lifting-tools-ci for now * submodule fix attempt * Do not run angha tests that currently need binja * pass down ghidra install dir * reenable amp integration tests * install ghidra in CI * handle indirect jump to return overrides * add comment explaining that we should unify how we handle overrides * add deps for running CI integration tests * fix indentation error * double timeout for now * install rust * run noninteractive * fix command line arg * third times the charm * short arg * try to fix env * install rust with action * try apt * -y * add ssh client * use checkout for irene3 * fix paths * fix typo * add just to path * bash shell * install java CI * move ghidra install to correct place * switch to ghidra invocation of test challenge bins * Remove unused enum * update readme * remove binja install * change build for anvill decompile to decompile-spec * change decompile name * bump lifting-tools ci * remove stale reference to deb * update more decompile names * change cmd Co-authored-by: Alex Cameron <asc@tetsuo.sh> Co-authored-by: 2over12 <ian.smith@trailofbits.com> Co-authored-by: Artem Dinaburg <artem@trailofbits.com>
Remove DO jobs from CI in preparation for using GHA runners (#332)
Tracks Decoding Context for Instructions in Worklist (#311) * instruction lifting context * add back clear cache and store decoder separately * ignore return on secondary lift * fix long standing bug with conditional function calls * add helper for branching to inst * variable names * optionally allocate delayed insn * switch to optional * add headers for linux * bump binja * check versions? * point to binary * add more debug prints * more debug output * use headless version * add dep * Update Dockerfile to reflect new binja dependency * Fix libdbus dependency & api check Co-authored-by: Artem Dinaburg <artem@trailofbits.com>
Ian/entity use bug (#308) * add targeted decomp * fix long standing cross reference folder bug part 2... * fix CI for building remill' * Fix docker builds for now with old remill release * move git user preperation to where action is available * use path vars * wrap strings * try different var * a little copy and paste never hurt anybody * add sleigh dirs * fix typo
Handling of Named Type references (#99) * Handling of named references Fix the handling of type cache and read bytes from memory * review changes * Add vector type lifting * add remill compat header for vector type Co-authored-by: AkshayK <akshay.kumar@octolabs.io>
PreviousNext