mykola2312
|
aa9c426f66
|
begin porting all lists to mlist
|
2024-09-03 02:52:48 +03:00 |
|
mykola2312
|
27fc37d6cf
|
implement a C++'ish destructor - free callback for each item in array
|
2024-09-01 18:38:37 +03:00 |
|
mykola2312
|
3f4745d440
|
after days of intense thought process came up with working and well-rounded concept of header-only list structure management
|
2024-09-01 15:38:22 +03:00 |
|
mykola2312
|
a78393ad70
|
begin working on module parsing. major list rework ahead
|
2024-08-30 15:57:20 +03:00 |
|
mykola2312
|
e14b420b1f
|
fixed bug related to f_offset: parse hexadecimal
|
2024-08-29 21:16:14 +03:00 |
|
mykola2312
|
1606be8556
|
changes to procstat malloc behavior
|
2024-08-28 16:36:01 +03:00 |
|
mykola2312
|
4118ea7292
|
implement procfs file mappings parsing
|
2024-08-28 16:29:17 +03:00 |
|
mykola2312
|
774a555175
|
begin working on file mapping parsing
|
2024-08-28 14:50:57 +03:00 |
|
mykola2312
|
db6a7cdde8
|
split process into procstat and process source files, since other OSes like BSD demand different procfs treatment, and process hijacking is not part of parsing it
|
2024-08-28 13:43:03 +03:00 |
|
mykola2312
|
226d306bfa
|
implement relf file check function to get ELF type
|
2024-08-28 10:17:41 +03:00 |
|
mykola2312
|
3ce2738715
|
get rid of composite error type nonsense
|
2024-08-28 09:41:22 +03:00 |
|
mykola2312
|
bd4ea8f2e6
|
implement symbol parsing
|
2024-08-25 20:49:17 +03:00 |
|
mykola2312
|
5d9e756153
|
add dlsym to actually check if my shit works
|
2024-08-25 20:31:36 +03:00 |
|
mykola2312
|
1abe051db0
|
remove redundant code and prepare sections for symbol parsing
|
2024-08-25 20:23:11 +03:00 |
|
mykola2312
|
fe31879dd6
|
rename strtab to shstrtab since it makes more sense now
|
2024-08-25 20:09:22 +03:00 |
|
mykola2312
|
8f7a832961
|
so, "string table index" is just an offset. implemented string resolving
|
2024-08-25 19:58:19 +03:00 |
|
mykola2312
|
14b9562fb0
|
working on string table parsing
|
2024-08-25 15:39:34 +03:00 |
|
mykola2312
|
44112dc4a7
|
implement program and section header parsing
|
2024-08-25 13:10:11 +03:00 |
|
mykola2312
|
caf85718e7
|
define structures to abstract 32 and 64 bit differences in parsing
|
2024-08-25 09:18:35 +03:00 |
|
mykola2312
|
9e80bee9aa
|
file mapping works
|
2024-08-25 08:30:21 +03:00 |
|
mykola2312
|
bc2f89b039
|
working on ELF identification
|
2024-08-25 08:08:52 +03:00 |
|
mykola2312
|
8a3ea5b2b2
|
add 32-bit dummy shared object target
|
2024-08-25 06:16:31 +03:00 |
|
mykola2312
|
b2015a0d8a
|
begin working on relf component
|
2024-08-24 14:32:50 +03:00 |
|
mykola2312
|
a39999e134
|
OVERHAUL: migrate to recursive make, because such way I can establish proper project structure for future make install AND have unclogged makefiles
|
2024-08-24 11:19:59 +03:00 |
|
mykola2312
|
9bc3007a7f
|
add dlsym print to dummy
|
2024-08-24 01:25:29 +03:00 |
|
mykola2312
|
635cf023c7
|
turns out you have to offset the syscall instruction to rip, because PTRACE_CONT continue process by "returning" from syscall
|
2024-08-22 16:26:22 +03:00 |
|
mykola2312
|
0ae068762f
|
function names refactor
|
2024-08-22 12:08:21 +03:00 |
|
mykola2312
|
f21453236f
|
implement function to calculate proper patch size for future jmp hooks
|
2024-08-22 07:59:08 +03:00 |
|
mykola2312
|
f312bc09e9
|
test VEX decoding, rename "size" to "limit"
|
2024-08-22 07:26:33 +03:00 |
|
mykola2312
|
74e6ce1322
|
update readme
|
2024-08-19 12:04:38 +03:00 |
|
mykola2312
|
ae99c186e4
|
update readme and add endbr32
|
2024-08-19 12:03:49 +03:00 |
|
mykola2312
|
261961999c
|
add separate group for custom instructions like endbr64 to be able to implement their logic separate. also bug fixes
|
2024-08-19 11:47:03 +03:00 |
|
mykola2312
|
c612e66833
|
well yea first major bug - we didnt parsed AMD specs so no endbr64 in LUT table is present. gonna fix that
|
2024-08-19 09:27:34 +03:00 |
|
mykola2312
|
9de814e66a
|
rtdisasm_find_target works very well
|
2024-08-19 09:12:55 +03:00 |
|
mykola2312
|
bd6682a61d
|
fix bug when 1-byte opcode will trigger size-limit because of unnecessary bounds check
|
2024-08-19 08:48:30 +03:00 |
|
mykola2312
|
97c8476d2a
|
better instruction trace
|
2024-08-19 08:35:53 +03:00 |
|
mykola2312
|
b5dd5c455a
|
begin working on rt_target search - we need that for syscall trampolines
|
2024-08-19 07:49:30 +03:00 |
|
mykola2312
|
60ded0d85b
|
encorporate rt_target - unique identifier for instructions we will be looking for
|
2024-08-19 07:11:45 +03:00 |
|
mykola2312
|
4ae333513e
|
fix typo which led to bug with opreg decoding
|
2024-08-19 01:32:50 +03:00 |
|
mykola2312
|
eb4b5767ee
|
move process specific debug definitions to its own header file, thus fixing compiler warnings
|
2024-08-19 00:59:26 +03:00 |
|
mykola2312
|
ce5b3ee705
|
add debug traces to rtdisasm
|
2024-08-19 00:55:53 +03:00 |
|
mykola2312
|
89e6057fe4
|
add shared objs and deps
|
2024-08-19 00:06:46 +03:00 |
|
mykola2312
|
a4593e8564
|
move test data code to .text section for ease of objdump use
|
2024-08-16 14:43:04 +03:00 |
|
mykola2312
|
b4b468ec51
|
fix makefile to actually link static library
|
2024-08-16 14:41:38 +03:00 |
|
mykola2312
|
8181aa5623
|
fix warnings, add test code
|
2024-08-16 14:34:09 +03:00 |
|
mykola2312
|
5d23c4e695
|
implement instruction analyze
|
2024-08-16 14:25:15 +03:00 |
|
mykola2312
|
35e6628ec7
|
implement analyze of ModRM
|
2024-08-16 13:31:58 +03:00 |
|
mykola2312
|
64f44d9a44
|
implement opcode matching as well as opreg
|
2024-08-16 12:21:58 +03:00 |
|
mykola2312
|
b636bc8891
|
begin working on instruction matching
|
2024-08-16 09:41:41 +03:00 |
|
mykola2312
|
4bfa581481
|
begin working on rex prefix testing
|
2024-08-16 09:10:28 +03:00 |
|