Metasploit x86 / unicode_upper falló con "Se produjo una excepción de codificación"

1

Estoy jugando un poco con el ensamblador y decidí probar cómo las metasploit codifican una carga útil en caracteres en mayúscula de Unicode como instrucciones de ensamblaje que deben decodificarse por sí mismas. Así que he escrito código de shell simple que consta de 10 nops y una ret. Lo coloqué en un archivo 1.payload.
Estoy usando metasploit:

Marco

: 4.17.4-dev-4744fb01d9c4234a60c35dc78b9a8710fc19fa01 Consola: 4.17.4-dev-4744fb01d9c4234a60c35dc78b9a8710fc19fa01

en Windows 10.

Intenté codificar mi carga útil de esta manera (desde cmd.exe):

msfvenom -a x86 --platform windows -p generic/custom PAYLOADFILE=c:\test.payload -e x86/unicode_upper -o c:/out/encoded.bin

Y me sale este error:

Found 1 compatible encoders
Attempting to encode payload with 1 iterations of x86/unicode_upper
x86/unicode_upper failed with An encoding exception occurred.
Error: An encoding exception occurred.

No tengo ningún cero bytes en mi "carga útil", es solo un 10% de instrucciones nop y una instrucción ret . El codificador para alphs funciona bien, pero por alguna razón genera caracteres extraños no latinos al comienzo de la salida. ¿Puede alguien ayudar, lo uso bien? ¿Cómo puedo codificar mi carga útil del ensamblador x86 en las instrucciones en mayúsculas de Unicode?

    
pregunta AnonyMous 10.08.2018 - 18:55
fuente

1 respuesta

0

Una solución alternativa es dejar fuera el selector de codificador -e x86/unicode_upper . Por lo tanto, el msfvenom probará algunos codificadores hasta que encuentren algunos que funcionan con los caracteres incorrectos correspondientes.

    
respondido por el slayer owner 10.08.2018 - 20:58
fuente

Lea otras preguntas en las etiquetas