Caminando entre bits…

Entradas etiquetadas como as ‘DragonJar’

De-Ice I y Sec-Track I

Octubre 31, 2009 · Dejar un comentario

Bueno, ahora vengo a presentaros un proyecto en el que estoy dedicando mi tiempo libre últimamente se trata de Sec-track

¿Qué es Sec-Track?

Sec-Track es un proyecto colaborativo que ofrece un repositorio de recursos relacionados con la implementación y desarrollo de laboratorios  de entrenamiento e investigación sobre Seguridad Informatica. Estos recursos son distribuidos por  medio de entornos virtualizados que asemejan entornos reales, dichos entornos pueden ser implementados en diferentes ambientes de capacitación e investigación.
Sec-Track ofrece también un amplio repertorio de instrucciones para la implementación de entornos de virtualización, con la finalidad de que cada interesado en implementar uno de los laboratorios y/o entornos disponibles pueda hacerlo simplemente siguiendo dichas instrucciones.
Sec-Track pone a disposición la documentación base para el desarrollo de entornos virtualizados por parte de los usuarios inscritos. Estos serán publicados en Sec-Track y cualquier persona, organización o entidad podrá descargarlos y tratar de cumplir con los objetivos propuestos por sus desarrolladores.

Otro de los objetivos de Sec-Track es ofrecer un espacio colaborativo en el cual, las diferentes comunidades y usuarios puedan publicar sus propios entornos de entrenamiento, retos y pruebas en cualquiera de las diferentes temáticas, con la finalidad de que las demás comunidades puedan descargarlos e implementarlos para buscar una solución al mismo, pero aun más importante generar la respectiva documentación de dicho proceso.

¿Cómo puedo participar en Sec-Track?

Todos son bienvenidos a Sec-Track (Y).

Sec-Track pone a disposición una serie de recursos para la implementación de laboratorios de entrenamiento en seguridad (entornos, retos, wargames, pruebas, CTF, documentación, etc) cada usuario puede descargar y poner a prueba sus conocimientos o adquirirlos siguiendo los video tutoriales y documentación publicada.

Los usuarios más avanzados pueden proponer nuevas formas de cumplir dichos objetivos, nuevos retos o mejorar los ya existentes.

¿Cuáles son las temáticas que abarca Sec-Track?

Sec-Track tratará de cubrir cada una de las temáticas relacionadas con la seguridad informática. Por ahora ofrecemos los siguientes campos de acción:

  • Test de Penetración
  • Análisis de Malware
  • Criptografía
  • Aseguramiento (Hardening)
  • Ingeniería Inversa
  • Informática Forense
  • Gobierno IT

¿Cómo funciona Sec-Track?

Sec-Track es un proyecto colaborativo. Por lo tanto espera ser autosostenible a nivel de contenido y publicaciones.

Esto quiere decir que se publicarán una serie de entornos, retos, pruebas, wargames, etc. y estos deben ser solucionados por sus propios usuarios (comunidades, grupos de estudio e investigación, empresas, listas de seguridad, etc.)

La finalidad es que alguno de estos grupos publique la respectiva documentación (papers, video tutoriales, audios) de como realizó dicho proceso.

Si uno de estos grupos tiene una nueva propuesta basada en los entornos publicados o sobre nuevos entornos (aseguramiento, análisis forense, aumento de complejidad de las técnicas utilizadas) puede utilizar el formulario de contacto y enviar estas ideas para que sean implemetadas en Sec-Track.

En otras palabras:

Sec-Track: Propone y reta.

Tu: Descargas, implementas, solucionas, analizas, aseguras, mejoras, documentas y compartes!…Propones y retas!!

Bueno una vez sabemos que es sec-track, veamos que objetivos nos proponen:

Estos son algunos de los objetivos generales a alcanzar mediante el desarrollo de los entornos De-Ice I, II, III y PwnOS.

  • Realizar un mapeo de red e identificar la dirección IP del sistema objetivo.
  • Identificar el estado de los puertos (abietos/filtrados).
  • Identificar  los servicios / aplicaciones / versiones / Sistema Operativo.
  • Identificar la estructura de directorios.
  • Identificar los posibles usuarios del sistema.
  • Listar las técnicas de obtención de dichos datos.
  • Listar los resultados obtenidos.
  • Búsqueda y verificación de vulnerabilidades y errores de configuración por aplicación o servicio.
  • Listar las posibles vulnerabilidades y puntos de intrusión.
  • Testear las aplicaciones (autenticación, firewalls, exploits, etc)
  • Penetración del sistema, descifrado de passwords, escalada de privilegios, recuperación de información crítica, etc.
  • Backdoors y cubrimiento de huellas.
  • Reporte básico.

Primero nos descargaremos la ISO y la haremos correr en VMware, la explicación de cómo hacer eso la podeis encontrar aquí:

Instalación del primer entorno en VMware

Para empezar también nos cuentan la misión que hemos de llevar a cabo:

Un CEO de una pequeña empresa que ha sido presionado por el Comité Administrativo para ser objeto de un Test de Penetración a realizarse desde la empresa. El Director General afirma que su empresa es segura, cree además de que este Test de Penetración será un enorme desperdicio de dinero, sobre todo porque ya tiene una solución de exploración (escaneo) de vulnerabilidades (Nessus).
Para hacer “felices” a los del Comité Administrativo, él decide contratarlo a usted y le da un plazo de 5 días para realizar el trabajo, pues como se mencionó él no cree que la empresa sea vulnerable a cualquier intento de acceso no autorizado.
Su tarea es analizar solo un servidor en el cual se aloja una página Web que ofrece información de contacto de la misma.El Director General espera que usted intente con todos los tipos de ataques que estén a su disposición, pues está seguro de que usted no podrá vulnerar el sistema y obtener acceso.

Una vez sabemos lo que hay que hacer… empezamos.

Identificación del Host

Como hemos podido leer que la máquina tiene asiganada de manera automática una dirección IP 192.168.1.100.

Vamos a ver si responde a los pings

ping_maquina_local

Como podéis comprobar la máquina en cuestión no responde a los pings que he lanzado.

Seguramente tenga capado el tema del protocolo ICMP.

A si que, directamente le mandaremos un escaneo con nmap, y veremos que esta corriendo en esta máquina.

Identificando Servicios

Ahora pondremos nmap y realizaremos el escaneo, para realizar el escaneo me he echo uno de personalizado, la sintaxis es la siguiente:

nmap -sV -T5 -O -A -v -PE -PS22,25,80 -PA21,23,80,3389

Con esto obtendríamos estos resultados:

Starting Nmap 5.00 ( http://nmap.org ) at 2009-10-30 00:10 Hora estándar romance

NSE: Loaded 30 scripts for scanning.

Initiating ARP Ping Scan at 00:10

Scanning 192.168.1.100 [1 port]

Completed ARP Ping Scan at 00:11, 1.56s elapsed (1 total hosts)

Initiating Parallel DNS resolution of 1 host. at 00:11

Completed Parallel DNS resolution of 1 host. at 00:11, 16.48s elapsed

Initiating SYN Stealth Scan at 00:11

Scanning 192.168.1.100 [1000 ports]

Discovered open port 143/tcp on 192.168.1.100

Discovered open port 80/tcp on 192.168.1.100

Discovered open port 110/tcp on 192.168.1.100

Discovered open port 21/tcp on 192.168.1.100

Discovered open port 25/tcp on 192.168.1.100

Discovered open port 22/tcp on 192.168.1.100

Completed SYN Stealth Scan at 00:11, 3.53s elapsed (1000 total ports)

Initiating Service scan at 00:11

Scanning 6 services on 192.168.1.100

Completed Service scan at 00:11, 6.41s elapsed (6 services on 1 host)

Initiating OS detection (try #1) against 192.168.1.100

NSE: Script scanning 192.168.1.100.

NSE: Starting runlevel 1 scan

Initiating NSE at 00:11

Completed NSE at 00:11, 7.42s elapsed

NSE: Script Scanning completed.

Host 192.168.1.100 is up (0.0028s latency).

Interesting ports on 192.168.1.100:

Not shown: 992 filtered ports

PORT    STATE  SERVICE  VERSION

20/tcp  closed ftp-data

21/tcp  open   ftp      vsftpd (broken: could not bind listening IPv4 socket)

22/tcp  open   ssh      OpenSSH 4.3 (protocol 1.99)

|_ sshv1: Server supports SSHv1

|  ssh-hostkey: 2048 83:4f:8b:e9:ea:84:20:0d:3d:11:2b:f0:90:ca:79:1c (RSA1)

|  2048 6f:db:a5:12:68:cd:ad:a9:9c:cd:1e:7b:97:1a:4c:9f (DSA)

|_ 2048 ab:ab:a8:ad:a2:f2:fd:c2:6f:05:99:69:40:54:ec:10 (RSA)

25/tcp  open   smtp     Sendmail 8.13.7/8.13.7

|  smtp-commands: EHLO slax.example.net Hello [192.168.1.2], pleased to meet you, ENHANCEDSTATUSCODES, PIPELINING, 8BITMIME, SIZE, DSN, ETRN, AUTH DIGEST-MD5 CRAM-MD5, DELIVERBY, HELP

|_ HELP 2.0.0 This is sendmail version 8.13.7 2.0.0 Topics: 2.0.0 HELO EHLO MAIL RCPT DATA 2.0.0 RSET NOOP QUIT HELP VRFY 2.0.0 EXPN VERB ETRN DSN AUTH 2.0.0 STARTTLS 2.0.0 For more info use “HELP <topic>”. 2.0.0 To report bugs in the implementation see 2.0.0 http://www.sendmail.org/email-addresses.html 2.0.0 For local information send email to Postmaster at your site. 2.0.0 End of HELP info

80/tcp  open   http     Apache httpd 2.0.55 ((Unix) PHP/5.1.2)

110/tcp open   pop3     Openwall popa3d

|_ pop3-capabilities: capa

143/tcp open   imap     UW imapd 2004.357

|_ imap-capabilities: BINARY THREAD=ORDEREDSUBJECT IMAP4REV1 STARTTLS LOGIN-REFERRALS UNSELECT SCAN SASL-IR THREAD=REFERENCES MAILBOX-REFERRALS SORT AUTH=LOGIN LITERAL+ IDLE NAMESPACE MULTIAPPEND

443/tcp closed https

MAC Address: 00:0C:29:FD:F9:27 (VMware)

Device type: general purpose

Running: Linux 2.6.X

OS details: Linux 2.6.13 – 2.6.24

Uptime guess: 0.758 days (since Thu Oct 29 06:00:44 2009)

Network Distance: 1 hop

TCP Sequence Prediction: Difficulty=196 (Good luck!)

IP ID Sequence Generation: All zeros

Service Info: Host: slax.example.net; OS: Unix

Read data files from: C:\Archivos de programa\Nmap

OS and Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .

Nmap done: 1 IP address (1 host up) scanned in 43.14 seconds

Raw packets sent: 2023 (91.338KB) | Rcvd: 24 (1138B)

Que si lo queréis ver mejor en una imagen:

escaneo_nmap

Y después de haber echo el escaneo podemos ver que esta corriendo como servicios, FTP, SSH, SMTP, HTTP, POP3, IMAP y HTTPS

Podéis también verlo en una imagen:

servicios_nmap

Escaneadores de Vulnerabilidades

Una vez ya sabemos que servicios está corriendo es el momento de ver mejor en que versión están corriendo y si es vulnerable a exploits.

Primero utilizaremos Acunetix.

Acunetix,

Es un escaner de vulnerabilidades en servidores web como SQL injection, Xss y otras más. HTTP funciona en el puerto 80, con acunetix se puede hacer sniffing, y nos debe de servir para poder proteger nuestros sitios de ataques de hackers que tienen las páginas web a su disposición las 24 horas del día para escanearlas y afectarnos en las vulnerabilidades que tengamos.

Después de realizar el escaneo que podeis descargar de aqui:

Informe de escaneo de Acunetix.

Podemos ver que la vesión de PHP no está actualizada y que es vulnerable, SSH tambiñen presenta problemas.

También realizé un escaneo con Shadow Security Scanner

Shadow Security Scanner

Shadow Security Scanner (escáner de vulnerabilidad de la red de evaluación) se ha ganado el nombre de los más rápidos – y con mejores resultados – escáner de seguridad en su sector de mercado, superando muchas marcas famosas. Shadow Security Scanner ha sido desarrollada para proporcionar una detección segura, rápida y fiable de una amplia gama de agujeros sistema de seguridad. . Después de completar el escaneo del sistema, Shadow Security Scanner analiza los datos recogidos, localiza las vulnerabilidades y posibles errores en el servidor las opciones de ajuste, y sugiere posibles vías de solución del problema. Shadow Security Scanner emplea un único algoritmo de seguridad del sistema de análisis basada en un conjunto patentado de “intelectual” . Shadow Security Scanner realiza la exploración del sistema con una velocidad y con tal precisión a fin de poder competir con los profesionales de TI los servicios de seguridad y hackers, intentando entrar en su red.

También me ha encontrado varias vulnerabilidades a nivel web, como PHP y SSH.

Aquí os podéis descargar el informe realizado con Shadow Security Scanner:

Informe Shadow Security Scanner

Y por último e echo un escaneo con Nessus:

Nessus

es un programa de escaneo de vulnerabilidades en diversos sistemas operativos. Consiste en nessusd, el daemon Nessus, que realiza el escaneo en el sistema objetivo, y nessus, el cliente (basado en consola o gráfico) que muestra el avance y reporte de los escaneos. Desde consola nessus puede ser programado para hacer escaneos programados con cron.En operación normal, nessus comienza escaneando los puertos con nmap o con su propio escaneador de puertos para buscar puertos abiertos y después intentar varios exploits para atacarlo. Las pruebas de vulnerabilidad, disponibles como una larga lista de plugins, son escritos en NASL (Nessus Attack Scripting Language, Lenguaje de Scripting de Ataque Nessus por sus siglas en inglés), un lenguaje scripting optimizado para interacciones personalizadas en redes.

Opcionalmente, los resultados del escaneo pueden ser exportados en reportes en varios formatos, como texto plano, XML, HTML, y LaTeX. Los resultados también pueden ser guardados en una base de conocimiento para referencia en futuros escaneos de vulnerabilidades.

Algunas de las pruebas de vulnerabilidades de Nessus pueden causar que los servicios o sistemas operativos se corrompan y caigan. El usuario puede evitar esto desactivando “unsafe test” (pruebas no seguras) antes de escanear.

También me ha encontrado las mismas fallas que los anteriores.

El informe de Nessus lo podeis descargar de aqui:

Informe de Nessus

Ahora que ya se que servicios está corriendo y las vulnerabilidades podré empezar a probar a lgún exploit para aprovecharme de alguna vulnerabilidad.

Hasta la próxima!

Categorías: Programación Web · Protocolo · Proyectos · Seguridad · Seguridad de la información · Sistemas Operativos
Etiquetado: , , , , , , ,