Stitch un RAT multiplataforma escrito en Python por Nathan Lopez

Stitch es un RAT multiplataforma escrito en Python que permite crear payloads personalizados para Windows, Mac OSX y Linux.

Su autor, Nathan Lopez, lo creó con la motivación de avanzar en su conocimiento de python, hacking y para ver lo que podía lograr.

DISCLAIMER
Stitch es para fines de educación/investigación solamente. El autor no asume ninguna responsabilidad y/o responsabilidad por la forma en que elijas utilizar cualquiera de las herramientas/código fuente/cualquier archivo proporcionado. El autor y cualquier persona afiliada con no será responsable de ninguna pérdida y/o daños en relación con el uso de CUALQUIER archivo proporcionado con Stitch. Mediante el uso de Stitch o cualquier archivo incluido, se entiende que estas ACEPTANDO USARLO POR TU PROPIO RIESGO. Una vez más, Stitch y TODOS los archivos incluidos son para fines de EDUCACIÓN y/o de INVESTIGACIÓN SOLAMENTE. Stitch está SOLAMENTE pensado para ser utilizado en laboratorios propios de pentesting, o con el consentimiento explícito del dueño de la característica que está siendo probada.

Sus características son:

Genéricas

– Multiplataforma
– Autocompletado de comandos y archivos
– Detección de Antivirus
– Capacidad de apagar/encender la pantalla
– Ocultar y mostrar archivos y directorios
– Ver/editar el archivo hosts
– Ver todas las variables de entorno de sistema
– Keylogger con opciones para ver el estado, iniciar, detener y volcar los logs
– Ver la ubicación y otra información de la máquina de destino
– Ejecutar scripts de python personalizados que devuelven lo que se imprima a la pantalla
– Capturas de pantalla
– Detección de máquina virtual
– Descargar/subir archivos hacia/desde el sistema de destino
– Volcado de los hashes de las contraseñas del sistema
– Las propiedades de los payloads están “disimuladas” como otros programas conocidos

Específicas para Windows

– Muestra un cuadro de diálogo con el usuario/contraseña para engañar al usuario
– Vuelca la contraseñas guardadas en Chrome
– Permite borrar los registros del sistema, de seguridad y de la aplicación
– Habilitar/deshabilitar servicios como RDP, UAC y Windows Defender
– Editar las propiedades de archivos accesibles, creados y modificados
– Crear un cuadro emergente personalizado
– Ver la cámara web conectada y tomar instantáneas
– Ver las conexiones wifi conectadas y guardadas junto con sus contraseñas
– Ver información acerca de las unidades conectadas
– Ver el resumen de valores de registro como DEP

Específicas para MacOS

– Cambiar el texto de inicio de sesión en la pantalla de inicio de sesión del usuario
– Capacidad de tomar capturas de la webcam

Específicas para MacOS/Linux

– SSH desde la máquina de destino a otro host
– Ejecutar comandos con sudo
– Realizar ataques de fuerza bruta con la lista de contraseñas que se encuentra en Tools/
– Capacidad de tomar capturas de la webcam

Transportes implementados

Toda comunicación entre el host y el destino es cifrada con AES. Cada programa Stitch genera una clave AES que luego se pone en todos los payloads. Para acceder a un payload las claves AES deben coincidir. Para conectarse desde un sistema diferente que ejecuta Stitch se debe agregar la clave utilizando el comando showkey del sistema original y el comando addkey del nuevo sistema.

Instaladores de payload implementados

El comando “stitchgen” da al usuario la opción de crear instaladores NSIS en Windows y Makeself en máquinas posix. Para Windows, el instalador empaqueta el payload y un exe para elevar privilegios, lo que evita el mensaje del firewall, instala el payload en el sistema e intenta añadir persistencia. Para Mac OSX y Linux, el instalador coloca el payload e intenta agregar persistencia. Para crear instaladores NSIS se debe descargar e instalar NSIS.

Requisitos

Python 2.7

Instalación

# para Windows
pip install -r win_requirements.txt

# para Mac OSX
pip install -r osx_requirements.txt

# para Linux
pip install -r lnx_requirements.txt

Especificos de Windows

Especificos de Mac OSX

Especificos de Mac OSX/Linux

Para ejecutarlo

python main.py

o

./main.py

Otros RAT en Python de código abierto de referencia:

Fuentehttps://github.com/nathanlopez/Stitch

#HackNic

Shadow77

Meitu: la aplicación que te hace “bell@” con todos los permisos

En cierto modo, la situación es preocupante porque los desarrolladores de la aplicación no dicen qué hacen con dicha información.

¿La utilizan con fines publicitarios o para algo más?

Lo más probable es que sea por la publicidad (como sucede con muchas otras cosas hoy en día), pero como a los usuarios no se les explica el motivo, es difícil afirmarlo.

Como siempre, recomendamos hacer los deberes con este tipo de aplicaciones: comprobar si la aplicación en cuestión de verdad necesita esos permisos (por ejemplo, ¿necesita una aplicación para compartir fotos saber tu localización?).

Según David Emm, investigador principal del equipo GReAT de Kaspersky Lab: “Es demasiado fácil, al instalar una aplicación nueva, hacer clic en aceptar en todas las pantallas de instalación, incluida la que especifica los permisos que quiere esta.

Pero es imprudente: deberíamos comprobar con cautela que una aplicación no pide permisos que no necesita para desarrollar su función.

Y si de verdad los “necesita”, no aceptes a no ser que te sientas cómodo con que pueda acceder a esta funcionalidad o información de tu dispositivo: si piensas que no necesita acceder a algo, ¡no lo permitas!

Recuerda también que puedes controlar los permisos de las aplicaciones en las últimas versiones de Android a través del menú de ajustes.

Fuente:www.independent.co.uk

#HackNic

Shadow77

Shootback: herramienta para realizar un túnel TCP inverso

Shootback es una herramienta escrita en Python para realizar un túnel TCP inverso y permitir el acceso hacia una máquina detrás de un NAT o firewall.

Consume menos de 1% de CPU y 8MB de memoria con una concurrencia de 800 conexiones (sockets). El cliente (Slaver) es un único fichero que sólo tiene como dependencia la librería estándar de python(2.7/3.4+) .

Cómo funciona  


Escenarios típicos 

1 Acceder al equipo de una compañía/escuela (sin IP pública) desde casa
2 Hacer un sitio/red públicos
3 Facilitar la intrusión a una red privada
4 Ayudar a los participantes de un CTF offline
5 Conectarse a un dispositivo con una IP dinámica, como una ADSL doméstica

Comenzando a usarlo 

1. requisitos:
◦ Master: Python3.4+, independiente del SO
◦ Slaver: Python2.7/3.4+, independiente del SO
◦ no tiene dependencias externas, sólo las librerías estándar de python

2. descarga git clone https://github.com/aploium/shootback

3. (opcional) si necesitas un único fichero slaver.py, ejecuta python3 build_singlefile_slaver.py

4. ejecuta estos comandos

# master listen :10000 for slaver, :10080 for you
python3 master.py -m 0.0.0.0:10000 -c 127.0.0.1:10080

# slaver connect to master, and use example.com as tunnel target
# ps: you can use python2 in slaver, not only py3
python3 slaver.py -m 127.0.0.1:10000 -t example.com:80

# doing request to master
curl -v -H "host: example.com" 127.0.0.1:10080

5. un ejemplo más realista:

# slaver_local_ssh <---> slaver <--> master(22.33.44.55) <--> You

# ---- master ----
python3 master.py -m 0.0.0.0:10000 -c 0.0.0.0:10022

# ---- slaver ----
python(or python3) slaver.py -m 22.33.44.55:10000 -t 127.0.0.1:22

# ---- YOU ----
ssh 22.33.44.55 -p 10022

6. para más ayuda ver python3 master.py –help

y python3 slaver.py –help

Tips

1. ejecutar en modo daemon:

nohup python(or python3) slaver.py -m host:port -t host:port -q &
o:
# screen is a linux command
screen
python(or python3) slaver.py -m host:port -t host:port
# press  ctrl-a d  to detach screen
# and if necessary, use "screen -r" to reattach

2. CUALQUIER servicio que use TCP es “shootback-able”. HTTP/FTP/Proxy/SSH/VNC/…

3. shootback sólo hace la función de transmisión, no cifra ni hace de proxy, sin embargo se puede usar un proxy de terceros (ej. shadowsocks) en el slaver.

Por ejemplo:

shadowsocks_server–shootback_slaver–shootback_master–shadowsocks_client(socks5)

 Aviso 

1. En windows debido al límite de CPython select.select(), shootback no puede manejar más de 512 conexiones de forma concurrente, por lo que podrías encontrarte con el error:
ValueError: too many file descriptors in select()

2. Si necesitas mayor concurrencia en Windows se recomienda usar Anaconda-Python3 que aumenta el límite a 2048.
Fuente: https://github.com/aploium/shootback

#HackNic

Shadow77