Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Guía práctica - hacking con Kali Linux, Resúmenes de Informática

Se trata de todas las bases de hackeo.

Tipo: Resúmenes

2022/2023

Subido el 02/10/2023

valentina-lineros
valentina-lineros 🇨🇴

1 documento

1 / 98

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Hacking con Kali Linux
Guía de Prácticas
Alonso Eduardo
Caballero Quezada
Correo electrónico: [email protected]
Sitio web: www.reydes.com
Versión 2.7 - Mayo del 2018
“KALI LINUX ™ is a trademark of Offensive Security.”
Puede obtener la versión más actual de este documento en: http://www.reydes.com/d/?q=node/2
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62

Vista previa parcial del texto

¡Descarga Guía práctica - hacking con Kali Linux y más Resúmenes en PDF de Informática solo en Docsity!

Hacking con Kali Linux

Guía de Prácticas

Alonso Eduardo

Caballero Quezada

Correo electrónico: [email protected]

Sitio web: www.reydes.com

Versión 2.7 - Mayo del 2018

“KALI LINUX ™ is a trademark of Offensive Security.”

Puede obtener la versión más actual de este documento en: http://www.reydes.com/d/?q=node/

Sobre el Instructor

Alonso Eduardo Caballero Quezada es EXIN Ethical Hacking Foundation Certificate, LPIC-1 Linux Administrator, LPI Linux Essentials Certificate, IT Masters Certificate of Achievement en Network Security Administrator, Hacking Countermeasures, Cisco CCNA Security, Information Security Incident Handling, Digital Forensics, Cybersecurity Management, Cyber Warfare and Terrorism, Enterprise Cyber Security Fundamentals y Phishing Countermeasures. Ha sido instructor en el OWASP LATAM Tour Lima, Perú del año 2014 y expositor en el 0x11 OWASP Perú Chapter Meeting 2016, además de Conferencista en PERUHACK 2014, instructor en PERUHACK2016NOT, y conferencista en 8.8 Lucky Perú 2017. Cuenta con más de catorce años de experiencia en el área y desde hace diez años labora como consultor e instructor independiente en las áreas de Hacking Ético & Forense Digital. Perteneció por muchos años al grupo internacional de seguridad RareGaZz y al grupo peruano de seguridad PeruSEC. Ha dictado cursos presenciales y virtuales en Ecuador, España, Bolivia y Perú, presentándose también constantemente en exposiciones enfocadas a Hacking Ético, Forense Digital,

GNU/Linux y Software Libre. Su correo electrónico es [email protected] y su página personal está

en: http://www.ReYDeS.com.

Material Necesario

Para desarrollar adecuadamente el presente curso, se sugiere al participante instalar y configurar las máquinas virtuales de Kali Linux y Metasploitable 2 utilizando VirtualBox VMware Player, Hyper-V, u otro software para virtualización.

  • Kali Linux Vm 32 Bit [Zip]

Enlace: https://images.offensive-security.com/virtual-images/kali-linux-2018.2-vm-i386.zip

  • Kali Linux Vm 64 Bit [Zip]

Enlace: https://images.offensive-security.com/virtual-images/kali-linux-2018.2-vm-amd64.zip

  • Metasploitable 2.

Enlace: https://sourceforge.net/projects/metasploitable/files/Metasploitable2/

  • Software para Virtualización

VirtualBox

Enlace: https://www.virtualbox.org/wiki/Downloads

1. Metodología de una Prueba de Penetración

Una Prueba de Penetración (Penetration Testing) es el proceso utilizado para realizar una evaluación o auditoría de seguridad de alto nivel. Una metodología define un conjunto de reglas, prácticas, procedimientos y métodos a seguir e implementar durante la realización de cualquier programa para auditoría en seguridad de la información. Una metodología para pruebas de penetración define una hoja de ruta con ideas útiles y prácticas comprobadas, las cuales deben ser manejadas cuidadosamente para poder evaluar correctamente los sistemas de seguridad.

1.1 Tipos de Pruebas de Penetración:

Existen diferentes tipos de Pruebas de Penetración, las más comunes y aceptadas son las Pruebas de Penetración de Caja Negra (Black-Box), las Pruebas de Penetración de Caja Blanca (White-Box) y las Pruebas de Penetración de Caja Gris (Grey-Box).

  • Prueba de Caja Negra.

No se tienen ningún tipo de conocimiento anticipado sobre la red de la organización. Un ejemplo de este escenario es cuando se realiza una prueba externa a nivel web, y está es realizada únicamente con el detalle de una URL o dirección IP proporcionado al equipo de pruebas. Este escenario simula el rol de intentar irrumpir en el sitio web o red de la organización. Así mismo simula un ataque externo realizado por un atacante malicioso.

  • Prueba de Caja Blanca.

El equipo de pruebas cuenta con acceso para evaluar las redes, y se le ha proporcionado los de diagramas de la red, además de detalles sobre el hardware, sistemas operativos, aplicaciones, entre otra información antes de realizar las pruebas. Esto no iguala a una prueba sin conocimiento, pero puede acelerar el proceso en gran magnitud, con el propósito de obtener resultados más precisos. La cantidad de conocimiento previo permite realizar las pruebas contra sistemas operativos específicos, aplicaciones y dispositivos residiendo en la red, en lugar de invertir tiempo enumerando aquello lo cual podría posiblemente estar en la red. Este tipo de prueba equipara una situación donde el atacante puede tener conocimiento completo sobre la red interna.

  • Prueba de Caja Gris

El equipo de pruebas simula un ataque realizado por un miembro de la organización inconforme o descontento. El equipo de pruebas debe ser dotado con los privilegios adecuados a nivel de usuario y una cuenta de usuario, además de permitirle acceso a la red interna.

2. Máquinas Vulnerables

2.1 Maquinas Virtuales Vulnerables

Nada puede ser mejor a tener un laboratorio donde practicar los conocimientos adquiridos sobre Pruebas de Penetración. Esto aunado a la facilidad proporciona por el software para realizar virtualización, lo cual hace bastante sencillo crear una máquina virtual vulnerable personalizada o descargar desde Internet una máquina virtual vulnerable.

A continuación se detalla un breve listado de algunas máquinas virtuales creadas específicamente conteniendo vulnerabilidades, las cuales pueden ser utilizadas para propósitos de entrenamiento y aprendizaje en temas relacionados a la seguridad, hacking ético, pruebas de penetración, análisis de vulnerabilidades, forense digital, etc.

  • Metasploitable 3

Enlace de descarga: https://github.com/rapid7/metasploitable

  • Metasploitable

Enlace de descarga: https://sourceforge.net/projects/metasploitable/files/Metasploitable2/

  • Metasploitable

Enlace de descarga: https://www.vulnhub.com/entry/metasploitable-1,28/

Vulnhub proporciona materiales que permiten a cualquier interesado ganar experiencia práctica en seguridad digital, software de computadora y administración de redes. Incluye un extenso catálogo de maquinas virtuales y “cosas” las cuales se pueden de manera legal; romper, “hackear”, comprometer y explotar.

Sitio Web: https://www.vulnhub.com/

En el centro de evaluación de Microsoft se puede encontrar diversos productos para Windows, incluyendo sistemas operativos factibles de ser descargados y evaluados por un tiempo limitado.

Sitio Web: https://www.microsoft.com/en-us/evalcenter/

2.2 Introducción a Metasploitable

Metasploitable 2 es una máquina virtual basada en GNU/Linux creada intencionalmente para ser vulnerable. Esta máquina virtual puede ser utilizada para realizar entrenamientos en seguridad, evaluar herramientas de seguridad, y practicar técnicas comunes en pruebas de penetración.

Esta máquina virtual nunca debe ser expuesta a una red poco fiable, se sugiere utilizarla en modos NAT o Host-only.

Imagen 2-1. Consola presentada al iniciar Metasploitable

Enlace de descarga: https://sourceforge.net/projects/metasploitable/files/Metasploitable2/

3.2 Descargar Kali Linux

Nunca descargar las imágenes de Kali Linux desde otro lugar diferente a las fuentes oficiales. Siempre asegurarse de verificar las sumas de verificación SHA256 de loas archivos descargados, comparándolos contra los valores oficiales. Podría ser fácil para una entidad maliciosa modificar una instalación de Kali Linux conteniendo “exploits” o malware y hospedarlos de manera no oficial.

Kali Linux puede ser descargado como imágenes ISO para computadoras basadas en Intel, esto para arquitecturas de 32-bits o 64 bits. También puede ser descargado como máquinas virtuales previamente construidas para VMware Player, VirtualBox y Hyper-V. Finalmente también existen imágenes para la arquitectura ARM, los cuales están disponibles para una amplia diversidad de dispositivos.

Kali Linux puede ser descargado desde la siguiente página:

https://www.kali.org/downloads/

3.3 Instalación de Kali Linux

Kali Linux puede ser instalado en un un disco duro como cualquier distribución GNU/Linux, también puede ser instalado y configurado para realizar un arranque dual con un Sistema Operativo Windows, de la misma manera puede ser instalado en una unidad USB, o instalado en un disco cifrado.

Se sugiere revisar la información detallada sobre las diversas opciones de instalación para Kali Linux, en la siguiente página: http://docs.kali.org/category/installation

3.4 Cambiar la Contraseña del root

Por una buena práctica de seguridad se recomienda cambiar la contraseña por defecto asignada al usuario root. Esto dificultará a los usuarios maliciosos obtener acceso hacia sistema con esta clave por defecto.

passwd root

Enter new UNIX password: Retype new UNIX password:

[*] La contraseña no será mostrada mientras sea escrita y está deberá ser ingresada dos veces.

3.5 Iniciando Servicios de Red

Kali Linux incluye algunos servicios de red, lo cuales son útiles en diversos escenarios, los cuales están deshabilitadas por defecto. Estos servicios son, HTTP, Mestaploit, PostgreSQL, OpenVAS y SSH.

De requerirse iniciar el servicio HTTP se debe ejecutar el siguiente comando

service apache2 start

Estos servicios también pueden iniciados y detenidos desde el menú: Applications -> Kali Linux -> System Services.

Kali Linux proporciona documentación oficial sobre varios de sus aspectos y características. La documentación está en constante trabajo y progreso. Esta documentación puede ser ubicada en la siguiente página:

https://docs.kali.org/

Imagen 3-1. Escritorio de Kali Linux

4. Shell Scripting

El Shell es un interprete de comandos. Más a únicamente una capa aislada entre el Kernel del sistema operativo y el usuario, es también un poderoso lenguaje de programación. Un programa shell llamado un script, es un herramienta fácil de utilizar para construir aplicaciones “pegando” llamadas al sistema, herramientas, utilidades y archivos binarios. El Shell Bash permite automatizar una acción, o realizar tareas repetitivas las cuales consumen una gran cantidad de tiempo.

Para la siguiente práctica se utilizará un sitio web donde se publican listados de proxys. Utilizando comandos del shell bash, se extraerán las direcciones IP y puertos de los Proxys hacia un archivo.

wget http://www.us-proxy.org/

grep "" index.html | cut -d ">" -f 3,5 | cut -d "<" -f 1,2 | sed

's/</td>/:/g'

Imagen 4-1. Listado de las irecciones IP y Puertos de los Proxys.

Guía Avanzada de Scripting Bash: http://tldp.org/LDP/abs/html/

5. Capturar Información

En esta fase se intenta recolectar la mayor cantidad de información posible sobre el objetivo en evaluación, como posibles nombres de usuarios, direcciones IP, servidores de nombre, y otra información relevante. Durante esta fase cada fragmento de información obtenida es importante y no debe ser subestimada. Tener en consideración, la recolección de una mayor cantidad de información, generará una mayor probabilidad para un ataque satisfactorio.

El proceso donde se captura la información puede ser dividido de dos maneras. La captura de información activa y la captura de información pasiva. En el primera forma se recolecta información enviando tráfico hacia la red objetivo, como por ejemplo realizar ping ICMP, y escaneos de puertos TCP/UDP. Para el segundo caso se obtiene información sobre la red objetivo utilizando servicios o fuentes de terceros, como por ejemplo motores de búsqueda como Google y Bing, o utilizando redes sociales como Facebook o LinkedIn.

5.1 Fuentes Públicas

Existen diversos recursos públicos en Internet , los cuales pueden ser utilizados para recolectar información sobre el objetivo en evaluación. La ventaja de utilizar este tipo de recursos es la no generación de tráfico directo hacia el objetivo, de esta manera se minimizan la probabilidades de ser detectados. Algunas fuentes públicas de referencia son:

  • The Wayback Machine: http://archive.org/web/web.php
  • Netcraft: http://searchdns.netcraft.com/
  • ServerSniff http://serversniff.net/index.php
  • Robtex https://www.robtex.com/
  • CentralOps https://centralops.net/co/

5.2 Capturar Documentos

Se utilizan herramientas para recolectar información o metadatos desde los documentos disponibles

Imagen 5-1. Parte de la información de Software y correos electrónico de los documentos analizados

5.3 Información de los DNS

DNSenum https://code.google.com/archive/p/dnsenum/

El propósito de DNSenum es capturar tanta información como sea posible sobre un dominio. Realizando actualmente las siguientes operaciones: Obtener las direcciones IP del host (Registro A). Obtener los servidores de nombres. Obtener el registro MX. Realizar consultas AXFR sobre servidores de nombres y versiones de BIND. Obtener nombres adicionales y subdominios mediante Google (“allinurl -www site:dominio”). Fuerza bruta a subdominios de un archivo, puede también realizar recursividad sobre subdominios los cuales tengan registros NS. Calcular los rangos de red de dominios en clase y realizar consultas whois sobre ellos. Realizar consultas inversas sobre rangos de red (clase C y/o rangos de red). Escribir hacia un archivo domain_ips.txt los bloques IP.

cd /usr/share/dnsenum/

dnsenum --enum hackthissite.org

La opción “--enum” es un atajo equivalente a la opción “--thread 5 -s 15 -w”. Donde:

La opción “--threads” define el número de hilos que realizarán las diferentes consultas.

La opción “-s” define el número máximo de subdominios a ser arrastrados desde Google.

La opción “-w” realiza consultas Whois sobre los rangos de red de la clase C.

Imagen 5-2. Parte de los resultados obtenidos por dnsenum

fierce https://www.aldeid.com/wiki/Fierce

Fierce es una escaner semi ligero para realizar una enumeración, la cual ayude a los profesionales en pruebas de penetración, a localizar espacios IP y nombres de host no continuos para dominios específicos, utilizando cosas como DNS, Whois y ARIN. En realidad se trata de un precursor de las

Imagen 5-3. Ejecución de fierce y la búsqueda de subdominios.

dmitry https://linux.die.net/man/1/dmitry

Dmitry (Deepmagic Information Gathering Tool) es una programa en línea de comando para Linux, el cual permite capturar tanta información como sea posible sobre un host, desde un simple Whois hasta reportes del tiempo de funcionamiento o escaneo de puertos.

dmitry

dmitry -w -e -n -s [Dominio] -o /tmp/resultado_dmitry.txt

La opción “-w” permite realizar una consulta whois a la dirección IP de un host.

La opción “-e” permite realizar una búsqueda de todas las posibles direcciones de correo electrónico.

La opción “-n” intenta obtener información desde netcraft sobre un hot.

La opción “-s” permite realizar una búsqueda de posibles subdominios.

La opción “-o” permite definir un nombre de archivos en el cual guardar el resultado.

Imagen 5-4. Información de Netcraft y de los subdominios encontrados.

Aunque existe una opción en Dmitry, la cual permitiría obtener información sobre el dominio desde el sitio web de Netcraft, ya no es funcional. Pero la información puede ser obtenida directamente desde el sitio web de Netcraft.

http://searchdns.netcraft.com/