adc / todoht Goto Github PK
View Code? Open in Web Editor NEWOld tools, brought back from the dead
Home Page: www.rpisec.net
Old tools, brought back from the dead
Home Page: www.rpisec.net
this is a reversing platform for bsd/linux x86 it takes inspiration from secdev's python ptrace tool and vtrace and PAIMEI libdasm + pydasm from nologin.org kicks ass MAJOR TODO: -> use secdevs ptrace interface, its much nicer (could simplify it though) TODO: merge x86 helper functions and target interface: status =almost complete halting problem Features: . hit trace debugging . more useful disassembly . major c++ features . vtti Dwarf OS X support Goals: -> be resilient to failure and true to execution. gdb, ltrace fail on stripped binaries, they depend on section headers + symbol information (which are independent of data+execution) most tools fail miserably with corrupted shdr information ... -> Allow for flexible, interactive annotations -> Allow active reversing from opcodez -> C Contributions Wanted: -> GUI ... annotations ... pretty graphs -> user config for colors -> scripting interface for annotating functions and code patterns (IL representation may be needed) ------------ Code guidelines target.py -> abstracted interface for dealing with binary formats and architectures elf.py -> everything ELF related platform specific ELF things go in here as well (and may be messy) keep code related stuff out of here, this is just for the file format x86.py -> lower level implementations for x86 :: finding functions :: making graphs :: disassembling :: resolving extended info (the format itself should do most of symbols) breakpoints.py -> abstracted interface for dealing with debugging information things to fully support on each architecture 1) Breakpoints hardware (debug registers) and software (int3s) single-stepping [if supported] 2) Reading/Writing to another processes' memory space 3) Hooks Support for hooking the entry and exit points of routines or specified memory addresses. platforms.py platform implementations of things -> breakpoints.py support -> ? trace.py -> use the above functionality to trace a process (and fuzz input / monitor code coverage/ or whatever the goal may be) main.py -> does some stuff ----------------------------------- A Target() should implement the following data .segments list of memory segments .mem sliceabley accessible memory (read-only for a file, rw for a running proc) .functions list of function code blocks .blocks XXX .imports XXX list of imported functions (from libraries, etc) .exports XXX list of exported functions .symbols XXX list of all symbols .format XX binary format of the target add_func(addr) has_func(addr) find_func(addr) find_functions() scan for all functions resolve_symbols() use resolver info/debugging data to find symbols disas(addr, sz=0) dump code starting at memory address until a reasonable end or specified end dump_symbols() XXX dump_code() display all code to stdout, make it pretty and useful if possible -=-=- Active targets mem[] array is writeable :: XXX todo TESTING TODO: DONE , seems to work FreeBSD attach() detach() start() end() cont() stop() read() write() getregs() setregs() getpc() setpc() get_events()
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.