Captura de Banners TCP utilizando la Herramienta Netcat

Body

Netcat es una utilidad de red la cual lee y escribe datos a través de conexiones de red utilizando el protocolo TCP/IP. Está diseñada para ser una herramienta "back-end" confiable la cual puede ser utilizada directamente, o controlada fácilmente mediante otros programas y scripts. Al mismo tiempo es una herramienta para exploración y depuración de redes con muchas funcionalidades, pues puede crear casi cualquier tipo de conexión necesaria, además de tener diversas capacidades integradas interesantes.

Se procede a ejecutar Netcat para establecer conexiones hacia un rango de puertos TCP, desde los cuales se requiere obtener o capturar su banner.

$ echo "" | nc -v -n -r -w1 192.168.50 1-100

El comando “echo” muestra una línea de texto hacia la salida estándar.

La opción “-v” define verbosidad. Utilizarla dos veces para obtener más verbosidad

La opción “-n” define únicamente dirección numérica IP, no DNS.

La opción “-r” permite escanear los puertos locales y remotos de manera aleatoria.

La opción “-w” define el tiempo de espera para conexión y lectura final de red

El resultado del comando echo y las dobles comillas imprime una línea en blanco. El resultado de este comando es canalizado como entrada para el comando Netcat. Consecuentemente aquello lo cual enviará Netcat al establecer una conexión hacia un puerto TCP será una linea en blanco.

La definición de los puertos hacia los cuales se realizarán conexiones para obtener su banner, se define con el siguiente formato; puerto inicial, luego el símbolo guion, luego el puerto final. En este caso se establecerán conexiones desde el puerto TCP número 1 hasta el número 100.

Los resultados del escaneo realizado se muestran en columnas, mostrándose la dirección IP hacia la cual se establece una conexión, el puerto, su servicio asociado, y el mensaje producto de la conexión establecida. El mensaje “Connection timed out” indica la conexión ha superado el tiempo de espera definido. Caso contrario se muestra el texto “open”, lo cual indica el puerto está abierto, para luego mostrar el banner devuelto por el software, programa, o aplicación proporcionando un servicio.

Es importante mencionar no todos los puertos descubiertos en estado abierto devolverán un banner al recibir una línea en blanco. Para estos escenarios se pueden utilizar herramientas más especializadas como Nmap, o utilizar un cliente específico para establecer la conexión hacia el servicio descubierto.

Fuentes:

https://netcat.sourceforge.net/
https://linux.die.net/man/1/echo

Escaneo de Puertos TCP utilizando la Herramienta Netcat

Body

Netcat es una utilidad de red la cual lee y escribe datos a través de conexiones de red utilizando el protocolo TCP/IP. Está diseñada para ser una herramienta "back-end" confiable la cual puede ser utilizada directamente, o controlada fácilmente mediante otros programas y scripts. Al mismo tiempo es una herramienta para exploración y depuración de redes con muchas funcionalidades, pues puede crear casi cualquier tipo de conexión necesaria, además de tener diversas capacidades integradas interesantes.

Se procede a ejecutar Netcat para realizar un escaneo de puertos hacia una dirección IP.

$ nc -v -n -r -z -w1 192.168 .0.50 1-100

La opción “-v” define verbosidad. Utilizarla dos veces para obtener más verbosidad

La opción “-n” define únicamente dirección numérica IP, no DNS.

La opción “-r” permite escanear los puertos locales y remotos de manera aleatoria.

La opción “-z” es el modo de Entrada/Salida cero. Utilizado para escanear.

La opción “-w” define el tiempo de espera para conexión y lectura final de red

La definición de los puertos a escanear se define en el siguiente formato; puerto inicial, luego el símbolo guion, luego el puerto final. En este caso se escaneará desde el puerto TCP número 1 hasta el número 100.

Los resultados del escaneo realizado se muestran en columnas, entre estas la dirección IP escaneada, el puerto escaneado, su servicio asociado, y el mensaje producto de la conexión establecida. Se percibe fácilmente como los puertos descubiertos en estado Abierto incluyen el texto “Open”, en lugar de “Connection timed out”.

De hecho existen otras herramientas diseñadas específicamente para realizar diversos tipos de escaneos, con muchas funcionalidades y características como la herramienta Nmap. Pero resulta importante conocer diversas maneras y herramientas para realizar procedimientos similares, dado el hecho se enfrentarán diversos escenarios a evaluar.

Fuentes:

https://netcat.sourceforge.net/

Validar DNSSEC utilizando el Comando delv

Body

DNSSEC (DNS Security Extensions) o por su traducción al idioma español; Extensiones de Seguridad para DNS, añade seguridad al Sistema para Nombres de Dominio (DNS).

DNSSEC fue diseñado para proteger Internet de ciertos ataques, como el envenenamiento del caché DNS. Es un conjunto de extensiones para DNS los cuales proporcionan; autenticación del origen de datos DNS, integridad de datos, y denegación autenticada de existencia.

Estos mecanismos requieren cambios en el protocolo DNS. DNSSEC agrega cuatro nuevos tipos de registros de recursos: Firma de registro de recursos (RRSIG), Llave Pública DNS (DNSKEY), Firmante de Delegación (DS) y Siguiente Seguro (NSEC). Estos nuevos RRs son descritos en detalle en el RFC 4034.

delv

delv es una herramienta para enviar consultas DNS y validar los resultados, utilizando la misma lógica de validación y resolución interna de named.

delv envía hacia un servidor de nombres especificado todas las consultas necesarias para obtener y validar los datos solicitados; esto incluye la consulta solicitada original, las consultas posteriores para seguir las cadenas CNAME o DNAME, las consultas de DNSKEY, y los registros DS para establecer una cadena de confianza para la validación de DNSSEC. No realiza una resolución iterativa, sino simula el comportamiento de un servidor de nombres configurado para la validación y el reenvío de DNSSEC.

La manera más simple de utilizar el comando delv es definir el nombre de host a consultar, y el nombre o dirección IP del servidor de nombres a consultar. Adicionalmente se puede definir el tipo de consult DNS, A, AA, MX, TX>T, etc.

$ delv example. edu.pe ns-cloud-b2. googledomains.com.

Un registro RRSIG contiene la firma para un conjunto de registros RR con un nombre, una clase, y un tipo particular. El registro RRSIG especifica un intervalo de validez para la firma y utiliza el Algoritmo, el Nombre del Firmante, y la Etiqueta Llave para identificar el registro DNSKEY, el cual contiene la llave pública factible de ser utilizado por un validador para verificar la firma.

El mensaje “unsigned answer” indica la respuesta no ha sido firmada digitalmente utilizando una llave DNSSEC válida. No pudiendo verificarse la autenticidad e integridad de los datos recibidos.

Desde la perspectiva de la ciberseguridad, las firmas digitales de DNSSEC permiten asegurar los datos de una zona DNS no se han alterado durante su transmisión, lo cual intenta proteger contra ataques como el envenenamiento del caché DNS. Así mismo una respuesta firmada indicaría la información proviene de una fuente fiable.

Fuentes:

https://www.dnssec.net/
https://manpages.ubuntu.com/manpages/focal/man1/delv.1.html
https://kb.isc.org/docs/aa-01152
https://www.cyberciti.biz/faq/unix-linux-test-and-validate-dnssec-using…

Obtener el SPF, DKIM, y DMARC utilizando el Comando dig

Body

dig es una herramienta flexible para interrogar servidores de nombres DNS. Realiza búsquedas DNS y muestra las respuestas devueltas por los servidores de nombres consultados. Muchos administradores de DNS utilizan dig para solucionar problemas debido a su flexibilidad, facilidad de uso, y claridad de resultados.

Para las siguientes demostraciones primero se requiere obtener los servidores de nombres (DNS), para el dominio en evaluación.

$ dig -t NS presidencia. gob.pe

SPF - Sender Policy Framework

Es un estándar abierto que especificando un método técnico para prevenir la falsificación de direcciones remitente. Más precisamente protege la dirección del remitente del “sobre”, el cual se utiliza para la entrega de los mensajes.

$ dig -t TXT presidencia. gob.pe @ns1.opticalip.com.pe

DKIM - DomainKeys Identified Mail

Permite que una organización asumir responsabilidad para un mensaje en tránsito. La organización es un manejador del mensaje, ya sea como su creador o como un intermediario. Su reputación es la base para evaluar si se debe confiar en el mensaje para su posterior procesamiento, como la entrega. Técnicamente DKIM proporciona un método para validar la identidad de un nombre de dominio asociado a un mensaje a través de la autenticación criptográfica.

$ dig -t TXT mail._domainkey.presidencia.gob.pe @ns1.opticalip.com.pe

DMARC - Domain-based Message Authentication, Reporting & Conformance

Es un protocolo para autenticación, políticas, y reporte de correo electrónico. Se construye sobre los ampliamente desplehados protocolos SPF y DKIM, agregando un vínculo hacia nombre de dominio del autor (“From:”), políticas publicadas para el manejo de errores de autenticación por parte de los destinatarios e informes de los destinatarios hacia los remitentes, para mejorar yvigilar la protección del dominio contra correo electrónico fraudulento.

$ dig -t TXT _dmarc.presidencia.gob.pe @ns1.opticalip.com.pe

Desde la perspectiva de la Ciberseguridad, SPF, DKIM y DMARC, pueden ayudar a prevenir o evitar ataques de Spoofing; en lo referente a mensajes de correo electrónicos falsos. En la actualidad casi la totalidad de proveedores utilizan estas comprobaciones. Así mismo puede ayudar a mantener una buena percepción o reputación sobre una organización. Adicionalmente al hecho de existir requerimientos para cumplimiento.

Fuentes:

http://www.open-spf.org/
https://dmarc.org/
http://dkim.org/
https://linux.die.net/man/1/dig

Búsqueda de Dominios Reversos Asociados utilizando Whois

Body

WHOIS es un protocolo de petición /respuesta orientado a transacciones basado en TCP, el cual se utiliza ampliamente para proporcionar servicios de información a los usuarios de Internet. Aunque originalmente se utilizó para proporcionar servicios de "páginas blancas" e información sobre nombres de dominio registrados, las implementaciones actuales abarcan una rango más amplio de servicios de información. El protocolo entrega su contenido en un formato legible para los seres humanos.

Dominios reversos asociados

Se puede utilizar la opción “-d” para visualizar los dominios reversos asociados con bloques de direcciones IP devueltos por una consulta sobre una dirección IP o rango de direcciones IP.

$ whois -d 194.55. 26.46

Esta opción debe ser utilizada cuando se consulta, una dirección IP, un rango de direcciones IP, o un prefijo de dirección IP.

Esta opción devuelve: una coincidencia exacta o el rango de direcciones IP más pequeño incluyendo la dirección IP, o el rango especificado en la consulta. También devuelve el dominio reverso más pequeño abarcando ese rango de direcciones IP.

Esta opción resulta importante para visualizar el dominio reverso asociado con una dirección IP o rango de direcciones IP, y verificar si dominios reversos han sido creados para todo el espacio de direcciones IP asignada.

En la demostración realizada los resultados muestran el texto “Reverse delegation for customer Deutsche Welle” en el campo de nombre “descr”. Así mismo tres servidores de nombres en los campos de nombre “nserver”. Entre otra información mi relevante.

Fuentes:

https://datatracker.ietf.org/doc/html/rfc3912
https://www.ripe.net/publications/docs/ripe-401/
https://linux.die.net/man/1/whois
https://www.apnic.net/manage-ip/using-whois/searching/query-options/

Conversión del Formato VDI hacia el Formato Raw (DD) para propósitos forenses

Body

VBoxManage es la interfaz en línea de comandos de Oracle VM VirtualBox. Con esto se puede controlar completamente Oracle VM VirtualBox desde la línea de comandos del sistema operativo anfitrión. VBoxManage soporta todas las funciones a las cuales brinda acceso la interfaz gráfica de usuario, pero soporta mucho más a sólo esto. Expone todas las funcionalidades del motor de virtualización, incluso aquellas a las cuales no se puede acceder desde la GUI.

Archivos de Imágenes de Disco (VDI, VMDK, VHD, HDD)

Los archivos de imagen de disco residen en el sistema anfitrión, y son vistos por los sistemas invitados como discos duros de una geometría determinada. Cuando un sistema operativo invitado lee o escribe hacia un un disco duro, Oracle VM VirtualBox redirige la solicitud hacia el archivo de imagen.

Como un disco físico, un disco virtual tiene un tamaño o capacidad la cual se debe especificar cuando se crea el archivo de imagen. A diferencia de un disco físico, Oracle VM VirtualBox permite expandir un archivo de imagen después de su creación, incluso si ya contiene datos.

Oracle VM VirtualBox admite los siguientes tipos de archivos de imagen de disco:

VDI. Normalmente Oracle VM VirtualBox utiliza su propio formato de contenedor para los discos duros invitados. Esto es denominado como archivo de imagen de disco virtual (VDI). Este formato se utiliza cuando se crea una nueva máquina virtual con un nuevo disco.

VMDK. Oracle VM VirtualBox también soporta completamente el formato contenedor VMDK, el cual utilizan muchos otros productos para virtualización, como VMware.

VHD. Oracle VM VirtualBox también es soporta totalmente el formato VHD utilizado por Microsoft.

HDD. También se admiten los archivos de imagen para la versión 2 de Parallels (formato HDD).

Debido a la falta de documentación del formato, las versiones más nuevas, como la 3 y la 4, no son soportada. Se puede convertir tales archivos de imagen hacia la versión 2 del formato utilizando las herramientas proporcionadas por Parallels.

Se ejecuta el comando VBoxManage utilizando la opción clonehd. Esta opción crear un clon de un medio.

$ VBoxManage clonehd Win10-disk001.vdi Windows_10_For.dd -format raw

La opción “-format” especifica el formato del archivo del medio de destino, si es diferente del formato del medio de origen. Los valores válidos son VDI, VMDK, VHD, RAW y otros.

Por compatibilidad con versiones anteriores de Oracle VM VirtualBox, se puede utilizar los comandos clonevdi y clonehd, en lugar del comando clonemedium

Con el archivo en formato RAW (dd) o en crudo, se puede proceder a realizar un proceso de análisis forense, previa verificación de sus respectivos hashes.

Fuentes:

https://www.virtualbox.org/manual/ch08.html
https://docs.oracle.com/en/virtualization/virtualbox/6.0/user/vdidetail…

Buscar Direcciones de Correo Electrónico en Google

Body

El buscador Google es un motor de búsqueda completamente automatizado, el cual utiliza software conocido como rastreadores web (Web Crawlers), los cuales exploran la web regularmente para encontrar páginas y añadirlas a su índice. De hecho la gran mayoría de páginas listadas en los resultados no son manualmente enviadas para su inclusión, sino son encontradas y añadidas automáticamente cuando los rastreadores web exploran la web.

La manera más simple de buscar una dirección de correo electrónico en Google es colocando la dirección de correo electrónico en el recuadro de búsqueda.

usuario @ example. org

El número de resultados obtenidos por Google es de 155.

Se realiza una nueva búsqueda, pero ahora se delimita la dirección de correo electrónico utilizando dobles comillas. Esto permite realizar la búsqueda exactamente de aquello delimitado entre las comillas simples, en lugar de sean interpretadas como palabras individuales.

"usuario @ example. org"

Ahora el número de resultados obtenidos por Google es de 42. Siendo notoria la diferencia, esto permite encontrar todo lo indexado por Google conteniendo exactamente la dirección de correo electrónico buscada.

Este mismo criterio puede ser aplicado a otros motores de búsqueda como Bing y Yandex.

Tener siempre en consideración Google no lo indexa todo, ni tampoco presenta los resultados con la relevancia la cual podemos requerir. Consecuentemente resulta importante también buscar en otros motores de búsqueda.

El siguiente procedimiento será buscar en todos los resultados donde se encontró la correo electrónico buscada, expandiendo así el proceso, hacia sitios web, archivos diversos formatos, como PDF, redes sociales, blogs, etc.

Fuentes:

https://developers.google.com/search/docs/fundamentals/how-search-works…
https://www.googleguide.com/select_terms.html