lunes, 10 de agosto de 2020

Creación de payloads cifrados en Powershell con Xeca

Xeca es un proyecto que crea payloads cifrados de PowerShell con fines ofensivos. También es posible crear shellcodes independientes a partir de archivos DLL. Para instalarlo, tenemos que tener previamente Rust y luego construir el proyecto simplemente con el comando: cargo build.

Su funcionamiento es el siguiente:
1. Identifica y cifra el payload. Carga el payload cifrado en un script de PowerShell y lo guarda en un archivo llamado "launch.txt"
2. La clave para descifrar el payload se guarda en un archivo llamado "safe.txt"
3. Ejecuta "launch.txt" en un host remoto

  • El script volverá a llamar al servidor web definido por el atacante para recuperar la clave de descifrado "safe.txt"
  • Descifra el payload en la memoria
  • Ejecuta el payload en la memoria
Algunos ejemplos de uso:

Empire


Merlin


Sliver


Mitigaciones

Si los usuarios tienen que tener acceso a programas como powershell.exe, para mitigar el uso de estas herramientas hay que considerar minimizar los riesgos de seguridad con Just Enough Administration y PowerShell Logging. Las políticas de control de aplicaciones se pueden implementar a través de whitelisting con herramientas como AppLocker.

Proyecto: https://github.com/postrequest/xeca

sábado, 6 de junio de 2020

RedRabbit - PowerShell ofensivo

RedRabbit es el par de BlueRabbit pero con scripts más ofensivos, creado para facilitar el reconocimiento y pentesting. Lo ideal es ejecutarlo en memoria lo que además nos permitirá tener siempre la última versión disponible:

powershhttps://github.com/securethelogs/RedRabbitell –nop –c "iex(New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/securethelogs/RedRabbit/master/redrabbit.ps1')"



Las opciones disponibles son:

Opción 1: Reconocimiento rápido

Reconocimiento rápido mostrará detalles sobre el usuario, grupos, host y red. En orden:
  •     Usuario de listas
  •     Host de listas
  •     Enumera las interfaces de red
  •     Listas de grupos de usuarios (inc inc.)
  •     Muestra privilegios
  •     Enumera administradores locales
  •     Listas de usuarios locales
  •     Enumera usuarios registrados actualmente
  •     Muestra programas instalados
  •     Pruebas si se puede acceder a Internet
  •     Muestra las reglas locales de firewall
Opción 2: Escanear subred

Esta opción encontrará la subred actual a la que está conectada la máquina y realizará lo siguiente:
  •     Buscar hosts vivos
  •     Resolver DNS para esos host
  •     Escanear en busca de puertos abiertos en esos hosts
Opción 3: Portapapeles

Estos son los scripts de PSClippy que crean una sesión de PowerShell en segundo plano. Esa sesión empezará a grabar todo y los resultados se copiarán al portapapeles y se almacenarán. Una vez que se alcanza un umbral de 10, se guardará en un archivo o se cargará en PasteBin.

Opción 4: escáner de red

Este es un escáner de red sencillo que nos permitirá escanear:
  •     Puertos comunes
  •     Escaneo completo (puertos 1-65535)
  •     Escaneo rápido (Puertos 1-65535 pero menos tiempo de espera como la opción anterior)
Opción 5: Resolver DNS

Esto nos permitirá resolver una IP a una sola dirección IP o múltiples, utilizando un archivo txt.

Opción 6:  Fuerza bruta de ZIP

Esta opción permitirá aplicar fuerza bruta a un archivo ZIP utilizando una lista de palabras.

Opción 7: Brute WinRM

Esta opción escaneará y permitirá obtener credenciales mediante fuerza bruta utilizando el servicio WinRM. Para que esto funcione, necesitaremos:
  •     Una máquina que ejecute el servicio WinRM (puerto abierto)
  •     Una lista de usuarios
  •     Una lista de contraseñas
Opción 8: test de conexión

Dado un método a elegir, esto probará si la máquina puede llegar a su destino en puertos comunes (80,443,445).

Opción 9: Mostrar reglas de denegación del firewall local

Esta opción mostrará las reglas del firewall localesx que tienen una acción de "deny" y las formateará en una práctica tabla.

-Opciones de OSINT-

Opción A: Buscar subdominios

Esta opción le permitirá buscar subdominios en Internet.

Opción B: PasteBin diario

Esta opción extraerá los pastes recientes y los buscará por palabras clave. El script mostrará cada uno y resaltará los valores importantes, como contraseñas o claves API.

Opción C: escanear recurso de Azure

Esta opción permitirá buscar recursos Azure accesibles a través de una lista de palabras proporcionada.

Opción D: escanear redes sociales en busca de nombres de usuario

Esto buscará en algunos sitios de redes sociales un nombre de usuario coincidente.

Proyecto: https://github.com/securethelogs/RedRabbit

 

CLOWN SAW