From 714bc73546d7f8ccd9a78f4db4dfd20a931853a1 Mon Sep 17 00:00:00 2001 From: Iizerd Date: Wed, 15 Sep 2021 00:36:24 -0700 Subject: [PATCH] working xD --- ShellcodeObfuscator/Obfuscator.cpp | 51 ++++++++---------- ShellcodeObfuscator/Obfuscator.h | 21 ++++---- ShellcodeObfuscator/main.cpp | 22 +++++--- .../Shellcod.ad60371b.tlog/CL.read.1.tlog | Bin 74326 -> 73526 bytes .../Shellcod.ad60371b.tlog/CL.write.1.tlog | Bin 1974 -> 1390 bytes .../Shellcod.ad60371b.tlog/link.read.1.tlog | Bin 4180 -> 4654 bytes .../Shellcod.ad60371b.tlog/link.write.1.tlog | Bin 694 -> 694 bytes .../ShellcodeObfuscator.Build.CppClean.log | 1 - .../x64/Debug/ShellcodeObfuscator.log | 11 ++-- ShellcodeObfuscator/x64/Debug/vc142.idb | Bin 576512 -> 576512 bytes x64/Debug/ShellcodeObfuscator.ilk | Bin 3413288 -> 2290764 bytes 11 files changed, 52 insertions(+), 54 deletions(-) diff --git a/ShellcodeObfuscator/Obfuscator.cpp b/ShellcodeObfuscator/Obfuscator.cpp index 7aa818d..e971305 100644 --- a/ShellcodeObfuscator/Obfuscator.cpp +++ b/ShellcodeObfuscator/Obfuscator.cpp @@ -1,12 +1,11 @@ #include "Obfuscator.h" -//snake case is honestly so disgusting void obf_one_time_please() { xed_tables_init(); } -bool obf_init_from_buffer(pobfuscator_t obf, void* buffer, int buffer_size) +bool obf_init_from_buffer(pobfuscator_t obf, void* buffer, uint32_t buffer_size) { obf->current_label_id = 0; obf->machine_mode = XED_MACHINE_MODE_LONG_64; @@ -36,7 +35,7 @@ bool obf_init_from_buffer(pobfuscator_t obf, void* buffer, int buffer_size) return false; } - unsigned int inst_len = xed_decoded_inst_get_length(&link->instruction); + uint32_t inst_len = xed_decoded_inst_get_length(&link->instruction); link->raw_data_size = inst_len; link->raw_data = (unsigned char*)malloc(inst_len); @@ -73,8 +72,11 @@ bool obf_init_from_buffer(pobfuscator_t obf, void* buffer, int buffer_size) bool obf_create_groups(pobfuscator_t obf, int32_t group_size) { - int cur_group_id = 0; - int cur_offset = 0; + uint32_t cur_group_id = 0; + uint32_t cur_offset = 0; + + if (group_size < 32) + group_size = 32; //assign instructions to groups for (pcode_link_t t = obf->code_start->next; t; t = t->next) @@ -191,8 +193,8 @@ void obf_replace_rel_jmps(pobfuscator_t obf) pcode_link_t real_next = t->next; if (t->flags & CLFLAG_IS_REL_JUMP) { - unsigned int jmp_delta_width = xed_decoded_inst_get_branch_displacement_width(&t->instruction); - unsigned int opcode_size = t->raw_data_size - jmp_delta_width; + uint32_t jmp_delta_width = xed_decoded_inst_get_branch_displacement_width(&t->instruction); + uint32_t opcode_size = t->raw_data_size - jmp_delta_width; switch (jmp_delta_width) { @@ -281,7 +283,7 @@ bool obf_gen_all_labels(pobfuscator_t obf) { if (t->flags & CLFLAG_IS_REL_JUMP) { - int jump_delta = xed_decoded_inst_get_branch_displacement(&t->instruction); + int32_t jump_delta = xed_decoded_inst_get_branch_displacement(&t->instruction); if (!obf_gen_label(obf, t, jump_delta)) return false; } @@ -345,20 +347,20 @@ bool obf_gen_label(pobfuscator_t obf, pcode_link_t jmp, int32_t delta) return true; } -bool obf_allocate_group_buffers(pobfuscator_t obf, FnAllocateMem AllocMem) +bool obf_allocate_group_buffers(pobfuscator_t obf, FnAllocateMem alloc_mem) { for (code_group_t& group : obf->groups) { - group.base_address = (uint64_t)AllocMem(group.size_in_bytes); + group.base_address = (uint64_t)alloc_mem(group.size_in_bytes); if (!group.base_address) return false; } return true; } -bool obf_copy_groups_into_buffers(pobfuscator_t obf, FnMemCopy MemCopy) +bool obf_copy_groups_into_buffers(pobfuscator_t obf, FnMemCopy mem_copy) { - for (uint32_t i = 0; i < obf->groups.size(); i) + for (uint32_t i = 0; i < obf->groups.size(); i++) { pcode_group_t group = &obf->groups[i]; uint64_t cur_addr = group->base_address; @@ -366,15 +368,18 @@ bool obf_copy_groups_into_buffers(pobfuscator_t obf, FnMemCopy MemCopy) { if (!(t->flags & CLFLAG_IS_LABEL)) { - MemCopy((void*)cur_addr, t->raw_data, t->raw_data_size); + if (!cur_addr) + return false; + mem_copy((void*)cur_addr, t->raw_data, t->raw_data_size); cur_addr += t->raw_data_size; } } + printf("finished copying group %u\n", i); } + return true; } #include - void obf_dbg_print_code(pobfuscator_t obf) { HANDLE StdHandle = GetStdHandle(STD_OUTPUT_HANDLE); @@ -413,26 +418,12 @@ void obf_dbg_print_code(pobfuscator_t obf) } } -void obf_dbg_print_group(pobfuscator_t obf, int group_id) -{ - if (group_id >= obf->groups.size()) - return; - - for (pcode_link_t t = obf->groups[group_id].start; t && t->group == group_id; t = t->next) - { - if (!(t->flags & CLFLAG_IS_LABEL)) - { - obf_print_byte_array(t->raw_data, t->raw_data_size); - } - } -} - #include #include -void obf_print_byte_array(void* arr, unsigned int size) +void obf_print_byte_array(void* arr, uint32_t size) { unsigned char* b = (unsigned char*)arr; - for (int i = 0; i < size; i++) + for (uint32_t i = 0; i < size; i++) { std::cout << std::hex << std::setw(2) << std::setfill('0') << (int)b[i] << ' '; } diff --git a/ShellcodeObfuscator/Obfuscator.h b/ShellcodeObfuscator/Obfuscator.h index 84736b7..9076b11 100644 --- a/ShellcodeObfuscator/Obfuscator.h +++ b/ShellcodeObfuscator/Obfuscator.h @@ -9,12 +9,12 @@ extern "C" #include "xed/xed-interface.h" } -#define CLFLAG_IS_LABEL (1<<0) -#define CLFLAG_IS_REL_JUMP (1<<1) -#define CLFLAG_IS_ABS_ADDR (1<<2) -#define CLFLAG_IS_GAGET (1<<3) +#define CLFLAG_IS_LABEL (1<<0) +#define CLFLAG_IS_REL_JUMP (1<<1) +#define CLFLAG_IS_ABS_ADDR (1<<2) +#define CLFLAG_IS_GAGET (1<<3) -#define ABS_JUMP_GAGT_SIZE 16 +#define ABS_JUMP_GAGT_SIZE 16 #define END_OF_GROUP_GAGT_SIZE 14 typedef struct _code_link_t @@ -59,7 +59,7 @@ typedef void (*FnMemCopy)(void* dest, void* src, uint32_t size); void obf_one_time_please(); //duh -bool obf_init_from_buffer(pobfuscator_t obf, void* buffer, int buffer_size); +bool obf_init_from_buffer(pobfuscator_t obf, void* buffer, uint32_t buffer_size); //creates the groups of instructions based on number of bytes bool obf_create_groups(pobfuscator_t obf, int32_t group_size); @@ -77,16 +77,15 @@ bool obf_gen_all_labels(pobfuscator_t obf); bool obf_gen_label(pobfuscator_t obf, pcode_link_t start, int32_t delta); //allocate buffers for all groups -bool obf_allocate_group_buffers(pobfuscator_t obf, FnAllocateMem AllocMem); +bool obf_allocate_group_buffers(pobfuscator_t obf, FnAllocateMem alloc_mem); //copy all instructions from each group into allocated buffers -bool obf_copy_groups_into_buffers(pobfuscator_t obf, FnMemCopy MemCopy); +bool obf_copy_groups_into_buffers(pobfuscator_t obf, FnMemCopy mem_copy); +//print all the code void obf_dbg_print_code(pobfuscator_t obf); -void obf_dbg_print_group(pobfuscator_t obf, int group_id); - -void obf_print_byte_array(void* arr, unsigned int size); +void obf_print_byte_array(void* arr, uint32_t size); #endif \ No newline at end of file diff --git a/ShellcodeObfuscator/main.cpp b/ShellcodeObfuscator/main.cpp index ff3e76f..e0d3e3b 100644 --- a/ShellcodeObfuscator/main.cpp +++ b/ShellcodeObfuscator/main.cpp @@ -14,6 +14,15 @@ #include "Obfuscator.h" +void* alloc_mem(uint32_t size) +{ + return malloc(size); +} + +void mem_copy(void* src, void* dest, uint32_t size) +{ + memcpy(src, dest, size); +} int main(int argc, char** argv) { @@ -28,16 +37,15 @@ int main(int argc, char** argv) obf_replace_rel_jmps(&obf); obf_create_groups(&obf, 10); + obf_dbg_print_code(&obf); + + obf_allocate_group_buffers(&obf, alloc_mem); obf_resolve_abs_addresses(&obf); + obf_copy_groups_into_buffers(&obf, mem_copy); + printf("\n\n"); - obf_dbg_print_code(&obf); - printf("%u is num of groups.\n", obf.groups.size()); + obf_print_byte_array((void*)obf.groups[0].base_address, obf.groups[0].size_in_bytes); - /*for (int i = 0; i < obf.groups.size(); i++) - { - printf("\nprinting group %d \n", i); - obf_dbg_print_group(&obf, i); - }*/ system("pause"); } diff --git a/ShellcodeObfuscator/x64/Debug/Shellcod.ad60371b.tlog/CL.read.1.tlog b/ShellcodeObfuscator/x64/Debug/Shellcod.ad60371b.tlog/CL.read.1.tlog index d2ba163fff21a4118bb47b83006b237401cd9934..e87f80fd815c160055383586e602ebf2e1ff02f8 100644 GIT binary patch delta 38 lcmcb1gk{@4mI*DB-`Ma?{t%V1IWIOKV)Cu1J|uw`M*w~F6YKy0 delta 482 zcmd^)O$x#=6od!tN^s#tihqdMm9Eaq^F1cdm-lYG+eMd1kRpOa2?c{S1n(gh)C4s(r%HMZ=MtIgQ~G{=gcvJ23o{eg@=DVNf3(DwJ5dZ)H diff --git a/ShellcodeObfuscator/x64/Debug/Shellcod.ad60371b.tlog/CL.write.1.tlog b/ShellcodeObfuscator/x64/Debug/Shellcod.ad60371b.tlog/CL.write.1.tlog index a63b80dc8943d7b83d39a5e25e58370b4332084b..a2982edc3f9aa0ac5f54f1c3d0dddd83da3d51b8 100644 GIT binary patch delta 27 jcmdnS|Bh?J9Hz-y%nFmAv3#4DB{2C1>y*tUtP+d>pu!5% delta 48 ycmaFIwT*wn9Hz-;%p#NbFjY;S!=$j;iSdaJjJp06PH&5&!@I diff --git a/ShellcodeObfuscator/x64/Debug/Shellcod.ad60371b.tlog/link.write.1.tlog b/ShellcodeObfuscator/x64/Debug/Shellcod.ad60371b.tlog/link.write.1.tlog index beeb96d7aad14b18239d815fc5359845caca7a2f..df41931a43055307159d7ddfffea43e8b8a6c8df 100644 GIT binary patch delta 19 bcmdnSx{Y': signed/unsigned mismatch -C:\$Fanta\shellcode-obfuscator\ShellcodeObfuscator\Obfuscator.cpp(418,20): warning C4018: '<': signed/unsigned mismatch -C:\$Fanta\shellcode-obfuscator\ShellcodeObfuscator\Obfuscator.cpp(280): warning C4715: 'obf_get_group_size': not all control paths return a value -C:\$Fanta\shellcode-obfuscator\ShellcodeObfuscator\Obfuscator.cpp(72): warning C4715: 'obf_init_from_buffer': not all control paths return a value + main.cpp + Obfuscator.cpp +C:\$Fanta\shellcode-obfuscator\ShellcodeObfuscator\Obfuscator.cpp(88,39): warning C4018: '>': signed/unsigned mismatch + Generating Code... +C:\$Fanta\shellcode-obfuscator\ShellcodeObfuscator\Obfuscator.cpp(71): warning C4715: 'obf_init_from_buffer': not all control paths return a value +LINK : warning LNK4098: defaultlib 'LIBCMT' conflicts with use of other libs; use /NODEFAULTLIB:library ShellcodeObfuscator.vcxproj -> C:\$Fanta\shellcode-obfuscator\x64\Debug\ShellcodeObfuscator.exe diff --git a/ShellcodeObfuscator/x64/Debug/vc142.idb b/ShellcodeObfuscator/x64/Debug/vc142.idb index 233c73e9d267597dff6799cfa88fec21fce282be..ff0edfb01d4657ba1982df1af104441290cdc3c7 100644 GIT binary patch delta 7133 zcmeHM&r4K69Di?SU+=9hQk0hQHVrF0tYXkX7Q>c0Ne2%FUJN=Jw8suopwhYEnbKRq zLrA8Ckg>M2#9|5_Iz$OY3fV9E2Rc|v1U7rIw;vvT8Rj7!c3}>mna}t0`ONq2?kuw- zxt5V!i+9F6^)&N>kM<@Sw|DSmed#ugo#D|;TRsze&hI&~`jHCGE}_-@E-8!L9dAEv zUZ2WbH4Vdvxi{*(<=LM3$yCSP)vx#S?jdj3pL^o;nQq=1x2*#yW*BX9w9CQE6=U@i zx5jc4*+RkjZ6#ae)CoCG%29qL$?5+dtjI{Ek7Et(m@kY?MDnzL+pzc0zz_wM|N4TNpvl-^?;yAu7rnq30kkh zv{pguT^MN{NE>XcJJ=1E2UCjVUgIwCzXtdMV2V%GQ~T4^$9l}K>QB{Eeo?RM_II!M zuj)tbPqm+@hZvtP>LVX9Rgde~4_!ahLyY=V9@TnXee~1Cm`C?{p&s@R*Q55M^srx4 z9!d}Ealfj5R6Xh;#yqwg;~4#V#w{@rad0K$CI~vQ^AWpUta7r2=AAjP5iyx^Ua_3Vd2_N n-_e?to2lONm0!9|3>|mg?+Z>`X>}giNB;Tunvj35U2^{bY>j5M delta 8754 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