
Qualche esperimento di hacking su PE su cui sto lavorando (shellcode loader, packer, tutto in fase di sviluppo)
In questo repository troverai una sorta di ambiente di sperimentazione che uso per le mie attività di modifica dei file PE (portable executable). Il codice dovrebbe essere compilato usando LLVM per Windows perché sostituisco/ridefinisco alcune funzioni intrinseche (ad es. memset) per sostituire l'uso della normale CRT Win32.
Il progetto shellcode contiene shellcode che verrà compilato in un file .exe. Lo script extract.py estrae il codice compilato
dal file .exe in un file shellcode.bin, pronto per essere caricato come shellcode da un'applicazione Win32 nativa.
shellcode_test implementa un loader di shellcode predefinito per testare quest'ultimo.
In questi file ho aggiunto alcuni header di supporto di base usati per le cose relative all'API Win32 e come sostituto di base della CRT.
Contiene alcune funzioni di supporto per il logging e una console di debug (inclusi comandi eseguibili). Queste non hanno ancora un uso particolare, ma sono sicuro che troverò uno scopo per questo.
File PE stub che verrà successivamente usato per scrivere un packer di file .exe (questo sarà il loader).
Contiene applicazioni C/C++ di base che userò per testare il mio packer PE.