diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 34 |
1 files changed, 27 insertions, 7 deletions
@@ -1,18 +1,38 @@ centaur ======= -centaur is an ELF executable editing toolkit. +centaur is an ELF executable editing toolkit, focusing on code +injection and function detouring. -Features --------- +Example +------- -At the moment, centaur provides: - - Code injection from object files into executables - - Function detouring in executables +Injecting an object file into a program and detouring a function +could hardly be simpler: + + elfucli --input program \ + --reladd objfile.o \ + --detour oldfunc,newfunc \ + --output program_modified + +elfucli parses the command line parameters one by one like a script. + +In this example, it: + + 1. Loads the executable `program` containing the function `oldfunc`. + 2. Injects an object file containing the function `newfunc`. + 3. Overwrites the beginning of `oldfunc` with a jump to `newfunc`. + 4. Writes the modified program to `program_modified`. + +This functionality is exposed by the underlying `libelfu` via a C API, +at the same high level. `elfucli` serves as an example application for +it and doubles as a handy scalpel for ELF files. + +More examples can be found in the testsuite. Build instructions, Credits, License, ... ----------------------------------------- -See the docs/ directory for more documentation. +See the docs/ directory for all other documentation. |