update readme and add endbr32
This commit is contained in:
parent
261961999c
commit
ae99c186e4
3 changed files with 17 additions and 2 deletions
12
README.md
12
README.md
|
|
@ -3,3 +3,15 @@
|
||||||
Software to inject .so libraries into running process
|
Software to inject .so libraries into running process
|
||||||
|
|
||||||
For Linux and FreeBSD
|
For Linux and FreeBSD
|
||||||
|
|
||||||
|
## Compnents
|
||||||
|
|
||||||
|
blackjack consists of multiple components that are responsible for different tasks.
|
||||||
|
|
||||||
|
### blackjack
|
||||||
|
|
||||||
|
Hijacks runtime process in order to inject shared objects.
|
||||||
|
|
||||||
|
### rtdisasm
|
||||||
|
|
||||||
|
KISS robust runtime "disassembler". Used to analyze instructions encoded sizes and find desired instructions for trampolines. No need to bloat it with full-blown disassembler logic like other projects do - one big lookup table is enough for such purposes.
|
||||||
|
|
|
||||||
4
genc.py
4
genc.py
|
|
@ -30,7 +30,8 @@ class Instruction:
|
||||||
"CD ib" : 5,
|
"CD ib" : 5,
|
||||||
"0F 34" : 6,
|
"0F 34" : 6,
|
||||||
"0F 05" : 7,
|
"0F 05" : 7,
|
||||||
"F3 0F 1E FA" : 8
|
"F3 0F 1E FB" : 8,
|
||||||
|
"F3 0F 1E FA" : 9
|
||||||
}
|
}
|
||||||
|
|
||||||
def __init__(self, ins):
|
def __init__(self, ins):
|
||||||
|
|
@ -349,6 +350,7 @@ if __name__ == "__main__":
|
||||||
|
|
||||||
# add custom instructions
|
# add custom instructions
|
||||||
groups.append(CustomInstructionGroup([
|
groups.append(CustomInstructionGroup([
|
||||||
|
"F3 0F 1E FB", # endbr32
|
||||||
"F3 0F 1E FA" # endbr64
|
"F3 0F 1E FA" # endbr64
|
||||||
]))
|
]))
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,8 @@
|
||||||
#define RT_TARGET_INT_N 5 // CD ib
|
#define RT_TARGET_INT_N 5 // CD ib
|
||||||
#define RT_TARGET_SYSENTER 6 // 0F 34
|
#define RT_TARGET_SYSENTER 6 // 0F 34
|
||||||
#define RT_TARGET_SYSCALL 7 // 0F 05
|
#define RT_TARGET_SYSCALL 7 // 0F 05
|
||||||
#define RT_TARGET_ENDBR64 8 // F3 0F 1E FA
|
#define RT_TARGET_ENDBR32 8 // F3 0F 1E FB
|
||||||
|
#define RT_TARGET_ENDBR64 9 // F3 0F 1E FA
|
||||||
|
|
||||||
#define MAX_OPCODE_LEN 4
|
#define MAX_OPCODE_LEN 4
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue