Escolar Documentos
Profissional Documentos
Cultura Documentos
1
CONTENIDO
Pg
2
26.1 Denegacin De Servicio Distribuido: DDoS 37
26.2 Denegacin De Servicio Distribuido: DDoS 38
26.3 Plataformas afectadas 38
26.4 Caracterizacin de los ataques DoS 39
26.4.1 Uso de IP Source Spoofing 39
26.4.2 Similitud de trfico legtimo 40
GLOSARIO DE TRMINOS 70
ANEXOS 79
FUENTES DOCUMENTALES 80
3
LISTADO DE FIGURAS
Pg
4
UNIDAD 2: ANLISIS Y DISEO SEGURO DE APLICACIONES WEB
Las vulnerabilidades XSS pueden ser vistas como tcnicas de evasin de las
polticas de proteccin. Encontrando formas ingeniosas de inyectar cdigos
maliciosos en las pginas servidas por otros dominios, un atacante puede ganar
privilegios a datos sensibles, cookies de sesin y otros objetos.
5
16.1 TIPOS DE VULNERABILIDAD XSS
Tipo 0: Tambin conocido como basado en el DOM o Local. Con este tipo de
vulnerabilidad, el problema existe en el script del lado del cliente.
Esto no parecera un problema dado que los usuarios son los nicos que pueden
inyectar cdigo en sus propias pginas. Pero con un pequeo esfuerzo de
ingeniera social, un atacante puede convencer a alguien de seguir una URL que
se encargue de inyectar el cdigo en esta pgina de resultados, dando al atacante
acceso completo al contenido de la pgina.
6
campos de las formas (entre estos los campos ocultos). Es decir, todos los
parmetros entrantes teniendo como referencia una especificacin rigurosa de lo
que debe ser permitido.
Codificar las salidas que dependan de los datos provistos por el usuario es una
manera eficaz de evitar vulnerabilidades XSS previniendo la transmisin de scripts
insertados a usuarios en una forma ejecutable.
7
La secuencia de comandos en sitios cruzados, ms conocida como XSS 1, es
en realidad un subconjunto de inyeccin HTML El proyecto OWASP incluye dentro
de su Top 10 esta vulnerabilidad con todos los matices y aspectos de proteccin,
entornos afectados, herramientas usadas, monitoreo, ejemplos y sitios online de
prueba para realizar los ataques.
Cuando se presentan:
Luego cierra su navegador y postea en una red social este enlace para que todos
puedan acceder a este curioso artculo.
El servidor no cierra la sesin del usuario. Cualquiera de sus amigos que acceda
a dicho enlace aparecer registrado en la aplicacin como el usuario autenticado
1
Disponible en internet desde <https://www.owasp.org/index.php/Top_10_2007-
Secuencia_de_Comandos_en_Sitios_Cruzados_%28XSS%29>
8
Figura 21: Prdida de Autenticacin
Fuente: El Autor
Formas de proteccin:
Cierre de sesin correctamente mediante los enlaces del sitio para ello (no
cerrar ventanas)
Gestin de contraseas
Tiempo de desconexin.
Eliminar la opcin recordar contrasea en los navegadores
Pregunta secreta.
Actualizacin de cuentas.
Utilizar conexiones SSL.
Ingreso de identificadores no vlidos.
9
LECCION 18: REFERENCIA DIRECTA INSEGURA A OBJETOS
10
Ejemplo de algunas vulnerabilidades:
Con esto se cargaran los movimientos de dicha cuenta propiedad del usuario. Si
se introduce otro nmero de cuenta cercano por arriba o abajo del nuestro, por
ejemplo 1234567891, en principio, si todo se hubiera hecho correctamente,
debera mostrar un error al estar introduciendo una cuenta ajena, pero si somos
vulnerable a la referencia directa de objetos de forma insegura, mostrar los datos
de esta cuenta sin ser nuestra.
URL: http://www.banco.com/descarga.php?dir=nomina&file=10234765.pdf
Con tan solo modificar un nmero en la cdula del usuario, se podra estar
descargando la informacin de otro usuario,
2
Disponible en internet desde <https://www.owasp.org/index.php/Top_10_2007-
Referencia_Insegura_y_Directa_a_Objetos>
11
Los impactos:
Como evitarlo:
Verificar la arquitectura
Verificar la implementacin
12
Figura 22: Almacenamiento criptogrfico inseguro
Fuente: El Autor
13
Entornos afectados
Caractersticas:
Explotacin fcil: Explotacin es fcil porque solo basta con cambiar la URL
sin privilegios a una pgina con privilegios.
Prevalencia Poco comn: La deteccin de esta falla porque para el atacante
es difcil identificar que URLS tienen esta vulnerabilidad
Deteccin media: Suele pasar inadvertida esta vulnerabilidad por los
escneres. Los escneres de vulnerabilidades y los motores de anlisis
esttico tienen dificultades con la verificacin de control de acceso a URLs,
pero por razones diferentes. Los escneres de vulnerabilidades tienen
dificultades para adivinar las pginas ocultas y determinar qu pginas se
deben permitir para cada usuario, mientras que los motores de anlisis
esttico batallan para identificar los controles de acceso personalizado en el
cdigo y vincular la capa de presentacin con la lgica de negocio.
Impacto moderado: El impacto de esta falla es moderado porque permite el
acceso no autorizado a funciones administrativas de la aplicacin.
Vulnerabilidad:
14
Las aplicaciones a menudo permiten el acceso a archivos "ocultos", tales
como XML estticos o reportes generados por el sistema, confiando en la
seguridad por oscuridad para ocultarlos
Proteccin.
15
El modelado de amenazas es una tcnica formal, estructurada y repetible que
permite determinar y ponderar los riesgos y amenazas a los que estar expuesta
una aplicacin y que puede aplicarse al Ciclo de Vida del Desarrollo de Software
(SDLC).
Para eliminar estas premisas, la tendencia actual y que se debe seguir para
aplicar el ciclo de desarrollo, enmarca aspectos como:
Incorporar seguridad a lo largo de todas las etapas del ciclo de vida del desarrollo
de software (SDLC).
16
Figura 24: SDLC
Fuente: <CLARK, Justin. SDLC >
Tipos de acceso a los datos por parte de cada perfil: Lectura, escritura,
modificacin, agregado, borrado, etc.
Acciones sobre el sistema que puede hacer cada perfil: Cambiar la configuracin
del sistema, arrancar o detener servicios
17
22.2 SEGURIDAD EN LA ETAPA DE DISEO: Muchas de las vulnerabilidades
encontradas en aplicaciones web tienen su causa en errores de diseo. Ejemplos
de ello:
Durante esta etapa de diseo se suelen aplicar tcnicas para analizar el riesgo,
como:
18
5) Decidir cmo responder a las amenazas.
19
Stack buffer overflows
Heap buffer overflows
SQL Injections
Cross Site Scripting (XSS)
Directory Traversal
Stack buffer overflows
Heap buffer overflows
SQL Injections
Cross Site Scripting (XSS)
Directory Traversal
Requisitos. de autenticacin
Requisitos. de complejidad de contraseas Bloqueo automtico de cuentas
Funcionalidad de captchas
Restricciones de acceso segn diseo
Mecanismos de registro y logging
Mensajes de error especificados
20
Testing de seguridad basado en Riesgo: Tcnica que se desprende del Threat
Modelling. Se identifican todas las interfaces de la aplicacin. Se generan casos
de test sobre cada interfaz basado en STRIDE
Servicios innecesarios
Usuarios y contraseas default
Configuracin de intrpretes
Proceso de implementacin
Separacin de ambientes
Administracin de implementacin y mantenimiento
Releases y Patches
Firma de cdigo
21
LECCIN 23: SDLC - IT:
La primera etapa requiere que el analista observe de forma objetiva lo que ocurre
en una empresa. Luego, en conjunto con los otros miembros de la organizacin
har notar los problemas. Muchas veces esto ya fue realizado previamente: y por
ello es que se llega a invitar al analista.
Las oportunidades son acuellas situaciones que el analista considera que pueden
perfeccionarse mediante el uso de los sistemas de informacin computarizados. Al
aprovechar las oportunidades, la empresa puede lograr una ventaja competitiva o
llegar a establecer un estndar industrial.
22
involucrados. Para identificar los requerimientos de informacin dentro de a
empresa, pueden utilizarse diversos instrumentos, los cuales incluyen: el
muestreo, el estudio de los datos y formas usadas por la organizacin, la
entrevista, los cuestionarios: la observacin de la conducta de quien toma
las decisiones, asi como de su ambiente: y tambin el desarrollo de prototipos.
23
El anlisis de decisiones de criterio mltiple (aquellas decisiones donde
numerosos factores tienen que equilibrarse) tambin es parte de esta etapa.
Se disponen de muchas tcnicas para e' anlisis de decisiones de criterio mltiple;
incluyendo entre otras, e! proceso de intercambio y la aplicacin de mtodos de
ponderado.
A esta altura del ciclo de desarrollo del sistema, el analista prepara una propuesta
del sistema que resume todo lo que ha encontrado, presenta un anlisis costo /
beneficio de las alternativas y plantea las recomendaciones (si es que
existen) de lo que deber realizarse. Si la direccin acepta alguna de las
recomendaciones, el analista proceder de acuerdo con ella.
En esta etapa del ciclo de desarrollo de los sistemas, el analista de sistemas usa
la informacin que recolect con anterioridad y elabora el diseo lgico del
sistema de informacin. El analista disea procedimientos precisos de captura
de datos, con el fin de que los datos que se introducen al sistema sean los
correctos. Ei analista tambin disea accesos efectivos al sistema de
informacin, mediante el uso de las tcnicas de diseo de formularios y de
pantallas.
Una parte del diseo lgico del sistema de informacin es el diseo de la interfaz
con el usuario. La interfaz conecta al usuario con el sistema, y evidentemente, es
de suma importancia. Seran ejemplos de interfaces para el usuario: el uso del
teclado para introducir preguntas o respuestas, el uso de mens en la pantalla,
con las opciones que tiene el usuario, el uso de dispositivos como el ratn (mouse)
y muchos otros.
La etapa del diseo tambin incluye e! diseo de los archivos o la base de datos
que almacenar aquellos datos requeridos por quien toma las decisiones en la
organizacin. Una base de datos bien organizada es fundamental para cualquier
sistema de informacin. En esta etapa, el analista disea la salida (en pantalla o
impresa) hacia el usuario, de acuerdo con sus necesidades de informacin.
En esta etapa del ciclo de desarrollo de los sistemas, el analista trabaja con los
programadores para desarrollar todo el software original que sea necesario.
Dentro de las tcnicas estructuradas para el diseo y documentacin de! software
se tienen: el mtodo HIPO, los diagramas de flujo. ios diagramas Nassi-
24
Schneiderman, ios diagramas Warnier-Orr y el pseudocdigo. Aqu es donde, el
analista de sistemas transmite al programador los requerimientos de
programacin.
Durante esta fase, el analista tambin colabora con los usuarios para desarrollar
la documentacin indispensable del software, incluyendo los manuales
de procedimientos. La documentacin le dir al usuario como operar el software, y
as tambin, qu hacer en caso de presentarse algn problema.
del programador, que para las empresas llegan a implicar importantes sumas
de dinero. Sin embargo, el costo del mantenimiento disminuye de manera
importante cuando el analista aplica procedimientos sistemticos en el
desarrollo de los sistemas.
En esta ltima etapa del desarrollo del sistema, el analista ayuda a implantar el
sistema de informacin. Esto incluye el adiestramiento que el usuario requerir.
Si bien, parte de esta capacitacin la dan las casas comerciales, la supervisin
del adiestramiento es una responsabilidad del analista de sistemas.
Ms an, el analista necesita planear la suave transicin que trae consigo un
cambio de sistemas.
25
Aunque la evaluacin del sistema se plantea como parte integrante de la ltima
etapa del ciclo de desarrollo de los sistemas; realmente, la evaluacin toma parte
en cada una de las etapas. Uno de los criterios fundamentales que debe
satisfacerse, es que el futuro usuario utilice el sistema desarrollado.
Para que un proyecto software tenga xito, es necesario que el resultado cuente
con la calidad esperada por el cliente o los usuarios. As pues, la calidad del
proyecto deber poderse definir en trminos de prestaciones, respuestas
esperadas a determinadas acciones, o accesibilidad del producto en diferentes
26
condiciones para poder probarla posteriormente mediante unos tests de calidad
especficos.
Los modelos tradicionales de ciclo de vida del software incluan la fase de pruebas
como un proceso que haba que llevar a cabo una vez finalizado el desarrollo.
Esto se ha probado que resulta altamente contraproducente, no slo por el coste
de arreglar fallos o deficiencias una vez terminado el desarrollo, sino por la
naturaleza evolutiva de muchos proyectos (sobre todo en entornos de software
libre), en los que la fase de desarrollo no termina nunca estrictamente hablando.
3
AYCART, David. Ingeniera del software en entornos de SL. P 24-27. UOC
27
Integridad: los recursos pueden ser modificables slo por los usuarios
autorizados.
Es por esta razn por lo que, en la fase de diseo del proyecto, se debe tener en
cuenta la seguridad del mismo, primero de forma general mediante un anlisis de
riesgos y de actividades destinadas a mitigarlos, y ms adelante mediante la
ampliacin de los casos de uso segn los principios bsicos de la seguridad
comentados anteriormente
Clasificacin de los actores del proyecto. Cules son sus casos de uso y qu roles
representan.
Son muchas las estrategias y herramientas que enmarcan estudios completos con
miras a detectar, prevenir y contrarrestar ataques de Denegacin de Servicio. Los
mtodos ms comunes hacen uso del filtrado de paquetes, como una solucin
viable y eficaz a este problema.
4
JOANCOMARTI, Jordi Herrera. Aspectos Avanzados de seguridad en redes. Seg edicin. Barcelona Espaa
2005. 62p
29
confidencialidad. Algunos de los ataques ms conocidos en esta capa son las
denegaciones de servicio debidas a protocolos de transporte.
Amenazas Consecuencias
INTEGRIDAD
CONFIDENCIALIDAD
DENIAL OF SERVICE
30
Procesos matados Molestias
AUTENTIFICACIN
Son muchas las estrategias y herramientas de monitoreo que existen para ser
aplicadas a entornos de comunicaciones y redes tipo Ethernet. La mayora de
ellas funcionan sobre plataformas de cdigo abierto lo que les ofrece grandes
posibilidades de expansin y de parametrizacion de acuerdo a las necesidades del
Administrador de red.
5
Herramientas de Gestin Nagios, Nessus [web en lnea]. Disponible desde Internet en:
<http://www.csi.map.es/csi/tecnimap/tecnimap_2006/01T_PDF/monitorizacion.pdf>
31
adecuadas (parcheo, reconfiguracin de servicios, adicin de reglas de
cortafuegos). Su arquitectura cliente servidor consiste en nessusd, el daemon
Nessus, que realiza el escaneo en el sistema objetivo, y nessus, el cliente (basado
en consola o grfico) que muestra el avance y reporte de los escaneos. Desde
consola nessus puede ser programado para hacer escaneos programados con
cron (administrador de procesos en segundo plano).
HIDS (Host IDS): Protege contra un nico Servidor, PC o host. Monitorizan gran
cantidad de eventos, analizando actividades con una gran precisin, determinando
de esta manera qu procesos y usuarios se involucran en una determinada
accin. Recaban informacin del sistema como ficheros, logs, recursos, etc, para
su posterior anlisis en busca de posibles incidencias. Todo ello en modo local,
dentro del propio sistema. Fueron los primeros IDS en desarrollar por la industria
de la seguridad informtica.
NIDS (Net IDS): Protege un sistema basado en red. Actan sobre una red
capturando y analizando paquetes de red, es decir, son sniffers del trfico de red.
Luego analizan los paquetes capturados, buscando patrones que supongan algn
tipo de ataque.
Bien ubicados, pueden analizar grandes redes y su impacto en el trfico suele ser
pequeo. Actan mediante la utilizacin de un dispositivo de red configurado en
modo promiscuo (analizan, ven todos los paquetes que circulan por un segmento
6
Sistema de deteccin de Intrusos y Snort. Disponible desde Internet en:
<http://seguridadyredes.nireblog.com/post/2007/12/28/sistemas-de-deteccion-de-intrusos-y-snort-i>
32
de red aunque estos nos vayan dirigidos a un determinado equipo). Analizan el
trfico de red, normalmente, en tiempo real. No slo trabajan a nivel TCP/IP,
tambin lo pueden hacer a nivel de aplicacin.
Otros tipos son los hbridos. Por el tipo de respuesta se pueden clasificar en:
Snort est disponible bajo licencia GPL, gratuito y funciona bajo plataformas
Windows y UNIX/Linux. Es uno de los ms usados y dispone de una gran cantidad
de filtros o patrones ya predefinidos, as como actualizaciones constantes ante
casos de ataques, barridos o vulnerabilidades que vayan siendo detectadas a
travs de los distintos boletines de seguridad.7
7
Disponible en Internet. < http://www.snort.org/> Con acceso Junio 28 de 2012
33
25.6 HERRAMIENTAS DE GESTIN:
POLLER: Acta como manager del protocolo SNMP interrogando a los agentes
instalados en los dispositivos a monitorear.
SNMPTRAPD: Recibe los traps desde los dispositivos monitoreados. Los traps
son eventos o alarmas que los dispositivos envan sin necesidad de ser
consultados.
Tambin utiliza programas como nmap, fping y otros para probar conectividad,
puertos abiertos y otros parmetros de red. En tal sentido, JFFNMS es un sistema
integrador para el monitoreo. Adems de estos programas fundamentales que
realizan la consulta y captura de los datos, JFFNMS requiere de una base de
datos robusta para almacenarlos (PostgreSQL MySQL), un Servidor Web para
presentarlos (Apache), el intrprete PHP bajo el cual se ejecutar JFFNMS,
utilidades y programas para generar grficos (RRDtool, Graphviz, etc.) .JFFNMS
se distribuye bajo la licencia GPL. 9
Fping: 10La utilidad ping comprueba el estado de la conexin con uno o varios
equipos remotos por medio de los paquetes de solicitud de eco y de respuesta de
eco (ambos definidos en el protocolo de red ICMP) para determinar si un sistema
8
Disponible en Internet. <http://wiki.canaima.softwarelibre.gob.ve/wiki/index.php/Servidor_Jffnms>
9
Disponible en Internet <http://www.es.gnu.org/modules/content/index.php?id=8>
10
Disponible en Internet. <http://fping.sourceforge.net/>
34
IP especfico es accesible en una red. Es til para diagnosticar los errores en
redes o enrutadores IP.
Fping es una utilidad que realiza un ping original pero con mltiples funciones
extras, proporcionndote as mucha ms informacin y detalles.
11
Disponible en internet. <http://oss.oetiker.ch/rrdtool/>
35
CAPITULO 6: ATAQUES DE DENEGACIN DE SERVICIO (DDoS) A
APLICACIONES WEB
12
Search Software Quality. [Web en lnea]. Disponible desde Internet en:
<http://searchsoftwarequality.techtarget.com/sDefinition/0,,sid92_gci213591,00.html>
13
CERT Advisory CA-1999-17 Denial-of-Service Tools. [Web en lnea]. Disponible desde Internet en:
<http://www.cert.org/advisories/CA-1999-17.html>
36
Figura 25. Escenario de un Ataque de Denegacin de servicio (DoS)
Fuente: <El Autor> Adaptado < MIRKOVIC.J. D-WARD Source-End Defense Against Distributed
Denial-of-Service Attacks.2003. p 38.>
En la Figura 25, se explica una denegacin del servicio tpica. Que se produce
cuando la vctima (V) recibe un malicioso flujo de paquetes obligndola a evitar
recibir algn recurso o servicio de los clientes legtimos C1, y C2. Una
caracterstica de estos ataques es que los atacantes rara vez utilizan sus propias
mquinas para llevar a cabo los ataques por lo que la mquina A se convierte en
un agente o participante involuntario
14
[Web en lnea].Disponible desde Internet en:
<http://searchsecurity.techtarget.com/sDefinition/0,,sid14_gci557336,00.html>
37
Figura 26. Escenario de un Ataque de Denegacin de servicio Distribudo (DDoS)
Fuente: <El Autor> Adaptado < MIRKOVIC.J. D-WARD Source-End Defense Against Distributed
Denial-of-Service Attacks.2003. p 40.>
15
VERDEJO. G. Seguridad en Redes IP. Universitat Autnoma de Barcelona. Barcelona Sep. 2003. p,36
38
Agentes externos: Este grupo hace referencia a los no usuarios del sistema. De
esta forma se consigue acceso al recurso o servicio sin necesidad de ser un
usuario legtimo (un sistema que no controle la autenticacin de usuarios, un
sistema que presente un bug conocido...). En este grupo usualmente se falsea la
direccin de origen (faked/spoofed IP) con el propsito de evitar el origen real del
ataque.
39
Un gran nmero de mquinas agente: Ac se complica el ataque, por que
incluso si un sistema de deteccin de intrusos (IDS) detecta las peticiones y el
origen de las mismas, por el gran volumen de atacantes y la diversidad de
paquetes enviados, pueden evitar que las repuestas lleguen al sistema de
deteccin y tomar mucho tiempo en procesarse dando oportunidad a usar la
reflexin explicada anteriormente para retomar el ataque.
26.4.2 Similitud de trfico legtimo: Cualquier tipo de trfico puede ser utilizado
para ejecutar un ataque de denegacin de servicio. Algunos tipos de trfico
requieren un mayor volumen de paquetes para que tengan mayor xito que otros.
El trfico legtimo fcilmente puede ser confundido con el trfico malicioso.
40
LECCIN 27: FASES PREVIAS A LA REALIZACIN DEL ATAQUE:
Para poder realizar el ataque a la red local, o a una aplicacin web o a una URL
especfica, se identificaron unas etapas previas o fases que se realizan para poder
perpetrar un ataque (DoS) de nivel de seguridad a una red TCP/IP que permitan
identificar estrategias con miras a determinar un sistema de alarmas que
minimicen el riesgo y que lo identifiquen de forma especfica y concreta.
41
Figura 27. Estructura de un datagrama IP V 4.0
Fuente: <El Autor>
16
Ibid, p. 13
42
enviando primero el bit 0, luego el bit 1, 2, 3... Y as sucesivamente hasta finalizar
el datagrama. Este orden se denomina network byte order. Para el estudio que se
lleva a cabo en la deteccin de ataques DoS, es muy importante conocer este
orden de transmisin de la informacin, puesto que los diferentes ordenadores
tienen diferentes sistemas de almacenamiento de bits en memoria.
43
ICMP tambin permite obtener informacin como la franja horaria del sistema
destino o la mscara de red. La simple ejecucin del comando ping contra la
direccin IP asociada a un nombre de dominio ofrece al atacante informacin de
gran utilidad. Para empezar, esta informacin le permitir determinar la existencia
de uno o ms equipos conectados a la red de este dominio.
El Tipo (Type) indica el carcter del mensaje enviado, ya que el protocolo permite
especificar una gran variedad de errores o mensajes de control de flujo de las
comunicaciones
La tabla 4 muestra el tipo de mensajes que el protocolo ICMP emite y los cdigos
de error utilizados para su identificacin. Estos cdigos estn ordenados en la
44
columna izquierda en orden jerrquico clasificados en Mensajes informativos y
Cdigos de error.
Mensajes informativos
0 Echo Reply (respuesta de eco)
3 Destination Unreacheable (destino inaccesible)
4 Source Quench (disminucin del trfico desde el origen)
5 Redirect (redireccionar - cambio de ruta)
8 Echo (solicitud de eco)
11 Time Exceeded (tiempo excedido para un datagrama)
12 Parameter Problem (problema de parmetros
13 Timestamp (solicitud de marca de tiempo)
14 Timestamp Reply (respuesta de marca de tiempo)
15 Information Request (solicitud de informacin) - obsoleto-
16 Information Reply (respuesta de informacin) - obsoleto-
17 Addressmask (solicitud de mscara de direccin)
18 Addressmask Reply (respuesta de mscara de direccin
Cdigos de error
0 no se puede llegar a la red
1 no se puede llegar al host o aplicacin de destino
2 el destino no dispone del protocolo solicitado
3 no se puede llegar al puerto destino o la aplicacin destino no est libre
4 se necesita aplicar fragmentacin, pero el flag correspondiente indica lo contrario
5 la ruta de origen no es correcta
6 no se conoce la red destino
7 no se conoce el host destino
8 el host origen est aislado
9 la comunicacin con la red destino est prohibida por razones administrativas
10 la comunicacin con el host destino est prohibida por razones administrativas
11 no se puede llegar a la red destino debido al Tipo de servicio
12 no se puede llegar al host destino debido al Tipo de servicio
Poder identificar los errores en el campo de Cdigo (Code) que indica el cdigo de
error dentro del tipo de error indicado en el campo tipo agrupando los mensajes
en tipos y dentro de cada tipo especificando el cdigo concreto al que se refiere,
ayudan a determinar alertas sobre los fallos en la red o posibles ataques.
45
El Checksum simplemente permite verificar la integridad del mensaje enviado, lo
que permite detectar posibles errores en el envo, transporte o recepcin del
mensaje de control ICMP.
El sistema est estructurado en forma de rbol. Cada nodo del rbol est
compuesto por un grupo de servidores que se encargan de resolver un conjunto
de dominios (zona de autoridad). Un servidor puede delegar en otro (u otros) la
autoridad sobre alguna de sus sub-zonas (esto es, algn subdominio de la zona
sobre la que l tiene autoridad)
46
LECCIN 28: FINGERPRINTING
La seguridad en aplicaciones web, debe llevar a los profesionales que traten esta
temtica, poder identificar ataques DoS en redes Ethernet. Se trata entonces de
obtener informacin de un sistema concreto y de alguna vulnerabilidad especfica.
Esto se hace obteniendo su huella identificativa respecto de la pila TCP/IP de los
equipos atacados. Esta tcnica es la que se conoce como Fingerprinting y la
informacin que puede brindar esta tcnica dentro de las muchas opciones que
tiene de descubrir datos de la vctima es la de permitir descubrir de forma muy
fiable el sistema operativo que se ejecuta en la maquina analizada.
Un anlisis previo de esta Pila TCP/IP permite ver como es de vulnerable esta
implementacin:
47
Antes de poder transmitir datos entre un host de origen S y un host de destino D,
TCP tiene que establecer una conexin entre S y D como se ve en la figura (6). El
establecimiento de esta conexin recibe el nombre de conexin en tres vas
como se representa en la figura (31).
El mecanismo es el siguiente:
1. En primer lugar, el host que desea iniciar la conexin ejecuta una primitiva
CONNECT especificando la direccin IP y el puerto con el que se desea conectar,
el tamao mximo del segmento que est dispuesto a aceptar y opcionalmente
otros datos, como alguna contrasea de usuario. Entonces la primitiva CONNCET
hace una apertura activa, enviando al otro host un paquete que tiene el bit SYN
(ver formato de un segmento TCP ms abajo) activado, indicndole tambin el
nmero de secuencia inicial "x" que usar para enviar sus mensajes.
17
Protocolo de acuerdo a tres vas. Disponible desde Internet en:
<http://neo.lcc.uma.es/evirtual/cdd/tutorial/transporte/twhandshake.html >
48
2. El segundo paso contina con el host receptor que recibe el segmento revisa si
hay algn proceso activo que haya ejecutado un LISTEN en el puerto solicitado,
es decir, preparado para recibir datos por ese puerto. Si lo hay, el proceso a la
escucha recibe el segmento TCP entrante, registra el nmero de secuencia "x" y,
si desea abrir la conexin, responde con un acuse de recibo "x + 1" con el bit SYN
activado e incluye su propio nmero de secuencia inicial "y", dejando entonces
abierta la conexin por su extremo. El nmero de acuse de recibo "x + 1" significa
que el host ha recibido todos los octetos hasta e incluyendo "x", y espera "x + 1" a
continuacin. Si no desa establecer la conexin, enva un contestacin con el bit
RST activado, para que el host en el otro extremo lo sepa.
Hay diferentes formas de explotar las vulnerabilidades de TCP/IP en los que los
ataques de Denegacin de Servicio hacen uso de diferentes tcnicas para realizar
esta exploracin de puertos TCP. Entre las ms conocidas, se destacan las
siguientes:
49
TCP SYN scan. Enviando nicamente paquetes de inicio de conexin
(SYN) por cada uno de los puertos que se quieren analizar se puede
determinar si estos estn abiertos o no. Recibir como respuesta un
paquete RST-ACK significa que no existe ningn servicio que escuche por
este puerto. Por el contrario, si se recibe un paquete SYN-ACK, podemos
afirmar la existencia de un servicio asociado a dicho puerto TCP. En este
caso, se enviara un paquete RST-ACK para no establecer conexin y no
ser registrados por el sistema objetivo, a diferencia del caso anterior (TCP
connect scan).
TCP Xmas Tree scan. Esta tcnica es muy similar a la anterior, y tambin
se obtiene como resultado un paquete de reset si el puerto est cerrado. En
este caso se envan paquetes FIN, URG y PUSH.
50
los paquetes enviados se consigue mediante el vencimiento de temporizadores
(timeouts).
Otros mtodos tienen que ver con el uso indirecto de ICMP haciendo que un
equipo conteste con paquetes de este tipo cuando se introducen errores en los
paquetes IP:
51
Los firewall y los IDS deberan tener en cuenta este tipo de trfico, y manejarlo
con cuidado, ya que si un firewall simplemente no deja volver paquete ICMP
parameter problem, entonces un atacante puede detectar la existencia del mismo.
Este tamao tambin puede variar de una red a otra dependiendo el medio fsico
empleado para su transmisin. La MTU por defecto de un datagrama IP para una
red de tipo Ethernet es de 1500 bytes. Si un datagrama IP es mayor a este tamao
y necesita pasar por este tipo de red, es necesario fragmentarlo; labor que la
realiza el router o encaminador que dirige la red. Su RFC corresponde al [RFC
1191]
Esta fragmentacin puede ser usada por un atacante para hacer mal uso de eta
propiedad del protocolo IP para provocar ataques de Denegacin de Servicio
(DoS) a causa de una mala implementacin de la pila TCP/IP as como para
esconder y facilitar la fase de recogida de informacin, bsqueda de huellas
identificativas y exploracin de puertos.
52
La figura (32) se observa la configuracin de un datagrama IP no fragmentado que
contiene una cabecera UP que generalmente es de un tamao de 20 bytes con
informacin necesaria para poder dirigir el datagrama IP hacia su destino
(direccin IP de origen y destino o de encaminamiento). Los 1480 bytes de datos
restantes encapsulados corresponden pueden ser d eun protocolo TCP, UDP o
ICMP.
53
Continuando el anlisis con una MTU bsica o tpica de 1500 bytes, en una
peticin de echo request del protocolo ICMP (ping) con un envo de tres paquetes
como se muestra a continuacin y con un datagrama de 4028 bytes, se puede
identificar como el protocolo ICMP separa los 8 bytes correspondiente a la
cabecera ICMP:
root@bt:~# ping -c 3 -s 4020 10.1.1.11
PING 10.1.1.11 (10.1.1.11) 4020(4048) bytes of data.
4028 bytes from 10.1.1.11: icmp_seq=1 ttl=128 time=4.73 ms
4028 bytes from 10.1.1.11: icmp_seq=2 ttl=128 time=1.29 ms
4028 bytes from 10.1.1.11: icmp_seq=3 ttl=128 time=1.28 ms
--- 10.1.1.11 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 1.281/2.436/4.735/1.625 ms
root@bt:~#
54
Un anlisis del re ensamblado se evidencia con el analizador de protocolos
Wireshark como se muestra en la Figura 34 y 35. Se identifica una cabecera de 20
bytes y los tres frames: (Dos de 1480 y uno de 1068 butes). Esta informacin la ha
arrojado un analizador de protocolos. Se identifica claramente la direccin IP
origen 10.1.1.2 (source) y la direccin IP destino 10.1.1.11 (Destination)
confirmando el re ensamblado IP en tres (03) Frames.
Figura 35. Fragmentacin y Reensamblado de 4028 bytes con una MTU de 1500 bytes. Analizado
en Wireshark
Fuente: El autor
55
La comunicacin TCP y su re ensamblado se confirma en la negociacin de tres
vas en el diagrama Flow Graph Figura (36). Los paquetes IP e ICMP son re
ensamblados en orden jerrquico desde su origen la direccin IP 10.1.1.2 al 57
destino la direccin IP 10.1.1.11 . Este re ensamblado se realiza en dieciocho (18)
envos que corresponden a 6 mensajes por cada fragmento. Al ser tres (03)
fragmentos se completan los 18 envos
56
paquetes por lo que el rendimiento en la red se baja de inmediato y
considerablemente hasta llegar a denegar el servicio.
57
excede el lmite de tiempo o umbral, se libera la memoria que mantiene el estado
de la conexin y la cuenta de la cola de servicios se disminuye en 1. El atacante
debe usar un IP falso para que no le hagan seguimiento a las conexiones.
ORIGEN DESTINO
IP=1.2.3.4 SYN IP=10.1.1.11
IP=1.2.3.4 SYN/ACK IP=10.1.1.11
Nunca responde con ACK El IP=10.1.1.11guarda en la cola la peticin
de conexin por 1 minuto
Se repite la secuencia de requerimiento El IP=10.1.1.11se satura por tanto
requerimiento encolado y ocurre el DoS
Cualquier IP cliente pide servicio al servidor El IP=10.1.1.11 no puede atender
requerimientos pues est en medio de un
ataque DoS. Solamente cuando cese el
ataque automticamente se atienden los
requerimientos de los clientes
PARAMETRO DESCRIPCION
10.1.1.11 IP de la Victima
--rand-source IP ficticio o spoofed, se genera aleatorio, la
idea es que no exista en la red, al no existir
este no responde y as el atacante pasa
inadvertido
--debug Muestra cada intento
58
-S Indica el flag S o SYN para solicitar un
servicio
--destport Indica el servicio requerido, es clave que
este
servicio este habilitado en la victima
--faster Hace el intento de envi de SYN lo mas
rpido que se pueda
.w 2048 La ventana de envo mximo ser de 2048
Las opciones de envo o inundacin de peticiones que hacen de este ataque uno
de los mas perpetrados en redes Ethernet son comprobadas mediante el
incremento del envo de paquetes por cada segundo que pasa. Debe inundarse la
red con muchos paquetes por segundo para que el ataque sea efectivo. Estas
opciones se ejecutan con los siguientes comandos:
59
TCP: Genera peticiones de conexin con el objetivo de saturar los recursos de red
de la mquina atacada. Este protocolo es orientado a conexin, y como tal
consume recursos de memoria y CPU por cada conexin. El objetivo es el de
saturar los recursos de red disponibles de los ordenadores que reciben las
peticiones de conexin y degradar la calidad del servicio.
60
29.3 Smurf: Este tipo de ataque se basa en falsear las direcciones de origen y
destino de una peticin ICMP de ECHO (ping). La Figura 39 muestra la topologa
del ataque que como direccin de origen utiliza la direccin IP de la mquina que
va a ser atacada. En el campo de la direccin de destino se ubica la direccin
broadcast de la red local o red que se utilizar como lanzadera para colapsar al
sistema elegido. Con esta peticin fraudulenta, se consigue que todas las
mquinas de la red contesten a la vez a una misma mquina, consumiendo el
ancho de banda disponible y saturando al ordenador elegido.
29.4 STeardrop: Este tipo de ataque aprovecha las deficiencias que presenta el
reensamblado de paquetes IP cuando son fragmentados. Por definicin del
protocolo, un paquete IP tiene un tamao mximo de 64K (65.535Bytes).
root@bt:~# ping -c 3 -s 70000 10.1.1.16
Error: packet size 70000 is too large. Maximum is 65507
root@bt:~#
61
Cada red por la que transitan los paquetes IP tiene un tamao mximo de paquete
(MTU, Maximum Transfer Unit), es por ello que se necesitan fragmentar los
paquetes IP en varios trozos que sern reconstruidos al llegar al destino.
62
Otra variante de este ataque consiste en enviar cientos de fragmentos
modificados de forma que se solapen con el objetivo de saturar la pila de
protocolo IP de la mquina atacada.
63
Este ataque puede realizarse entre varios ordenadores (consumiendo ancho de
banda y degradando el rendimiento de la red) o desde un mismo ordenador (l
mismo se enva una peticin y responde) consiguiendo consumir los recursos
existentes (especialmente CPU y memoria) de la mquina atacada.
Con los resultados obtenidos del rastreo se genera una lista de ordenadores
vulnerables dnde se ejecutarn los programas para obtener el acceso (exploits).
Para verificar que ordenadores de la lista han podido ser captados, el ordenador
de origen suele tener un proceso demonio (daemon) que escucha el puerto TCP
1524, dnde se enviar una seal por cada ordenador infectado.
64
Figura42. Ataque DDoS TRIN00
Fuente: <El Autor.>
19
<HERRERA. Jordi, GARCIA, Alfaro y PERRAMON. Javier. Aspectos Avanzados de Seguridad
en Redes. UOC. Espaa. P. 42>
65
Figura43. Esquema de comunicaciones de TRIN00
Fuente: <El Autor.>
66
HERRAMIENTAS FUNCION
Descubrimiento automtico Un descubrimiento dinmico, proactivo, reactivo y
de la topologa de la red programado permite una deteccin rpida y eficiente de
los cambios y las actualizaciones en la red.
Herramientas de diagnstico Este conjunto de herramientas permite que el usuario
de la red conozca el estado de su conexin
67
que la trama capturada pertenece a un protocolo
concreto.
Finalmente le muestra al usuario la informacin
codificada.
Analizadores de niveles de El usuario puede ver todo aquello que en un momento
carga en la red. concreto est circulando por la red que se est
analizando.
Software e presentacin Permite al usuario monitorizar y controlar la red
Interfaz de usuario unificada
La misma en cualquier nodo
Organizan, resumen y simplifican la informacin
Representacin grfica preferible
Lenguajes de programacin Para manipular bugs, registros de logs, creacin de
sniffers.
68
RRD para almacenar persistentemente
estadsticas de trfico
ANALIZADOR DE Wireshark: Es un analizador de protocolos de red para
PROTOCOLOS Fuente: Unix y Windows, Permite examinar datos de
http://www.wireshark.org/ una red viva o de un archivo de captura en
algn disco.
Fuente: http://www.snort.org/
Fuente:
http://www.tcpdump.org/
Generador de grficos
RRDtool
Fuente:
http://oss.oetiker.ch/rrdtool/
69
GLOSARIO DE TRMINOS:
ASN (Abstract Syntax Notation): Lenguaje utilizado para definir tipos de datos.
70
"Password Recovery Sistema "," La dbil validacin de recuperacin de
contrasea ".
71
Cookie: Pequea cantidad de datos enviados por el servidor web, a una web de
un cliente, que puede ser almacenada y recuperada en un momento posterior.
Tpicamente se utilizan cookies para realizar un seguimiento de un estado de los
usuarios a medida que usan, navegan o interactan con un sitio web.
72
DESBORDAMIENTO DE BUFFER: posibilidad de corromper la pila de ejecucin
para modificar el valor de retorno de una llamada a funcin y provocar la ejecucin
de cdigo arbitrario.
DoS: (de las siglas en ingls Denial of Service), Ataque de Denegacin de servicio
73
EXPLOTACIN DE UN SERVICIO: actividad realizada por un atacante para
conseguir una escalada de privilegios, abusando de alguna deficiencia del servicio
o del sistema.
Formato de ataque String: Una tcnica de explotacin que altera el flujo de una
aplicacin mediante operaciones de biblioteca de formato de cadenas para
acceder a otra instancia o momento de la aplicacin.
74
IDS (Intrusion Detection System): Sistema de deteccin de Intrusos. Es una
herramienta que permite monitorear el comportamiento y el uso que se le da a los
recursos en una mquina y detectar si alguien est haciendo algo indebido.
IEEE: Tecnologa desarrollada por Apple Computer en 1986 que permite transmitir
informacin a alta velocidad. Fue adoptado como estndar en 1995 y es similar al
puerto USB.
IEEE 802.3 proporciona una LAN estndar desarrollada originalmente por Xerox y
ampliada. Define dos categoras: banda base (especfica una seal digital) y
banda ancha (especifica una seal analgica). IEEE define nicamente una
especificacin para la categora de banda ancha. Sin embargo, la restriccin de la
mxima longitud del cable puede cambiar usando dispositivos de red tales como
repetidores o puentes.
INTEGRIDAD: los datos reflejen la realidad y que correspondan con lo que debe
ser y no ha sido modificadas indebidamente.
INTEGRIDAD: Los datos reflejan la realidad y que correspondan con lo que debe
ser y no ha sido modificadas indebidamente.
JavaScript: Lenguaje de scripting del lado cliente utilizado por el navegador web,
para crear contenido dinmico pgina web. Vase tambin "ActiveX", "Java
Applets "," Client-Side Scripting ".
MODEM ADSL: Modula las seales enviadas desde la red local para que puedan
transmitirse por la lnea ADSL y demodula las seales recibidas por sta para que
los equipos de la LAN puedan interpretarlos. De hecho, existen configuraciones
formadas por un mdem ADSL y un router que hacen la misma funcin que un
router ADSL.
MTU: Maximum Transfer Unit
NMAP: Programa de cdigo abierto que abierto que sirve para efectuar rastreo de
puertos TCP y UDP. Se usa para evaluar la seguridad de sistemas informticos
as como para descubrir servicios o servidores en una red informtica.
OID (Object ID): identifica de manera nica cada objeto representado en la MIB y
es una secuencia de nmeros enteros no negativos separados por un punto.
76
PDU (Protocol Data Unit): define la estructura de la informacin que va a ser
enviada por la red.
RRDTOOL: Herramienta que trabaja con una base de datos que maneja
planificacin segn Round-Robin. Esta tcnica trabaja con una cantidad de datos
fija, definida en el momento de crear la base de datos, y un puntero al elemento
actual. Su finalidad principal es el tratamiento de datos temporales y datos seriales
como temperaturas, transferencias en redes, cargas del procesador, entre otros.
77
TCP/IP: Es la base de Internet, y sirve para enlazar computadoras que utilizan
diferentes sistemas operativos, incluyendo PC, minicomputadoras y computadoras
centrales sobre redes de rea local (LAN) y rea extensa (WAN)
Ubicacin de Archivo Predecible: Una tcnica que se utiliza para acceder a los
datos ocultos de un sitio web o a su contenido o funcionalidad, haciendo
conjeturas, de forma manual o automticamente a los los nombres y ubicaciones
de los archivos. Los lugares pueden incluir directorios, archivos de configuracin
de copia de seguridad archivos, archivos temporales, etc
78
ANEXOS
ANEXO 1:
79
FUENTES DOCUMENTALES
LUIS GMEZ FERNNDEZ Y ANA ANDRS LVAREZ . Gua de aplicacin de la Norma UNE-
ISO/IEC 27001 sobre seguridad en sistemas de informacin para pymes. 2. edicin
Autores: AENOR (Asociacin Espaola de Normalizacin y Certificacin), 2012 Todos los
derechos reservados. AENOR. ISBN: 978-84-8143-7 - Impreso en Espaa Edita:
AENOR Maqueta y diseo de cubierta: AENOR
Miguel Colobran Huguet, Josep Maria Arqus Soldevila y Eduard Marco Galindo. Editorial
UOC Primera edicin en lengua castellana: noviembre 2008. Espaa: Editorial UOC, 2008.
p 4.
JUSTIN, CLARKE. SQL Injection Attacks and Defense. Syngress Publishing, Inc. Elsevier,
Inc. 30 Corporate Drive ISBN 13: 978-1-59749-424-3.
CUI-MEI, B. Intrusion Detection Based on One-class SVM and SNMP MIB data.
Shandong University of Technology Zibo. China 2009. Fifth International
Conference on information Assurance and Security, p. 346-351.
80
CARVAJAL, A. Introduccin a las tcnicas de ataque e investigacin Forense,
Un enfoque pragmtico. Colombia, Agosto de 2007, seg Ed, p. 245
81