46
128 CAPITULO V PROPUESTA Para finalizar, en este capítulo se presenta la propuesta que contempla el diseño por el cual esta investigación ha surgido, donde se detalla la descripción de la misma, los objetivos que se pretenden cubrir, el alcance, su justificación, cómo va a estar estructurado el diseño conceptual, qué beneficios traerá la propuesta y por último la factibilidad teórica de ésta. 1. OBJETIVOS DE LA PROPUESTA En este apartado, se expondrán los objetivos que tendrán lugar en la propuesta del diseño de un modelo de auditoría para redes de datos y servicios telemáticos en la Universidad Simón Bolívar, que pretende ser propuesto por el autor de este trabajo de grado con el objeto de subsanar las brechas de seguridad y de garantizar la continuidad de las operaciones sin que la misma se vea seriamente afectada o comprometida. 1.1 OBJETIVO GENERAL Proponer un modelo de auditoría para servicios telemáticos en la Universidad Simón Bolívar. 1.2 OBJETIVOS ESPECÍFICOS Proporcionar las herramientas y pasos necesarios para auditar la red de datos y servicios telemáticos de la Universidad Simón Bolívar.

CAPITULO V PROPUESTA - virtual.urbe.edu

  • Upload
    others

  • View
    13

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CAPITULO V PROPUESTA - virtual.urbe.edu

128

CAPITULO V

PROPUESTA

Para finalizar, en este capítulo se presenta la propuesta que contempla el

diseño por el cual esta investigación ha surgido, donde se detalla la

descripción de la misma, los objetivos que se pretenden cubrir, el alcance, su

justificación, cómo va a estar estructurado el diseño conceptual, qué beneficios

traerá la propuesta y por último la factibilidad teórica de ésta.

1. OBJETIVOS DE LA PROPUESTA

En este apartado, se expondrán los objetivos que tendrán lugar en la

propuesta del diseño de un modelo de auditoría para redes de datos y servicios

telemáticos en la Universidad Simón Bolívar, que pretende ser propuesto por

el autor de este trabajo de grado con el objeto de subsanar las brechas de

seguridad y de garantizar la continuidad de las operaciones sin que la misma

se vea seriamente afectada o comprometida.

1.1 OBJETIVO GENERAL

Proponer un modelo de auditoría para servicios telemáticos en la

Universidad Simón Bolívar.

1.2 OBJETIVOS ESPECÍFICOS

Proporcionar las herramientas y pasos necesarios para auditar la red

de datos y servicios telemáticos de la Universidad Simón Bolívar.

Page 2: CAPITULO V PROPUESTA - virtual.urbe.edu

129

Determinar la factibilidad del modelo propuesta para auditar la

seguridad en la red de datos y servicios telemáticos de la Universidad

Simón Bolívar.

Diagnosticar las vulnerabilidades de seguridad en la red de datos y

servicios telemáticos de la Universidad Simón Bolívar.

2. JUSTIFICACIÓN DE LA PROPUESTA

La siguiente propuesta, consiste en llevar a cabo el diseño de un modelo

de auditoría para redes de datos y servicios telemáticos en la Universidad

Simón Bolívar de manera conceptual y que tiene la intención de cubrir la

necesidad latente que existe de conocer las vulnerabilidades y amenazas que

los delincuentes informáticos tarde o temprano aprovecharan para de alguna

manera dañar la casa de estudio. La propuesta busca proporcionar las

herramientas y pasos necesarios para auditar la red de datos y servicios

telemáticos de la Universidad, valiéndose de metodologías ampliamente

aceptadas por la comunidad profesional y totalmente libres.

Es por eso que el siguiente modelo proporciona lo que para el autor son

las fases a seguir en una auditoría técnica a la red de datos y servicios

telemáticos en la Universidad Simón Bolívar. El modelo de auditoria también

se encargara de proponer diferentes herramientas que pueden hacerse uso

en cada fase del proceso y de esta manera permitir al personal técnico de la

institución aplicar el modelo de manera efectiva y rápida, que permita resolver

las vulnerabilidades y amenazas encontradas disminuyendo los riesgos

informáticos.

Page 3: CAPITULO V PROPUESTA - virtual.urbe.edu

130

3. PRESENTACIÓN DE LA PROPUESTA

Realizado el estudio de la situación actual y teniendo definidos los

ambientes específicos que posee la Universidad Simón Bolívar se

proponen cuatro (4) grandes bloques que permitan cumplir a cabalidad

con las evaluaciones necesarias.

Figura 6 Diagrama de modelo de auditoria a servicios telemáticos

Fuente: Elaboración Propia (2016)

Page 4: CAPITULO V PROPUESTA - virtual.urbe.edu

131

3.1 AUDITORIA FÍSICA

3.1.1 Revisión de Perímetro

Este es un método para evaluar la seguridad física de una organización y

sus bienes, verificando las medidas de seguridad de su perímetro físico.

1. Trazar mapa del perímetro físico

2. Trazar mapa de las medidas de protección físicas (cercas, puertas,

luces.)

3. Trazar mapa de las rutas de acceso y/o métodos físicos

4. Trazar mapa de las áreas no monitoreadas

3.1.2 Revisión de monitoreo

Este es un método para descubrir puntos de acceso monitoreados, a una

organización y sus bienes, por medio del descubrimiento de custodia y

monitoreo electrónico.

1. Enumerar los dispositivos de monitoreo

2. Trazar mapa de sitios protegidos y rutas recorridas

3. Trazar mapa de áreas monitoreadas y no monitoreadas

4. Examinar los dispositivos de monitoreo en búsqueda de limitaciones y

vulnerabilidades

5. Examinar posibles ataques de denegación de servicio sobre los

dispositivos de monitoreo

3.1.3 Evaluación de Controles de Acceso

Este es un método para evaluar los privilegios de acceso a una

organización y a sus bienes a través de puntos de acceso físicos.

Page 5: CAPITULO V PROPUESTA - virtual.urbe.edu

132

1. Enumerar áreas de control de acceso

2. Examinar dispositivos y tipos de control de acceso

3. Examinar tipos de alarmas

4. Determinar el nivel de complejidad en un dispositivo de control de acceso

5. Determinar el nivel de privacidad en un dispositivo de control de acceso

6. Examinar los dispositivos de control de acceso en búsqueda de puntos

débiles y vulnerabilidades

7. Examinar posibles ataques de denegación de servicio sobre los

dispositivos de control de acceso

3.1.4 Revisión de Respuesta de Alarmas

Este es un método para descubrir procedimientos y equipos de alarmas en

una organización por medio del descubrimiento de custodia y monitoreo

electrónico.

1. Enumerar los dispositivos de alarmas

2. Trazar mapa de procedimientos de detonación de alarmas

3. Trazar mapa de precauciones de seguridad activados por alarmas

4. Descubrir las personas involucradas en un procedimiento de alarma

5. Evaluar el incremento de alarma

6. Examinar la activación y desactivación de alarmas

7. Examinar los dispositivos de alarmas en búsqueda de limitaciones y

puntos débiles

8. Examinar posibles ataques de denegación de servicio sobre los

dispositivos de alarma

9. Examinar posibles ataques de denegación de servicio sobre los

procedimientos de alarma

Page 6: CAPITULO V PROPUESTA - virtual.urbe.edu

133

3.1.5 Revisión de Ubicación

Este es un método para obtener acceso a una organización o a sus bienes,

a través de puntos débiles en su ubicación y en su protección contra elementos

externos.

1. Enumerar las áreas de la organización que son visibles (Línea de visión)

2. Enumerar las áreas dentro de la organización que son audibles

(Escuchas electrónicas, con láser y otros dispositivos)

3. Examinar las áreas de la ubicación referentes a las entradas por

abastecimiento en búsqueda de puntos débiles y vulnerabilidades

4. Listar las empresas y empleados de abastecimiento

5. Listar las empresas y empleados de limpieza

6. Listar días y horarios de los ciclos de entregas

7. Listar días y horarios de los ciclos de visitantes

3.1.6 Revisión de Entorno

Este es un método para ganar acceso o dañar a una organización o sus

bienes, a través de puntos débiles en su entorno.

1. Examinar las condiciones de la región respecto de los desastres

naturales

2. Examinar las condiciones del entorno político

3. Examinar los procedimientos de resguardo y recuperación

4. Identificar puntos débiles y vulnerabilidades en los procedimientos de

resguardo y recuperación

5. Identificar posibles ataques de denegación de servicio en los

procedimientos de resguardo y recuperación

6. Examinar impedimentos físicos y electrónicos frente a distintas

condiciones climáticas

Page 7: CAPITULO V PROPUESTA - virtual.urbe.edu

134

7. Comparar procedimientos operacionales con las leyes, costumbres y

ética regional

3.2 AUDITORIA A SERVIDORES Y LABORATORIOS

Respecto de un servidor informático se puede decir que es seguro si está

fuera de peligro, es decir está protegido. Pero, conseguir llegar a esta situación

es prácticamente imposible. No existe un sistema completamente seguro.

Todos los sistemas tienen sus vulnerabilidades, bien del propio sistema

operativo o de las aplicaciones ejecutadas sobre él.

Resulta necesario establecer que la seguridad no es un producto, algo que

viene ya armadito y para llevar. Se trata, más bien, de un proceso en la que el

usuario juega un rol central. En otras palabras, la seguridad es un estado que

debe ser mantenido activamente a través de una interacción adecuada y

responsable entre el usuario y el software y/o sistema operativo instalado.

Ningún software o sistema operativo es capaz de aportar ningún tipo de

seguridad si el administrador tiene configuraciones por defecto o sistemas no

actualizados.

Dicho esto, sí es cierto que hay programas y sistemas operativos más

seguros que otros en tanto tienen menos agujeros o vulnerabilidades, se

actualizan más rápido y, en términos generales, hacen la vida más difícil a los

atacantes. Es en este sentido se pudiera decir, por ejemplo, que Linux es más

seguro que Windows, pero como se viene diciendo no hay sistema 100 %

seguro y Linux no se salva de estas estadísticas. Todos los servidores de la

Universidad Simón Bolívar, independientemente de la distribución se

encuentran en Linux y de aquí se hace tan importante el análisis de los

mismos. El proceso de auditoría a servidores cumple con las 5 fases

principales de un proceso de penetración a sistemas

Page 8: CAPITULO V PROPUESTA - virtual.urbe.edu

135

Figura 7 Fases de auditoria a servidores y laboratorios

Fuente: Elaboración Propia (2016)

3.2.1 Recolección de información.

En este módulo se introduce el tema de las técnicas de recopilación de

información a nivel general, las cuales más tarde serán la base para los

procesos de Explotación y Post Explotación. El Éxito del Ataque Futuro,

dependerá en gran medida del desarrollo de esta primera fase. La recolección

de información, también es conocida como Reconocimiento. La recopilación

de información es una de las etapas más importantes de la auditoria de

seguridad. Aquí es donde el auditor o atacante reúne información básica

acerca del objetivo con el propósito de poder lanzar el ataque o la auditoria

más adelante.

Un aspecto de gran relevancia en el proceso de recolección de información,

es registrar en el informe técnico que se le va a entregar a la dirección de

tecnología de la Universidad Simón Bolívar, la forma en que la información fue

Recoleccion de Informacion

Escaneo y enumeracion

Analisis de Vulnerabilidades

Explotacion

Post-Explotacion

Page 9: CAPITULO V PROPUESTA - virtual.urbe.edu

136

descubierta. Hay diversa maneras de descubrir información en un proceso de

auditoría informática. Algunas de las maneras son

Información pública suministrada por el personal de la empresa

Identificada por búsquedas en google

Por medio de una trasferencia de zona DNS

Examinar la información del registro de dominio en busca de servidores.

Consultar los servidores de nombres primario, secundario y del ISP en

busca de hosts y subdominios.

Encontrar bloques de IPs Ipv6 utilizados a través de consultas a los

DNS.

Examinar la pared externa de la red.

Inspeccionar mensajes de grupos de noticias y listas de distribución en

busca de eventos de los sistemas de la organización a analizar.

Examinar el código fuente y scripts del servidor web en busca de

servidores de aplicación y enlaces internos.

Examinar las cabeceras de los correos electrónicos, los mensajes

devueltos y los destinatarios de las alertas y eventos del sistema de los

servidores.

Buscar información sobre la organización a analizar en los grupos de

noticias.

3.2.1.1 Herramientas básicas

Son muchas las herramientas y protocolos de red disponibles para realizar

recolección de información, algunas herramientas combinadas con técnicas de

ataque o auditoria, funcionan muy bien.

Page 10: CAPITULO V PROPUESTA - virtual.urbe.edu

137

WHOIS

El protocolo WHOIS, aunque es un antiguo protocolo, aún sigue

suministrando información importante a un atacante o a un auditor Informático.

Este protocolo esta por defecto presente en muchos sistemas operativos,

como Linux por ejemplo.

PING

Otra comando de red importante y que está presente en casi todos los

sistemas operativos es el Ping (Utilidad de diagnóstico de red) . Por ejemplo si

se quiere saber la dirección IP de un sitio web o host en especial, el comando

ping seria de mucha utilidad.

TRACERT

Otra utilidad importante en el procesos de recolección de información es el

comando o herramienta de diagnóstico tracert, el cual permite realizar un

procesos de trazado de paquetes y ruta entre un host origen y un host destino,

con lo cual el atacante o auditor informático puede obtener información

relevante al respecto de la víctima o empresa que se está auditando. La

herramienta es llamada tracert en sistemas operativos Windows, y traceroute

en sistemas operativos GNU/Linux

NSLOOKUP

Nslookup es un programa utilizado para saber si el DNS está resolviendo

correctamente los nombres y las IPs. Se utiliza con el comando nslookup, que

funciona tanto en Windows como en UNIX para obtener la dirección IP

conociendo el nombre, y viceversa.

PASSIVERECON

Mozilla Firefox tiene una gran cantidad de seguridad complementos en

forma de plugins. Uno de estos potentes plug-in OSINT es PassiveRecon.

Page 11: CAPITULO V PROPUESTA - virtual.urbe.edu

138

Como su nombre indica, esta herramienta no consulta el dominio

directamente. De hecho, busca todas las bases de datos públicas para recabar

la mayor información posible sobre el objetivo. PassiveRecon proporciona

información whois, los registros MX, información de DNS, y otros datos útiles.

De manera significativa, debido a la naturaleza pasiva del PassiveRecon, el

propietario del dominio que se está consultando no es alertado.

THE HARVESTER

The Harvester es una herramienta para recopilar cuentas de correo

electrónico, nombres de usuario y nombres de host o subdominios de

diferentes fuentes públicas como motores de búsqueda y los servidores de

claves PGP. Esta herramienta está destinada a ayudar a los probadores de

penetración en las primeras etapas del proyecto, es una herramienta muy

simple, pero muy eficaz.

RECON-NG

Recon-ng es un framework de reconocimiento web escrito en Python. Entre

sus características principales se enumeran los módulos independientes,

interacción con base de datos, construcción con funciones confortables, ayuda

interactiva, y completado de comandos. Recon-ng proporciona un poderoso

entorno en el cual se puede realizar reconocimientos open source basado en

web de manera rápida y total.

3.2.2.1 Escaneo y enumeración. Es la segunda fase del proceso de auditoría y consiste en él envió de

paquetes de red a un equipo o host, con el objetivo de identificar el estado de

los puertos TCP o UDP de una máquina. Un puerto en una maquina tiene

varios estados, entre los cuales se puede distinguir Abierto, cerrado o filtrado,

mediante un proceso de escaneo de puertos, además de identificar el estado

Page 12: CAPITULO V PROPUESTA - virtual.urbe.edu

139

de los puertos se pueden ver los servicios activos en esos puertos, firewall,

IDS y sistemas operativos.

Objetivos en el escaneo de puertos y servicios

Detectar sistemas vivos corriendo o ejecutando procesos en una red

Descubrir que puertos están abiertos o tienen programas/servicios en

ejecución.

Descubrir huellas de sistemas operativos, o lo que se conoce como OS

Descubrimiento de direcciones IP en la red o sistema planteado como

objetivo o blanco de ataque.

Identificar Banners

Arquitectura del Sistema evaluado.

3.2.2.2 Herramientas

NMAP

Nmap es una herramienta de código abierto para exploración de red y

auditoría de seguridad. Se diseñó para analizar rápidamente grandes redes,

aunque funciona muy bien contra equipos individuales. Nmap utiliza paquetes

IP en formas originales para determinar qué equipos se encuentran

disponibles en una red, qué servicios (nombre y versión de la aplicación)

ofrecen, qué sistemas operativos (y sus versiones) ejecutan, qué tipo de filtros

de paquetes o cortafuegos se están utilizando así como docenas de otras

características. Nmap tiene muchos tipos de sondeo de puertos, se

mencionaran los que se recomienda.

-sS (sondeo TCP SYN)

El sondeo SYN es el utilizado por omisión y el más popular por buenas

razones. Puede realizarse rápidamente, sondeando miles de puertos por

Page 13: CAPITULO V PROPUESTA - virtual.urbe.edu

140

segundo en una red rápida en la que no existan cortafuegos. El sondeo SYN

es relativamente sigiloso y poco molesto, ya que no llega a completar las

conexiones TCP. También muestra una clara y fiable diferenciación entre los

estados abierto, cerrado, y filtrado. A esta técnica se la conoce habitualmente

como sondeo medio abierto, porque no se llega a abrir una conexión TCP

completa.

Se envía un paquete SYN, como si se fuera a abrir una conexión real y

después se espera una respuesta. Si se recibe un paquete SYN/ACK esto

indica que el puerto está en escucha (abierto), mientras que si se recibe un

RST (reset) indica que no hay nada escuchando en el puerto. Si no se recibe

ninguna respuesta después de realizar algunas retransmisiones entonces el

puerto se marca como filtrado. También se marca el puerto como filtrado si se

recibe un error de tipo ICMP no alcanzable.

-sT (sondeo TCP connect())

Es el sondeo TCP por omisión cuando no se puede utilizar el sondeo SYN.

Esto sucede, por ejemplo, cuando el usuario no tiene privilegios para enviar

paquetes en crudo o cuando se están sondeando redes IPv6. Nmap le pide al

sistema operativo subyacente que establezcan una conexión con el sistema

objetivo en el puerto indicado utilizando la llamada del sistema connect, a

diferencia de otros tipos de sondeo, que escriben los paquetes a bajo nivel.

Ésta es la misma llamada del sistema de alto nivel que la mayoría de las

aplicaciones de red, como los navegadores web o los clientes P2P, utilizan

para establecer una conexión.

Un IDS decente detectará este tipo de escaneo, pero la mayoría de los

equipos no tienen este tipo de sistemas de alarma. Sin embargo, muchos

servicios de los sistemas UNIX habituales añadirán una nota en el syslog, y

Page 14: CAPITULO V PROPUESTA - virtual.urbe.edu

141

algunas veces con un mensaje de error extraño, dado que Nmap realiza la

conexión y luego la cierra sin enviar ningún dato. Los servicios realmente

patéticos morirán cuando esto pasa, aunque esto no es habitual. Un

administrador que vea muchos intentos de conexión en sus registros que

provengan de un único sistema debería saber que ha sido sondeado con este

método.

-sU (sondeos UDP)

Aunque la mayoría de los servicios más habituales en Internet utilizan el

protocolo TCP, los servicios UDP también son muy comunes. Tres de los más

comunes son los servicios DNS, SNMP, y DHCP (puertos registrados 53,

161/162, y 67/68 respectivamente. Es un error evitar es tipo de escaneo,

porque es muy frecuente encontrarse servicios UDP vulnerables y los

atacantes no ignoran estos protocolos. Afortunadamente, Nmap puede

utilizarse para hacer un inventario de puertos UDP. El sondeo UDP se activa

con la opción -sU. Puede combinarse con un tipo de sondeo TCP como el

sondeo SYN (-sS) para comprobar ambos protocolos al mismo tiempo.

Los sondeos UDP funcionan mediante el envío (sin datos) de una cabecera

UDP para cada puerto objetivo. Si se obtiene un error ICMP que indica que el

puerto no es alcanzable (tipo 3, código 3) entonces se marca el puerto

como cerrado. Si se recibe cualquier error ICMP no alcanzable (tipo 3, códigos

1, 2, 9, 10, o 13) se marca el puerto como filtrado. En algunas ocasiones se

recibirá una respuesta al paquete UDP, lo que prueba que el puerto

está abierto. Si no se ha recibido ninguna respuesta después de algunas

retransmisiones entonces se clasifica el puerto como abierto|filtrado. Algunos

otros tipos de escaneos que pueden hacerse con nmap son los siguientes

Page 15: CAPITULO V PROPUESTA - virtual.urbe.edu

142

ZENMAP

Zenmap es la interfaz gráfica de usuario del escáner Nmap oficial de

seguridad, es aplicación libre y de código abierto que tiene como objetivo hacer

Nmap fácil de usar para principiantes vez que proporciona características

avanzadas para los usuarios experimentados de Nmap. Un creador de

comandos permite la creación interactiva de líneas de comandos de Nmap.

Los resultados del análisis se pueden guardar y ver más tarde. Los resultados

del análisis guardado se pueden comparar entre sí para ver en qué se

diferencian. Los resultados de los análisis recientes se guardan en una base

de datos.

ANGRY IP SCANNER

Es un simple y ligero software (no precisa de instalación) permite realizar

escaneos de rangos IP de donde se puede llegar a sacar mucha información

como dirección MAC de los ordenadores, nombre de la máquina, puertos

abiertos, entre otros. Tiene una característica particular y es que el programa

puede ampliarse con librerías DLLs que permitirán conocer nuevos

parámetros, como pudieran ser todos los recursos compartidos de cada uno

de los dispositivos de red.

SHODAN

Shodan es un es un motor de búsqueda que le permite al usuario encontrar

direcciones HTTP conectadas a Internet, no salen en las búsquedas de Google

o similares. Localiza cualquier dispositivo que sea visible en la Red, así que

también se pudiera definir como un buscador de Internet de las Cosas, porque

encuentra frigoríficos, alarmas, cámaras de seguridad, webcams, y cualquier

otro dispositivo conectado.

Page 16: CAPITULO V PROPUESTA - virtual.urbe.edu

143

3.2.3 ANÁLISIS DE VULNERABILIDADES.

Es la etapa que permite establecer las vulnerabilidades de seguridad e

integridad de las redes de datos y servicios telemáticos. Es una solución bajo

demanda semi-automatizada que permite identificar las vulnerabilidades y

reducir las amenazas para la seguridad de la red. Impulsado por una base de

conocimientos de gran envergadura, proporciona una protección continua

contra las amenazas a la seguridad más recientes sin los enormes costos,

recursos y problemas de implementación asociados con el software

tradicional.

OPENVAS

Se trata de un framework que tiene como base servicios y herramientas

para la evaluación de vulnerabilidades y puede utilizarse de forma individual o

como parte del conjunto de herramientas de seguridad. Distribuciones como

Kali Linux ya cuentan con esta herramienta instalada de forma predefinida,

misma que puede ser utilizada a través de dos clientes, desde línea de

comandos (OpenVAS CLI) o una interfaz web).

NESSUS

Nessus es un programa de escaneo de vulnerabilidades en diversos

sistemas operativos. Consiste en un daemon, nessusd, que realiza el escaneo

en el sistema objetivo, y nessus, el cliente (basado en consola o gráfico) que

muestra el avance e informa sobre el estado de los escaneos. Nessus

comienza escaneando los puertos con su propio escáner 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

Page 17: CAPITULO V PROPUESTA - virtual.urbe.edu

144

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.

3.2.4 EXPLOTACIÓN

Cuanto mejor se realizara el proceso de recolección de información y de

escaneo, incluido la parte de enumeración, más facilidad se tendrá a la hora

de llevar a cabo esta fase. Es un ataque directo a un objetivo tomando ventaja

de alguna vulnerabilidad encontrada. Es la cuarta fase de la auditoría. Es una

fase relativamente rápida pero si se puede afirmar que es una de las más

complejas más compleja ya que influye mucho la pericia del auditor.

Riesgos en el proceso.

Caídas de servicios

Caídas del sistema

Denegación de servicios

Perdidas de confidencialidad en datos

Perdidas de disponibilidad

Exposición de información confidencial

Impactos en la estabilidad del sistema evaluado

En este mismo orden de ideas y como primer paso se deben tomar las

vulnerabilidades arrojadas en la fase anterior por las herramientas antes vista

y buscar por aprovecharse de las mismas. La explotación de vulnerabilidades

puede ir desde la ejecución de código malicioso que se aprovecha de un hueco

en el desarrollo de un software hasta un ataque de fuerza bruta a contraseñas

mal implementadas, cada vulnerabilidad tiene su particularidad y es importante

probar cada una de ellas ya que muchas veces existirán falsos positivos en la

fase de anterior.

Page 18: CAPITULO V PROPUESTA - virtual.urbe.edu

145

Existen muchos sitios donde buscar exploits que se aprovechan de las

vulnerabilidades, los recomendados son

- Http //www.exploit-db.com/

- Http //1337day.com/

- Http //www.rapid7.com/db/

- Http //www.cvedetails.com/

Herramienta de explotación automatizada.

El FrameWork de Metasploit es una herramienta de explotación de código

libre, desarrollado para ejecutar exploits a un objetivo remoto. Metasploit

cuenta con la mayor base de datos de exploits públicos y probados. Es una

herramienta bastante poderosa para las auditorias informáticas y es algo que

todo profesional de seguridad debe dominar.

Los pasos básicos para explotar vulnerabilidades usando Metasploit son

1. Elegir y configurar el Exploit (Código que permite aprovechar la

vulnerabilidad de un sistema)

2. Opcionalmente confirmar si el objetivo es susceptible al exploit elegido

3. Elegir y configurar el Payload (Código que se ejecutara una vez se

explote la vulnerabilidad)

4. Elegir la técnica de codificación para que un IDS ignore el Payload

5. Ejecutar el Exploit

3.2.5 POST – EXPLOTACIÓN

Una vez se compromete el sistema y se tiene acceso se debe buscar

identificar otros blancos de ataque y buscar conectarse a otros posibles

Page 19: CAPITULO V PROPUESTA - virtual.urbe.edu

146

objetivos de ataque por intermedio del equipo que ha explotado de forma

inicial, el cuál incluso puede ser usado como enrutador para alcanzar otras

subredes, también se debe intentar aumentar el nivel de privilegios, si se

lograra violar los controles se puede crear un plan de acción para mitigar las

vulnerabilidades y evitar que sea un malintencionado el que logre

comprometer los sistemas.En el proceso de post-explotación, se debe tener

en cuenta

Dependiendo del sistema auditado, y una vez que se consigue el acceso,

en algunos casos se puede encontrar equipos conectados a dos redes

diferentes, que pueden ser atacadas a la vez, una vez que se recopile la

información necesaria.

Se debe de comenzar con nuevos procesos de auditoría relacionados con

Recolección de Información, escaneo de puertos, Análisis de

Vulnerabilidades, entre otros.

Es una fase crítica, puesto que es volver atacar un sistema ya accesado, e

intentar escalar privilegios para ver la posibilidad de tener un control total.

Herramientas

Use priv Este comando carga la extensión privilege para las bibliotecas

extendidas de meterpreter.

Getsystem Este comando intenta elevar permisos de acceso a nivel de

system en el sistema atacado.

Run persistence Una vez que el auditor de seguridad ha logrado escalar

privilegios en el sistema informático necesita asegurar dicho acceso por medio

de algún mecanismo, para no perder esa explotación una vez desconectado

del objetivo.

Page 20: CAPITULO V PROPUESTA - virtual.urbe.edu

147

Keyscan Con esta utilidad es posible saber que ha digitado el usuario en

su máquina, de esta se obtiene fácilmente, claves, usuarios, direcciones,

mensajes, etc.

Migrate Permite migrar el proceso de Meterpreter a otro proceso activo, su

uso es muy simple basta con especificar un PID activo (que puede ser

consultado utilizando el comando ps de Meterpreter).

Killav En muchas ocasiones en la maquina objetivo existen programas de

antivirus instalados, lo que dificultará tareas comunes e inclusive triviales, por

esta razón existe el script killav que intentará terminar todos los procesos de

antivirus en el objetivo

Getdesktop Este comando permiten obtener el desktop del usuario actual,

establecerlo y enumerar las diferentes interfaces habilitadas en la maquina

objetivo, cada uno de los desktop están asociados a una sesión (normalmente

la sesión, 0 se relaciona con el usuario actualmente conectado y las demás

con usuarios remotos) una estación (que normalmente es la Windows Station)

y un nombre de Desktop, este nombre identifica la interfaz que se enseña al

usuario.

Hashdump El comando hashdump permite obtener los usuarios y el hash

de las contraseñas de la maquina remota en formato SAM, de esta forma se

puede buscar romper la clave de un usuario determinado usando herramientas

como john the ripper o ophcrack

Uictl el comando uictl permite habilitar/deshabilitar el ratón y el teclado de

la maquina destino, de esta forma, se puede controlar las acciones que el

usuario realiza.

3.3 AUDITORIA A SERVICIOS WEB

Una prueba de intrusión es un método de evaluación de la seguridad de un

sistema de ordenadores o una red mediante la simulación de un ataque,

específicamente una prueba de intrusión de aplicación web está enfocada

Page 21: CAPITULO V PROPUESTA - virtual.urbe.edu

148

solamente a evaluar la seguridad de una aplicación web. El proceso conlleva

un análisis activo de la aplicación en busca de cualquier debilidad, fallos

técnicos o vulnerabilidades. Cualquier incidencia de seguridad que sea

encontrada será presentada al propietario del sistema, junto con una

evaluación de su impacto, y a menudo con una propuesta para su mitigación

o una solución técnica.

En este orden de ideas se puede decir que las pruebas de intrusión nunca

serán una ciencia exacta mediante la cual se pueda definir una lista completa

de todas las incidencias posibles que deberían ser comprobadas. De hecho,

las pruebas de intrusión son sólo una técnica apropiada para comprobar la

seguridad de aplicaciones web bajo ciertas circunstancias. Se debe pues

resaltar que el presente modelo se basa en la metodología de pruebas de

intrusión de aplicación web OWASP que buscan un enfoque de acercamiento

de caja negra. Para el presente modelo se han dividido el conjunto de pruebas

en 7 subcategorías

Pruebas de gestión de la configuración de la infraestructura

Pruebas de Autenticación

Pruebas de Autorización

Pruebas de gestión de sesiones

Pruebas de validación de datos

Pruebas de denegación de Servicio

Pruebas de Servicios Web

3.3.1 Pruebas de gestión de configuración de la infraestructura

A menudo los análisis sobre la infraestructura o la topología de la

arquitectura pueden revelar datos importantes sobre una aplicación Web. Se

Page 22: CAPITULO V PROPUESTA - virtual.urbe.edu

149

pueden obtener datos como por ejemplo el código fuente, los métodos HTTP

permitidos, funcionalidades administrativas, métodos de autenticación y

configuraciones de la infraestructura.

Pruebas de SSL/TLS

SSL y TLS son dos protocolos que proporcionan, con soporte criptográfico,

canales seguros para la protección, confidencialidad y autenticación sobre la

información que se transmite. Por considerarse críticas estas

implementaciones de seguridad, es importante verificar la utilización de un

algoritmo de cifrado fuerte, y su correcta implementación.

Pruebas del receptor de escucha de la BD

Durante la configuración del servidor de base de datos, muchos

administradores de bases de datos no tienen en consideración la seguridad

del receptor de escucha. Este componente podría revelar información sensible

como por ejemplo las configuraciones o las instancias de base de datos en

ejecución en caso de encontrarse incorrectamente configurado o analizado

mediante técnicas manuales o automáticas. La información mostrada podría

ser de gran utilidad a la hora de realizar seguidamente otras pruebas que

supongan un mayor impacto.

Pruebas de gestión de configuración de la infraestructura

La complejidad intrínseca de la infraestructura del servidor web

interconectada y heterogénea, que podría contar con cientos de aplicaciones

web, hace que la gestión de la configuración y su correspondiente revisión sea

un paso fundamental en el análisis y en el despliegue de cada una de las

aplicaciones. De hecho, una simple vulnerabilidad podría minar la seguridad

de la totalidad de la infraestructura, e incluso los problemas más pequeños y

de menor importancia podrían suponer un gran riesgo para otras aplicaciones

Page 23: CAPITULO V PROPUESTA - virtual.urbe.edu

150

del mismo servidor. Para poder identificar estos problemas, lo más importante

es llevar a cabo una revisión de la configuración con detalle y de problemas

conocidos de seguridad.

Pruebas de gestión de configuración de la aplicación

Las aplicaciones web esconden información que no son generalmente

considerados durante el desarrollo o la configuración de la aplicación en sí.

Estos datos pueden ser descubiertos en el código fuente, en archivos de

registro o en los códigos de error predeterminados de los servidores web. El

planteamiento correcto de este tema es fundamental durante un análisis de

seguridad.

Gestión de extensiones de archivo

Las extensiones de los ficheros que se encuentran en el servidor o en una

aplicación, hacen posible el identificar las tecnologías en las que se basa la

aplicación que se quiere analizar, por ejemplo, extensiones jsp y asp. Las

extensiones de los ficheros también pueden mostrar sistemas adicionales que

se conectan a la aplicación.

Archivos antiguos, copias de seguridad y sin referencias

Los ficheros redundantes, legibles y descargables de un servidor web,

como por ejemplo antiguos, copias de seguridad y renombrados, son una

fuente importante de información. Es necesario verificar la existencia de estos

ficheros porque podrían contener partes importantes del código fuente, rutas

de instalación así como contraseñas tanto de las aplicaciones como de las

bases de datos.

Page 24: CAPITULO V PROPUESTA - virtual.urbe.edu

151

Interfaces de administración de la infraestructura y de la aplicación

Muchas aplicaciones utilizan una ruta común para los paneles de

administración que podrían ser utilizados para adivinar o realizar fuerza bruta

sobre contraseñas de administración. Estas pruebas se realizan para buscar

interfaces de administración y para comprobar la posibilidad de explotarlos

para conseguir acceso a funcionalidades de administración.

Métodos HTTP y XST

En este punto se comprueba que el servidor web no esté configurado para

permitir los órdenes (métodos) HTTPpotencialmente peligrosos y que no es

posible el Cross Site Tracing (XST)

3.3.2 Comprobación del sistema de autenticación

Autenticación es el acto de establecer o confirmar algo (o alguien) como

auténtico, es decir, que las afirmaciones hechas por o sobre tal cosa son

ciertas. Autenticar un objeto puede significar confirmar su procedencia,

mientras que autenticar a una persona consiste a menudo en verificar su

identidad. La autenticación depende de uno o más factores de autenticación.

En seguridad informática, autenticación es el proceso de intentar verificar la

identidad digital del remitente de una comunicación. Un ejemplo común de un

proceso así es el proceso de registro en un sistema. Comprobar el sistema de

autenticación significa comprender como funciona el proceso de autenticación

y usar esa información para eludir el mecanismo de autenticación.

Transmisión de credenciales a través de un canal cifrado

En este punto, la persona a cargo de las pruebas intentará averiguar si la

información que introducen los usuarios en un formulario web, con el fin de

Page 25: CAPITULO V PROPUESTA - virtual.urbe.edu

152

poder autenticarse en la aplicación, es transmitida utilizando protocolos

seguros que la protegen de un atacante o no.

Enumeración de usuarios

Con esta prueba se verificará si es posible recopilar un conjunto válido de

usuarios, interactuando con el mecanismo de autenticación de la aplicación.

Esta prueba resultará útil para las pruebas mediante fuerza bruta, en las cuales

se verifica si dado un usuario válido, es posible obtener la contraseña

correspondiente.

Pruebas de diccionario sobre cuentas de Usuario o cuentas

predeterminadas

Aquí se comprueba si hay cuentas de usuario predeterminadas o

combinaciones de usuario/contraseña fácilmente adivinables (pruebas de

diccionario)

Pruebas de Fuerza Bruta

Cuando un ataque de diccionario falla, la persona a cargo de las pruebas

puede intentar utilizar métodos de fuerza bruta para conseguir autenticación.

Las pruebas de fuerza bruta no son fáciles de llevar a cabo, debido al tiempo

requerido y el posible bloqueo de la persona que esté realizando las pruebas.

Saltarse el sistema de autenticación

Otro método pasivo de comprobación es intentar saltarse el sistema de

autenticación, reconociendo si todos los recursos de la aplicación están

protegidos adecuadamente. La persona que realiza las pruebas puede

acceder a esos recursos sin mediar autenticación.

Page 26: CAPITULO V PROPUESTA - virtual.urbe.edu

153

Comprobar Sistemas de recordatorio/restauración de contraseñas

vulnerables

En esta sección, se comprueba como la aplicación gestiona el proceso de

contraseña olvidada. También es necesario comprobar si la aplicación permite

al usuario almacenar la contraseña en el navegador (función de recordar

contraseña).

Pruebas de gestión del Caché de Navegación y de salida de sesión

Se comprueba si las funciones de cierre de sesión y caché están

implementadas correctamente.

Pruebas de CAPTCHA

El CAPTCHA (Prueba de Turing pública y automática para diferenciar a

máquinas y humanos) es una prueba desafío respuesta utilizada por múltiples

aplicaciones web para asegurar que la respuesta no se ha generado por un

ordenador. A menudo las implementaciones de CAPTCHA son vulnerables a

diferentes tipos de ataques incluso si el CAPTCHA generado es irrompible.

Esta sección ayudará a identificar este tipo de ataques.

Múltiples factores de autenticación

La autenticación mediante múltiples factores se refiere a analizar los

siguientes casos testigos generadores de contraseñas de un único uso (OTP

- One-time password), dispositivos criptográficos como por ejemplo testigos

USB o smart cars, equipados con certificados X.509, contraseñas de un solo

uso aleatorias enviadas por SMS, información personal la cual se supone que

únicamente conoce el usuario legítimo (conocida como OUTOFWALLET)

Page 27: CAPITULO V PROPUESTA - virtual.urbe.edu

154

Probar por situaciones adversas

Una condición de carrera es un fallo que produce un resultado inesperado

cuando la duración de determinadas acciones impacta sobre otras. Como

ejemplo se puede tomar el de una aplicación multi-hilo cuyas acciones son

realizadas sobre los mismos datos. Las condiciones de carrera, por su propia

naturaleza, son muy complicadas de analizar.

3.3.3 PRUEBAS DE AUTORIZACION

Autorización es el concepto de permitir el acceso a recursos únicamente a

aquellos que tienen permiso para ello. Las pruebas de Autorización significan

entender cómo funciona el proceso de autorización, y usar esa información

para saltarse el mecanismo de autorización. La Autorización es un proceso

que llega después de una Autenticación correcta, por lo que el evaluador

verificará este punto después de tener credenciales validas, asociadas a un

conjunto de perfiles y privilegios bien definidos. Durante este tipo de

evaluaciones, debe verificarse si es posible evitar el sistema de autorización,

encontrar una vulnerabilidad de traspaso de rutas, o encontrar maneras de

escalar los privilegios asignados al evaluador.

Pruebas de ruta transversal

Primero, se probara si es posible encontrar la manera de ejecutar ataques

de traspaso de rutas y acceder a información reservada.

Pruebas para saltarse el esquema de autorización

Este tipo de pruebas se basa en verificar como el sistema de autorización

ha sido implementado para cada perfil/privilegio para obtener acceso a

funciones/recursos reservados.

Page 28: CAPITULO V PROPUESTA - virtual.urbe.edu

155

Pruebas de escalar de privilegios

Durante esta fase, el evaluador debe verificar que no es posible para un

usuario modificar sus privilegios/perfil dentro de la aplicación de manera que

permitan ataques de escalada de privilegios.

3.3.4 PRUEBAS DE GESTIÓN DE SESIONES

La gestión de sesiones cubre ampliamente todos los controles que se

realizan sobre el usuario, desde la autenticación hasta la salida de la

aplicación. HTTP es un protocolo sin estados, lo que significa que los

servidores web responden a las peticiones de clientes sin enlazarlas entre sí.

Incluso la lógica de una simple aplicación requiere que las múltiples peticiones

de un usuario sean asociadas entre sí a través de una sesión.

Pruebas para el esquema de gestión de sesiones

Este apartado describe como analizar el esquema de gestión de sesiones,

con el objetivo de entender como el mecanismo de Gestión de Sesiones ha

sido desarrollado y, si es posible, romperlo para saltar la sesión de usuario.

Explica como probarla seguridad de los testigos de sesión expedidos al

navegador del cliente como aplicar ingeniería inversa a una cookie, ycomo

manipular cookies para robar una sesión.

Pruebas para atributos de sesión

Las cookies son comúnmente un vector de ataque clave para usuarios

maliciosos (típicamente, teniendo otros usuarios como objetivo) y, como tal, la

aplicación debe siempre tener la debida diligencia para proteger las cookies.

En esta sección, se verá como una aplicación puede tener las precauciones

necesarias al asignar cookies y como probar que estos atributos han sido

configurados correctamente.

Page 29: CAPITULO V PROPUESTA - virtual.urbe.edu

156

Pruebas para fijación de sesión

Cuando una aplicación no renueva la cookie después de una autenticación de

usuario exitosa, podría ser posible encontrar una vulnerabilidad de fijación de

sesión (session fixation) y forzar un usuario a utilizar una cookie conocida por

el atacante

Pruebas para variables de sesión expuestas

Los testigos de sesión representan información confidencial porque ligan la

identidad del usuario con su propia sesión. Es posible probar si el testigo de

sesión está expuesto a esta vulnerabilidad y tratar de crear un ataque de

repetición de sesión.

Pruebas para CSRF

Cross Site Request Forgery describe una forma de forzar a un usuario a

ejecutar acciones no deseadas en una aplicación Web en la que se encuentra

actualmente autenticado. Esta sección describe como probar una aplicación

para encontrar este tipo de vulnerabilidad.

3.3.5 PRUEBAS DE VALIDACIÓN DE DATOS La debilidad más común en la seguridad de aplicaciones web, es la falta

de una validación adecuada de las entradas procedentes del cliente o del

entorno de la aplicación. Esta debilidad conduce a casi todas las principales

vulnerabilidades en aplicaciones, como inyecciones sobre el intérprete,

ataques locale/Unicode, sobre el sistema de archivos y desbordamientos de

búfer. El problema es que en una aplicación compleja, los puntos de acceso

para un atacante se incrementan en número, y es fácil que te olvides de

implementarla. Se divide la validación de datos en las siguientes categorías

principales

Page 30: CAPITULO V PROPUESTA - virtual.urbe.edu

157

Cross Site Scripting

Se trata de pruebas de Cross Site Scripting (XSS) cuando se intentan

manipular los parámetros de entrada que recibe la aplicación para que genere

una salida maliciosa. Se identifica un XSS cuando la aplicación no valida la

entrada y genera la salida que controlada por el atacante. Esta vulnerabilidad

genera varios tipos de ataques, por ejemplo, robar información confidencial

(tales como cookies de sesión) o tomando control del navegador de una

víctima.

Se debe validar la aplicación contra los siguientes ataques

Pruebas de XSS Reflejado

Pruebas de XSS Almacenado

Pruebas de XSS basado en DOM

Pruebas de XSS basado en Flash

Inyección SQL

Se trata de pruebas de Inyección SQL cuando se intenta inyectar una

determinada consulta SQL directamente en la Base de Datos. Por eso es que

se encuentra una vulnerabilidad SQL si la aplicación utiliza entradas de usuario

para crear consultas SQL, sin que la aplicación haga una validación adecuada

de los datos. Una explotación exitosa de esta clase de vulnerabilidad permite

a un usuario no autorizado acceder o manipular datos en la base de datos. El

objetivo es manipular los datos en la base de datos, un recurso vital para todas

las empresas. Se deben validar que el sistema está protegido frente a los

siguientes ataques

Pruebas en Oracle

Pruebas en MySQL

Pruebas en SQL Server

Pruebas en Microsoft Access

Pruebas en PostgreSQL

Page 31: CAPITULO V PROPUESTA - virtual.urbe.edu

158

Inyección LDAP

Las pruebas de inyección LDAP son similares a las de SQL las diferencias

son que se utiliza el protocolo LDAP en lugar de SQL y que el objetivo es un

Servidor LDAP en vez de un Servidor SQL. Una inyección LDAP explota el

siguiente patrón

Entrada -> Consulta LDAP == Inyección LDAP

Inyección ORM

También las pruebas de inyección ORM son similares a las de SQL, pero

en esta ocasión se usa una inyección SQL contra un modelo de objeto

generado de acceso a datos. Desde el punto de vista del atacante, este ataque

es virtualmente idéntico a un ataque de inyección SQL sin embargo, la

vulnerabilidad que facilita la inyección reside en el código generado por la

herramienta ORM.

Inyección XML

Se refiere a pruebas de inyección XML cuando se busca inyectar un

determinado documento XML en la aplicación si el intérprete XML falla al

realizar una validación adecuada de los datos, la prueba resultará positiva.Una

inyección XML explota el siguiente patrón

Entrada -> documento XML == Inyección XML

Inyección SSI

A menudo los servidores web ofrecen al desarrollador la posibilidad de

añadir pequeñas piezas de código dinámico dentro de páginas html estáticas,

sin tener que recurrir a lenguajes de programación completos, sean de

ejecución en el servidor o en el cliente. Esta característica se lleva a cabo

mediante los Server-Side Includes (SSI), unas extensiones muy simples que

pueden permitir a un atacante inyectar código dentro de páginas html, o incluso

realizar ejecución remota de código.

Page 32: CAPITULO V PROPUESTA - virtual.urbe.edu

159

Inyección XPath

Xpath es un lenguaje que ha sido diseñado y desarrollado para operar

sobre datos descritos con XML. El objetivo de una prueba de inyección Xpath

es inyectar elementos Xpath en una consulta que utilice este lenguaje. Algunos

de los objetivos posibles son saltarse la autentificación o acceder a información

sin autorización.

Inyección IMAP/SMTP

Esta amenaza afecta a todas las aplicaciones que se comunican con

servidores de correo (IMAP/SMTP), generalmente aplicaciones de webmail. El

propósito de este test es verificar la capacidad de inyectar órdenes

IMAP/SMTP arbitrarios en los servidores de correo, debido a una validación

incorrecta de los datos de entrada.

Una inyección IMAP/SMTP explota el siguiente patrón

Entrada -> orden IMAP/SMTP == Inyección IMAP/SMTP

Inyección de código

Esta sección señala en efectuar una prueba para comprobar si es posible

introducir código como entrada en un página web y que éste sea ejecutado por

el servidor web.

Una inyección de Código explota el siguiente patrón

Entrada -> Código malicioso == Inyección de Código

Inserción de órdenes del sistema operativo

Es necesario probar una aplicación a la inserción de órdenes del sistema

operativo es decir, tratar de inyectar un orden a través de una petición HTTP

a la aplicación.

Una inyección de órdenes del sistema operativo explota el siguiente patrón

Entrada -> Orden del sistema == Inyección del orden

Page 33: CAPITULO V PROPUESTA - virtual.urbe.edu

160

Prueba de desbordamiento de Búfer

Esta prueba es muy importante ya que se comprueba que la aplicación no

se vea afecta a estas de vulnerabilidades de desbordamiento de búfer (buffer

overflow). Los tipos más comunes de vulnerabilidad de desbordamiento de

búfer

Desbordamiento de memoria Heap (Heap overflow)

Desbordamiento de Pila (stack overflow)

Cadenas de Formato (Format strings)

En general, los desbordamientos de buffer explotan el siguiente patrón

Entrada -> Fixed buffer o format string == desbordamiento

Pruebas de vulnerabilidad incubada

La comprobación de vulnerabilidades incubadas es una prueba compleja

que necesita de más de una vulnerabilidad de validación de datos para

funcionar. En cada patrón mostrado, los datos deben ser validados por la

aplicación antes de ser considerados como confiables y procesados. El

objetivó aquí es comprobar si la aplicación realmente hace lo que debe hacer

y no hace lo que no debería hacer.

3.3.6 PRUEBAS DE DENEGACIÓN DE SERVICIO

El concepto fundamental de un ataque DoS de red es un usuario malicioso

inundando con suficiente tráfico una máquina objetivo para conseguir hacerla

incapaz de sostener el volumen de peticiones que recibe. Cuando el usuario

malicioso emplea un gran número de máquinas para inundar de tráfico una

sola máquina objetivo, se conoce generalmente como ataque denegación de

servicio Este tipo de ataques generalmente van más allá del alcance delo que

un desarrollador de aplicaciones puede evitar en su propio código.

Page 34: CAPITULO V PROPUESTA - virtual.urbe.edu

161

Existen, sin embargo, tipos de vulnerabilidades dentro de las aplicaciones

que permiten a un usuario malicioso provocar que algunas funcionalidades o

a veces el site web completo queden no disponibles. Estos problemas son

causados por bugs en la aplicación, a menudo como resultado de entradas

maliciosas o valores de entrada no esperados. Las pruebas de DoS que se

ajustan al modelo son las siguientes

1. Denegación de servicio mediante ataques SQL Wildcard

2. Bloqueando Cuentas de Usuario

3. Desbordamientos de Búfer

4. Reserva de Objetos Especificada por Usuarios

5. Pruebas de Uso de Entradas de Usuario como Bucle

6. Pruebas de Escritura de Entradas Suministradas por Usuario a Disco

7. Fallar en la Liberación de Recursos

8. Pruebas de Almacenamiento Excesivo en la Sesión

3.3.7 COMPROBACIÓN DE SERVICIOS WEB Los servicios web y SOA (Arquitectura Orientada a Servicios) son

aplicaciones en expansión que están permitiendo que los negocios trabajen

juntos y crezcan a un ritmo sin precedentes. Los clientes de servicios web

generalmente no son frontales web, sino otros servidores. Los servicios web

están expuestos a la red como cualquier otro servicio, pero pueden ser

utilizados en HTTP, FTP, SMTP o acompañados de cualquier otro protocolo

de transporte. Los Frameworks de Servicios Web utilizan el protocolo HTTP

(como Aplicación Web estándar) junto con las tecnologías XML, SOAP, WSDL

y UDDI

Las vulnerabilidades en servicios web son similares a otras

vulnerabilidades como la inyección SQL, revelación de información, entre

Page 35: CAPITULO V PROPUESTA - virtual.urbe.edu

162

otros, pero también tienen vulnerabilidades de XML únicas. Los siguientes

apartados describen las pruebas a realizar a los servicios Web

1. Obtención de Información en Servicios Web

2. Pruebas de WSDL

3. Pruebas estructurales de XML

4. Comprobación de XML a nivel de contenido

5. Comprobación de parámetros HTTP GET/REST

6. Adjuntos SOAP Maliciosos

7. Pruebas de Repetición

4. AUDITORIA INALAMBRICA

Esta auditoria esta enfocada para la verificación del acceso a redes

inalámbricas, las cuales se están popularizando cada vez más. Sin embargo

existen algunos problemas bastante comunes y alarmantes en la implantación

de estas tecnologías. Se debe principalmente a que estas redes se crean

rápida y fácilmente pero las medidas de seguridad no forman parte de la

configuración por defecto. Existen algunas medidas básicas para mejorar la

seguridad y algunas más drásticas a aplicar para conseguir unas WLANs

bastante seguras.

4.1 Controles

Los controles de seguridad a realizar, son todas aquellas verificaciones

técnicas que deben ser llevadas a cabo para analizar el riesgo de seguridad al

que está expuesta la universidad debido al uso de infraestructuras de

comunicaciones Wi-Fi dentro de su perímetro. La ausencia de una red

corporativa definida y desplegada no exime del riesgo, dado que la presencia

de dispositivos con capacidad de comunicación inalámbrica es suficiente por

Page 36: CAPITULO V PROPUESTA - virtual.urbe.edu

163

sí misma para crear potenciales agujeros de seguridad. Se han estructurado

los controles de seguridad en 10 secciones bien diferenciadas:

Cuadro 22

Controles

Tipo de control Descripción de los controles Descubrimiento de dispositivos Recopilación de información sobre las

redes inalámbricas Fingerprinting Análisis de las funcionalidades de los

dispositivos de comunicaciones. Pruebas sobre la autenticación Análisis de los mecanismos de

autenticación Cifrado de las comunicaciones Análisis de los mecanismos de cifrado

de información Configuración de la plataforma Verificación de la configuración de las

redes Pruebas de infraestructura Controles de seguridad sobre la

infraestructura Wireless Pruebas de denegación de servicio Controles orientados a verificar la

disponibilidad del entorno Pruebas sobre directivas y normativa Análisis de aspectos normativos que

aplican al uso de las redes de Wi-Fi Pruebas sobre los clientes inalámbricos Ataques contra clientes inalámbricos

Pruebas sobre hostspots y portales cautivos

Debilidades que afectan al uso de portales cautivos.

Fuente: Elaboración propia (2016)

4.2 Descubrimiento de dispositivos

La etapa de identificación de dispositivos es la más importante en cualquier

análisis de seguridad, y más aún en redes Wi-Fi, dado que es necesario

identificar las estaciones de comunicaciones y las relaciones entre ellas como

base para empezar a evaluar los riesgos existentes. Se deben usar

herramientas de monitorización activa y pasiva de dispositivos para detectar y

clasificar las redes, ayudándose de tecnologías GPS para mapear la

información. Se han definido los siguientes controles en la fase de

descubrimiento:

Page 37: CAPITULO V PROPUESTA - virtual.urbe.edu

164

Cuadro 23

Descubrimiento de dispositivos

Test Vulnerabilidad Descubrimiento de dispositivos WiFi no

autorizados Presencia de clientes no autorizados y

rogue APs Descubrimiento de redes ocultas Seguridad por oscuridad

Descubrimiento de preferencias de redes conocidas de clientes

Identificación de redes solicitadas por clientes

Identificación de relaciones no autorizadas entre dispositivos

Identificación de relaciones no autorizadas entre dispositivos

Descubrimiento activo de dispositivos Identificación de dispositivos mediante técnicas de descubrimiento activo

Fuente: Elaboración propia (2016)

Para realizar la tarea de descubrimiento es necesario contar con un

hardware o unos drivers específicos que permitan la captura de RAW frames

en modo monitor, de forma que se puedan ver los mensajes correspondientes

al estándar 802.11. Los APs siempre están emitiendo una serie de frames de

tipo Management llamados Beacons en los que publican información básica

acerca de las redes que están propagando. Esta información es utilizada por

los clientes para detectar la presencia de una red e iniciar la conexión con ella,

cuando los parámetros de seguridad de la red coinciden.

El nombre de la red Wi-Fi puede ser indicativo de su funcionalidad, cuando

por ejemplo incluye el nombre de la empresa o de departamentos, y puede

ayudar a un intruso a planificar un ataque más elaborado contra ella. Para

recopilar esta información de un primer vistazo se puede usar una herramienta

como airodump-ng en Linux, que viene incluida dentro de la suite de aircrack-

ng.

4.3 Fingerprinting

Tras la identificación de los dispositivos con capacidades Wi-Fi dentro del

área geográfica en donde se realiza el análisis, se debe extraer información

Page 38: CAPITULO V PROPUESTA - virtual.urbe.edu

165

relevante de cada dispositivo. La recopilación de información y la clasificación

de los dispositivos se realizarán mediante el análisis de las tramas enviadas

por los dispositivos y mediante el análisis de respuestas frente a determinados

frames de datos. Se han definido los siguientes controles en la fase de

fingerprinting:

Cuadro 24

Fingerprinting

Test Vulnerabilidad Identificación del dispositivo. Obtención de información sobre el

hardware y software. Identificación de funcionalidades

soportadas por el dispositivo. Obtención de información sobre el

hardware y software. Enumeración de mecanismos de

autenticación radius (802.1x) Mecanismos de autenticación inseguros

Detección de Rogue APs Intrusos en redes Wi-Fi. Pruebas de client isolation Ataques a clientes.

Detección de ataques por parte de dispositivos Wi-Fi.

Intrusos en redes Wi-Fi.

Fuente: Elaboración propia (2016)

Hacer uso de una herramienta como WPSIG

root@unknow:~# ./wpsig.py --interface wlan0

Wi-Fi Protected Setup Information Gathering.

[00:22:6B:55:99:88] - 'xxxxxx' - 'Cisco-Linksys, LLC'

* WPS Information

* Device Name: 'Wireless-G Router'

* Wi-Fi Protected Setup State: 'Not Configured'

* Model Number: 'WRT54G2'

* Serial Number: 'CSV01Hxxxxxxx'

* Version: '1.0'

* Model Name: 'Router'

* Config Methods: 'Display, PushButton'

* Manufacturer: 'Linksys'

Page 39: CAPITULO V PROPUESTA - virtual.urbe.edu

166

4.4 Pruebas sobre la autenticación La elección de mecanismos de autenticación seguros es una de las bases

principales para prevenir accesos no autorizados a redes Wi-Fi. El uso de

mecanismos de autenticación inseguros, o la elección de claves de acceso

débiles o fácilmente predecibles expone la seguridad de la red a un gran

número de ataques que permitan el acceso a la red corporativa. Los controles

definidos en esta sección son los siguientes:

Cuadro 25

Pruebas autenticación

Test Vulnerabilidad Detección de protección de acceso

basado en MAC. Autenticación contra redes Wi-Fi.

Pruebas sobre WPS Acceso no autorizado a redes Wi-Fi. Pruebas de downgrade del método de

autenticación Inseguridad en mecanismos de

autenticación. Captura y cracking de claves transmitidas en el proceso de

autenticación. Credenciales débiles.

Protocolos de autenticación inseguros (FAST-EAP,LEAP ,EAP-MD5,...)

Interceptación y descifrado de credenciales.

Pruebas de fuerza bruta de usuarios contraseñas de radius (802.1x) Credenciales débiles.

Pruebas de fuerza bruta de contraseñas contra el proceso de

autenticación (PSK)

Posibilidad de descifrar contraseñas débiles offline.

Debilidades en repositorio de credenciales

Acceso no autorizado y robo de credenciales.

Fuente: Elaboración propia (2016)

4.5 Cifrado de las comunicaciones

El cifrado usado en una red inalámbrica ayuda a proteger la

confidencialidad y la integridad de la información transmitida en una red

inalámbrica. Dado que en este entorno cualquier usuario que se encuentre

Page 40: CAPITULO V PROPUESTA - virtual.urbe.edu

167

dentro del área de cobertura de una red inalámbrica puede monitorizar y

registrar el tráfico de red, el cifrado de las comunicaciones evita que un tercero

pueda interceptar las comunicaciones y extraer información sensible. Los

controles definidos en esta sección son los siguientes:

Cuadro 26

Cifrado de comunicaciones

Test Vulnerabilidad Captura y análisis de tráfico en red

abierta. Transmisión de información sensible.

Descifrado de trafico cifrado Transmisión de información insegura. Pruebas de análisis de información

transmitida a través de Wireless Obtención de información sensible.

Análisis de protocolos de cifrado inseguro (WEP, TKIP,...) Debilidad de seguridad en la red.

Pruebas de renovación de claves de cifrado

Tiempo de vida de claves criptográficas elevado.

Pruebas de re-inyección de tráfico (replay attack, Mic,..) Suplantación de identidad.

Fuente: Elaboración propia (2016)

Si no se utiliza ningún método de cifrado es posible visualizar todo el tráfico

en texto claro capturado a través de la red Wi-Fi, siempre que no se use un

mecanismo alternativo de cifrado, como por ejemplo el envío de credenciales

a través de HTTPS, túneles VPN,..). Además, al ser la red abierta se facilita

que un usuario malintencionado realice ataques propios de una infraestructura

de red para descifrar tráfico cifrado usando otro método. Es posible capturar

el tráfico con un sniffer como Wireshark o Network Miner para analizar el tráfico

de la red y obtener credenciales información acerca de los usuarios.

Page 41: CAPITULO V PROPUESTA - virtual.urbe.edu

168

4.6 Configuración de la plataforma

Determinadas acciones, a la hora de configurar y desplegar una red

inalámbrica, pueden provocar que el perímetro de la organización sea

susceptible a ataques informáticos. El cumplimiento de las buenas prácticas

en materia de configuración de las plataformas involucradas en ofrecer un

servicio de comunicaciones inalámbricas minimiza los riesgos de accesos no

autorizados. Los controles definidos en esta sección son los siguientes:

Cuadro 27

Configuración plataforma

Test Vulnerabilidad Identificación de redes wireless con

ESSID genérico. Suplantación de identidad y ataques

basados en memory trading. Contraseñas genéricas en interfaz administrativa del punto de acceso

Credenciales débiles y acceso no autorizado.

Verificación del nivel de intensidad de señal o área de cobertura. Área de cobertura excesiva.

Análisis del solapamiento de redes en el mismo canal de comunicaciones Degradación de la calidad del servicio.

Generación de claves en base a algoritmos conocidos

Algoritmos de claves PSK o WPS débiles.

Pruebas sobre Upnp Redirección de puertos. Fuente: Elaboración propia (2016)

4.7 Pruebas de infraestructura

Todos los elementos que conviven alrededor de una red Wi-Fi tienen

importancia a la hora de proteger la infraestructura de las organizaciones.

Además de ciertos aspectos clave, como la correcta configuración de los

puntos de acceso, se debe verificar periódicamente el funcionamiento y

Page 42: CAPITULO V PROPUESTA - virtual.urbe.edu

169

protección de otros elementos que intervienen en su funcionamiento. Los

controles definidos en esta sección son los siguientes:

Cuadro 28

Pruebas de infraestructura

Test Vulnerabilidad

Debilidades en el firmware del AP. Robo de credenciales y acceso no autorizado.

Interfaces administrativas expuestas a la red

Acceso no autorizado e interceptación de tráfico.

Política de firewall incorrecta Acceso a segmentos de red restringidos.

Controles sobre mecanismos de detección de intrusos.

Ausencia de sistemas de monitorización.

Pruebas de verificación de túneles VPN (sobre redes abiertas...) Interceptación de comunicaciones

Debilidades en servidor radius Ejecución remota de código o denegación de servicio.

Vulnerabilidades incubadas Debilidades en elementos de arquitectura o software.

Gestión (Alta/baja/modificación) de claves y certificados.

Gestión incorrecta de claves de acceso.

Dispositivos de comunicaciones accesible/expuestos físicamente

Acceso no autorizado y modificación de firmware.

Detección y análisis de sistemas Scada. Acceso a sistemas de control industrial. Fuente: Elaboración propia (2016)

4.8 Pruebas de denegación de servicio

Existen varios aspectos que pueden ser utilizados para denegar o degradar

el servicio en una red inalámbrica. Dado que cualquier usuario puede inundar

el espacio radioeléctrico con datos, en muchas ocasiones este tipo de

debilidades no podrán ser evitadas al 100%. Por ello, el objetivo de estas

pruebas es identificar qué aspectos pueden afectar negativamente a las

Page 43: CAPITULO V PROPUESTA - virtual.urbe.edu

170

comunicaciones inalámbricas y en qué medida pueden ser explotadas desde

fuera del perímetro de la organización para facilitar la elaboración de ataques

más complejos. El despliegue de redes basadas en 802.11 ayudará a mitigar

algunos de estos ataques. Los controles definidos en esta sección son los

siguientes:

Cuadro 29

Pruebas de denegación

Test Vulnerabilidad

Pruebas de de-autenticación Interceptación de credenciales de autenticación.

Saturación del canal de comunicaciones (CTS/RTS,ruido,

jammering, ...) Ataques a la disponibilidad del servicio.

Bloqueo de cuentas de usuario Bloqueo de cuentas. Bloqueo de dispositivo de

comunicaciones Suplantación de punto de acceso y

DOS. Pruebas de degradación del canal de

comunicaciones Degradación del servicio.

Fuente: Elaboración propia (2016)

4.9 Pruebas sobre directivas y normativa

La existencia de normativas y directivas sobre el uso de las

comunicaciones inalámbricas es una base importante para garantizar la

seguridad de las redes de comunicaciones, basadas en el estándar 802.11, en

entornos empresariales. Las desviaciones en las buenas prácticas o en la

normativa establecida, puede provocar problemas de seguridad. Los controles

definidos en esta sección son los siguientes:

Page 44: CAPITULO V PROPUESTA - virtual.urbe.edu

171

Cuadro 30

Pruebas sobre directivas y normativa

Test Vulnerabilidad Identificación de dispositivos que no cumplen el estándar / propietarios n/a

Detección de dispositivos emitiendo en frecuencias restringidas. Emisión de señal no autorizada.

Análisis de la política de uso/restricción de uso de redes inalámbricas Accesos indebidos.

Análisis de la configuración de dispositivos. Configuración incorrecta.

Análisis de la política de gestión y cambio de claves

Tiempo de vida de contraseñas elevado.

Verificación de inventario de

dispositivos autorizados Inventario no actualizado.

Fuente: Elaboración propia (2016)

4.10 Pruebas sobre los clientes inalámbricos Estos controles engloban las verificaciones realizadas contra dispositivos

de comunicaciones que actúan como cliente. Este es el caso de pruebas

orientadas a analizar el comportamiento o la seguridad de dispositivos móviles

(portátiles, móviles, tabletas) o equipos de escritorio. Los controles definidos

en esta sección son los siguientes:

Cuadro 31

Pruebas sobre los clientes inalámbricos

Test Vulnerabilidad Pruebas de Rogue Ap y asociación

automática Suplantación de identidad y robo de

credenciales.

Desbordamiento de buffer en cliente. Ausencia de parches de seguridad y ejecución remota de código.

Pruebas sobre suplicant débil o inseguro. Ausencia de validación de certificados.

Ataques contra clientes Modificación de respuestas DNS,.. Extracción de credenciales de los

clientes Suplantación de identidad.

Fuente: Elaboración propia (2016)

Page 45: CAPITULO V PROPUESTA - virtual.urbe.edu

172

4.11 Pruebas sobre hostspots y portales cautivos

Este capítulo engloba aquellas pruebas orientadas a evaluar la protección

de las redes de comunicaciones abiertas y portales cautivos que facilitan la

conexión a internet a los usuarios. En este escenario, habitualmente existen

varios vectores de ataque que pueden ser utilizados para comprometer la

confidencialidad de la información transmitida o ser utilizados para ganar

acceso a áreas restringidas. Los controles definidos en esta sección son los

siguientes:

Cuadro 32

Pruebas de hostspots y portales cautivos

Test Vulnerabilidad Acceso a otros segmentos de red sin

autenticación Segmentación o política de cortafuegos

incorrecta Debilidades en el mecanismo de

autenticación. Acceso no autorizado.

Pruebas de encapsulación de tráfico con el exterior

Evasión del mecanismo de autenticación.

Debilidades en portal cautivo Acceso no autorizado. Fuente: Elaboración propia (2016)

5. FACTIBILIDAD

Una vez se establezca el alcance del modelo de auditoria, así como se

definan los encargados que se harán responsables de ejecutaran el plan, se

obtendrá el norte hacia donde se debe ir para mejorar la seguridad de los

servicios telemáticos en la Universidad Simón Bolívar. A partir de aquí el

siguiente nivel es la factibilidad o anteproyecto, que según Baca (2013)

argumenta que consiste en detallar la tecnología que se empleará, determinar

los costos totales así como la rentabilidad económica del proyecto, es la base

que se apoyan los inversionistas para tomar una decisión, por lo tanto en

Page 46: CAPITULO V PROPUESTA - virtual.urbe.edu

173

concordancia con lo antes descrito se realizó un estudio de factibilidad,

abarcando tres aspectos fundamentales como son el técnico, operativo y

económico.

En el ámbito Técnico, la propuesta es viable técnicamente debido a que la

Universidad Simón Bolívar cuentan con tecnologías y equipos informáticos,

necesarios para ejecutar las diferentes herramientas, según la fase del

modelo. Disponen de personal especializado con sólidos conocimientos y

destrezas en el área de telecomunicaciones, programación y software libre,

necesario para ejecutar las herramientas y fases, pero es necesario señalar

que el personal encargado en la institución debe recibir una breve inducción

sobre cómo usar ciertas herramientas.

En este orden de ideas, en el contexto Operativo es factible, ya que

presenta una estructura totalmente abierta, cumpliendo con los requisitos de

ley, así como la facilidad de comprensión y ejecución. Entre estos factores se

encuentra la disponibilidad por parte de la universidad para ejecutar el plan

según lo propuesto, la idoneidad del personal de tecnología en relación a la

capacitación antes expuesta.

Finalmente, desde el punto de vista Económico, se concluye que la

propuesta es económicamente factible, puede ejecutarse sin apoyo, por lo

tanto resulta viable, debido a que está respaldada por el departamento de

tecnología de la universidad, así como del investigador como voluntario, para

realizar la capacitación necesaria. Asimismo, se determinaron los elementos

como hardware, software y servicios requeridos, considerando los beneficios

generados con la propuesta en contraposición con los costos de los

componentes del sistema en caso de pérdida de algún activo como servidores,

computadoras, información, entre otros.