Crypter en python3

Siguiendo con Python hoy os traigo un interesante y didáctico Crypter escrito en versión 3 por el indio Pushpender. Esta herramienta nos valdrá para ofuscar (base64 x2) y cifrar (AES256) el código fuente de Python para bypassear el antivirus. Además también es capaz de detectar VM como VirtualBox, VMware o Sandboxie mediante tres métodos principales: comprobando el registro, procesos y archivos y la dirección MAC.

Probado en Kali Linux Rolling, Windows 8.1 - Pro y Windows 7 - Ultimate requiere Python 3.X y el módulo Pycryptodome:

$ pip install pycryptodome
        o       
$ python -m pip install pycryptodome

$ git clone https://github.com/Technowlogy-Pushpender/crypter.git && cd crypter

$ python3 Crypter.py deathransom.py 

    Cracking Speed on RunTime
    =========================
    With 2 GB RAM & 1 GHz Proceessor 
    --------------------------------    
    Guess Speed: 2000 Numeric Pass/ Seconds

    Password Like : 10000 is cracked in 5 seconds
    So Delay Time In Program Will be 5 seconds
    
    
[?] Enter Numeric Weak Key : 12345
[?] Enter Path of File : deathransom.py
[?] Want to BypassVM (y/n): y

[*] Making Backup ...
[+] Done !

[*] Initaiting Base64 Encryption Process ...
[+] Operation Completed Successfully!


[*] Initiating AES Encryption Process ...
[+] Process Completed Successfully!

DeathRansom: un ransomware escrito en Python con técnicas de evasión

DeathRansom del brasileño ReddyyZ es un ransomware desarrollado en python con fines educativos que implementa algunas sencillas pero interesantes técnicas de evasión. Primero, el script verifica si está en un sandbox, depurador, vm, etc., e intenta bypassearlo. Luego cifra todos los archivos que comienzan con el directorio definido en la línea 60 en deathransom.py. Después descarga el script de solicitud de rescate, deshabilita cmd, taskmanager y las herramientas de registro. Y comienza el contador para eliminar los archivos.

Técnicas bypass
  • Anti-Disassembly: Crea varias variables para intentar dificultar el desensamblado.
  • Anti-Debugger: Comprueba si un depurador está activo utilizando la función ctypes: windll.kernel32.IsDebuggerPresent()
  • Anti-Vm: Comprueba si la mac de la máquina es la misma que la mac vms estándar.
  • Anti-Sandbox:
    •  Sleep-Acceleration: Algunos sandboxes aceleran las funciones de sleep, esta función verifica si no ha ocurrido nada fuera de lo común.
    •  Sandbox en proceso: comprueba si hay un sandbox en los procesos en ejecución
    •  Display-Prompt: Muestra un mensaje, si el usuario interactúa con la ventana emergente, se ejecutará el malware.
    •  Idle-Time: realiza un sleep en un while y luego un proceed. Algunos sandboxes esperan un while y dejan de funcionar, eso intenta evitarlo.
    •  Check-Click: Si el usuario no hace clic la cantidad de veces necesaria, el malware no se ejecutará.
    •  Check-Cursor-Pos: Si el usuario no mueve el mouse un tiempo predeterminado, el malware no se ejecutará.
Instalación
  • Requisitos:
pip install -r requirements.txt
python3 -m pip install PyQt5

  • Claves: Generar las claves, subir la clave pública a pastebin, copiar el enlace en raw y cambiar el site en la línea 7 en deathransom.py python generate_key.py
python generate_key.py
  • Transformar time_script.py y main.py (ubicado en Ransom Request) a exe:
(pyinstaller en python2) pyinstaller --onefile --windowed time_script.py
(pyinstaller en python3) pyinstaller --onefile --windowed main.py
  • Subir los scripts a cualquier servicio de alojamiento de archivos y cambiar los enlaces en las líneas 28 y 31 en deathransom.py
  • Pasar deathransom.py a exe usando pyinstaller en la versión python2 y enjoy!
Edición de petición de rescate

Para editar el mensaje de petición de rescate, es necesario instalar PySide2. Abrir el archivo main.ui y editar lo que se quiera.

Demo


Proyecto: https://github.com/ReddyyZ/DeathRansom

Android Hacking 101 - Introducción

Hola, mis buenos amigos de Hackplayers, su amigo stux de nuevo por estos lares solo que esta vez no será ninguna máquina boot2root, en esta ocasión vengo aportar un pequeño post sobre algo que es muy de moda y que me gusta mucho, me refiero a lo que es el hacking de aplicaciones móviles en este caso orientado en android.

Es común encontrar aplicaciones móviles cuando estamos llevando a cabo una auditoría de seguridad o haciendo programas de recompensas por errores, así que decidí crear este pequeño post donde veremos unos conceptos básicos que debemos tener en cuenta antes de poder iniciar a reventar cosas, no comais ansias.

Las aplicaciones Android se dividen ampliamente en tres tipos en función de cómo se desarrollan:

    1. Nativas
    2. Hibridas
    3. Aplicaciones basadas en web

Nativas: Son aquellas aplicaciones desarrolladas única y exclusivamente para sistemas operativos móviles, ya sea Android o IOS. En Android se utiliza el lenguaje de programación Java o kotlin, mientras que en IOS se hace uso de Swift o Objective-C. Estos lenguajes de programación son los oficiales de los respectivos sistemas operativos.

Híbridas: Estas aplicaciones utilizan tecnologías como HTML, CSS y JavaScript, todas ellas vinculadas y procesadas a través de frameworks como Apache Córdova, Ionic, entre otras.

Web: Una aplicación web móvil, es exactamente lo que dice que es, una aplicación desarrollada con tecnologías web como JavaScript o HTML5 para proporcionar capacidades de interacción, navegación o personalización. Se ejecutan en el explorador web de un dispositivo móvil y se representan solicitando páginas web desde el servidor back-end.

Estructura fundamental de las aplicaciones Android

Cada aplicación que descargamos e instalamos desde Play Store o cualquier otra fuente tiene la extensión .apk. Estos archivos APK son archivos comprimidos, que contienen otros archivos y carpetas que discutiremos en un momento.

Imagen 1. Estructura de una aplicación Android

Creación de DLLs maliciosas para hijacking, fácil, sencillo y para toda la familia

EvilDLL v1.0 de thelinuxchoice es una herramienta bastante útil que nos facilitará la creación de DLLs maliciosas para obtener nuestra shell reversa en caso de que hayamos podido explotar un DLL hijacking. Además tendremos la opción de crear esa shell mediante un reenvío de puertos directo a nuestra máquina o mediante un túnel con ngrok.

Probado en Win7 (7601) y Windows 10 lo único que necesitaremos es el compilador Mingw-w64 (apt-get install mingw-w64) y setear el auhtoken de ngrok previo registro (./ngrok authtoken <YOUR_AUTHTOKEN>).

Después simplemente clonar el repo y ejecutar el script principal de bash:

git clone https://github.com/thelinuxchoice/evildll
cd evildll
bash evildll.sh


Custom:



(Si quieres probarlo rápido: rundll32 rest.dll,dllmain)

Listado de sandboxes de análisis de malware gratuitos y online

Desde hace tiempo si me preguntan por una sandbox para análisis de malware mi respuesta siempre es la misma: os recomiendo instalar y jugar con CAPE (ya en versión 2 con python 3), el derivado de Cuckoo que además nos extraerá los payloads y configuraciones de muchas familias de malware conocido, un proyecto genial soportado y mantenido sobretodo por Kevin y nuestro colega Andriy (la "mano inocente" de los sorteos de h-c0n xD).

Pero bueno, si por falta de tiempo para instalarlo, infraestructura o por cualquier otra razón necesitáis usar eventualmente alguno online en el blog checo Untrusted Network hay una buena recopilación de plataformas gratuitas de uso general.

Eso sí, tened en cuenta que ninguno de estos sandboxes admite envíos privados lo que significa que cualquier archivo subido puede ser accesible para otros usuarios y/u organizaciones y, por lo tanto, no sería prudente cargar nada sensible a cualquiera de las plataformas.

Current version: 1.1 (3​/2020)
Sandbox name Interactivo SO Max run time Max size Limite API Registro Notas
Amnpardaz SandBox XP SP2 Not specified Not specified Not specified ✘    email
Any.Run W7 32bit 300 seconds 16 MB
CAPE Sandbox  W7 64bit Not specified Not specified Limits for API use
Hatching Triage W7 64bit
W10 64bit
300 seconds * Currently invite-only
Hybrid Analysis W7 32bit
W7 64bit
Linux
Android (static analysis only)
360 seconds Not specified Not specified
Intezer Analyze N/A N/A Not specified 10 files per day * Analysis of binaries and applications (PE, ELF and APK)
* Not a “true” sandbox - mostly static analysis, but worth mentioning
IRIS-H Digital Forensics N/A N/A Not specified Not specified * Analysis of malicious documents (Office formats, PDFs and LNKs)
* Not a “true” sandbox - only static analysis, but worth mentioning
Joe Sandbox Cloud W7
W10 64bit
Android
Linux
500 seconds Max 100 MB 10 files per day
30 files per month

OPSWAT MetaDefender W7 64bit
W10 64bit
Not specified Not specified Limits for API use
Pikker W7 64bit
Linux
300 seconds Not specified Not specified * A free-to-use Cuckoo sandbox
SNDBOX W7 32bit 120 seconds Not specified 5 files per month

Otros + especializados:
pd. Y como curiosidad, echar un vistazo un post similiar de hace 10 años y fijaros los pocos que servicios que han permanecido con el paso del tiempo. Eso sí, ahora tenemos más y mejores alternativas que antaño... 

Slingshot C2 Matrix: una VM que incluye un arsenal de frameworks de C&C

Slingshot es una distribución de Linux basada en Ubuntu con el entorno de escritorio MATE creada por SANS para las prácticas de sus cursos de pentesting. Recientemente, uno de sus miembros (Jorge Orchilles) con otros de la empresa SCYTHE (Bryson Bort y Adam Mashinchi) han creado una versión de esta distro llamada C2 Matrix que incluye un montón de frameworks de C2 preinstalados:
De esta manera ya no tendremos que perder tiempo en la instalación de cada uno de ellos y podremos centrarnos directamente en nuestros planes de emulación de adversarios y ataques a nuestro objetivo.
Podemos descargar la OVA de vmware desde la página (necesitaremos login):

Descarga: https://www.sans.org/slingshot-vmware-linux/download
SHA256 sum: e8f3aa841a5244c0419cab7006486be6bdd7c001282833e1fbd1e9698f80069e

Más info en: https://howto.thec2matrix.com/slingshot-c2-matrix-edition