Esta es una nueva técnica para la inyección de shellcode para evadir AVS y EDRS. Esta técnica está inspirada en el módulo pisando y tiene algunas similitudes. En cuanto a esta fecha (23-01-2022), también Hollows-Hunter no lo encuentra.
La mayor ventaja de esta técnica es que no está sobrescribiendo un módulo o PE completo, solo una función y el proceso de destino aún puede usar cualquier otra función del módulo de destino.
La desventaja es que no funcionará para todas las funciones en la naturaleza (pero funcionará para la mayoría de ellos), la explicación exacta está en mi blog: lo bueno, lo malo y la función pisoteada.
Nota: es posible que AV marque esto, si la firma es una firma de MSFVENOM/METASPLOIT, ¡está bien! Solo necesita cambiar el shellcode o encriptarlo.
ACTUALIZACIÓN: Aparentemente, este no es el primer POC avaliable y Rastamouse escribió una publicación de blog que es similar en C#.
Usted incluye el encabezado a su programa como este:
# include " functionstomping.hpp "
int main () {
// Just get the pid in any way and pass it to the function.
DWORD pid = 3110 ;
FunctionStomping (pid);
return 0 ;
}O use el programa de óxido:
cd functionstomping
cargo b
functionstomping.exe < pid >¡Después de ejecutar este programa, debe llamar a la función desde el proceso remoto! (Si usó la función predeterminada createFile, ¡debe llamarlo desde el proceso remoto!).
Actualmente, el código de shellcode para ejecutar es solo para hacer una calculadora, pero todo lo que necesita hacer es reemplazar el unsigned char shellcode[] con su código de shell. Utilicé C ++ 17 y VS2019 para compilar el programa con el encabezado C ++ y la versión de óxido 2021 para compilar el programa de óxido (puede ver las dependencias en la carga.toml).

No soy responsable de ninguna manera por ningún tipo de daño que se haga a su computadora / programa como causa de este proyecto. ¡Estoy felizmente de aceptar la contribución, hacer una solicitud de extracción y lo revisaré!
Modulno
Enmascarar la memoria maliciosa de Cybark
Versión de Rastamouse