Está en la página 1de 15

Amenazas

Los protocolos de comunicacin utilizados carecen (en su mayora) de seguridad o esta ha


sido implementada en forma de "parche" tiempo despus de su creacin.
Existen agujeros de seguridad en los sistemas operativos.
Existen agujeros de seguridad en las aplicaciones.
Existen errores en las configuraciones de los sistemas.
Los usuarios carecen de informacin respecto al tema.
Esta lista podra seguir extendindose a medida que se evalen mayor cantidad de elementos
de un Sistema Informtico.
Las empresas u organizaciones no se pueden permitir el lujo de denunciar ataques a sus
sistemas, pues el nivel de confianza de los clientes (ciudadanos) bajara enormemente.
Los Administradores tienen cada vez mayor conciencia respecto de la seguridad de sus
sistemas y arreglan por s mismos las deficiencias detectadas. A esto hay que aadir las
nuevas herramientas de seguridad disponibles en el mercado.
Los "advisories" (documentos explicativos) sobre los nuevos agujeros de seguridad
detectados y la forma de solucionarlos, lanzados por el CERT, han dado sus frutos.

Acceso - Uso - Autorizacin
La identificacin de estas palabras es muy importante ya que el uso de algunas implica un uso
desapropiado de las otras.
Especficamente "Acceso" y "Hacer Uso" no son el mismo concepto cuando se estudian desde
el punto de vista de un usuario y de un intruso. Por ejemplo:
Cuando un usuario tiene acceso autorizado, implica que tiene autorizado el uso de
un recurso.
Cuando un atacante tiene acceso desautorizado est haciendo uso desautorizado
del sistema.
Pero, cuando un atacante hace uso desautorizado de un sistema, esto implica que el
acceso fue autorizado (simulacin de usuario).
Luego un Ataque ser un intento de acceso, o uso desautorizado de un recurso, sea
satisfactorio o no. Un Incidente envuelve un conjunto de ataques que pueden ser distinguidos
de otro grupo por las caractersticas del mismo (grado, similitud, tcnicas utilizadas, tiempos,
etc.).
John D. Howard(1) en su tesis estudia la cantidad de ataques que puede tener un incidente. Al
concluir dicho estudio y basado en su experiencia en los laboratorios del CERT afirma que
esta cantidad vara entre 10 y 1.000 y estima que un nmero razonable para estudios es de
100 ataques por incidentes.

Deteccin de Intrusos
A finales de 1996, Dan Farmer (creador de una de las herramientas ms tiles en la deteccin
de intrusos: SATAN) realiz un estudio sobre seguridad analizando 2.203 sistemas de sitios en
Internet. Los sistemas objeto del estudio fueron Web Sites orientados al comercio y con
contenidos especficos, adems de un conjunto de sistemas informticos aleatorios con los
que realizar comparaciones.
El estudio se realiz empleando tcnicas sencillas y no intrusivas. Se dividieron los problemas
potenciales de seguridad en dos grupos: rojos (red) y amarillos (yellow).
Los problemas del grupo rojo son los ms serios y suponen que el sistema est abierto a un
atacante potencial, es decir, posee problemas de seguridad conocidos en disposicin de ser
explotados. As por ejemplo, un problema de seguridad del grupo rojo es un equipo que tiene
el servicio de FTP annimo mal configurado. Los problemas de seguridad del grupo amarillo
son menos serios pero tambin reseables. Implican que el problema detectado no
compromete inmediatamente al sistema pero puede causarle serios daos o bien, que es
necesario realizar tests ms intrusivos para determinar si existe o no un problema del grupo
rojo.
La tabla 7.1 resume los sistemas evaluados, el nmero de equipos en cada categora y los
porcentajes de vulnerabilidad para cada uno. Aunque los resultados son lmites superiores, no
dejan de ser... escandalosos.

Como puede observarse, cerca de los dos tercios de los sistemas analizados tenan serios
problemas de seguridad y Farmer destaca que casi un tercio de ellos podan ser atacados con
un mnimo esfuerzo.

Identificacin de las Amenazas
La identificacin de amenazas requiere conocer los tipos de ataques, el tipo de acceso, la
forma operacional y los objetivos del atacante.
Las consecuencias de los ataques se podran clasificar en:
Data Corruption: la informacin que no contena defectos pasa a tenerlos.
Denial of Service (DoS): servicios que deberan estar disponibles no lo estn.
Leakage: los datos llegan a destinos a los que no deberan llegar.
Desde 1990 hasta nuestros das, el CERT viene desarrollando una serie de estadsticas que
demuestran que cada da se registran ms ataques informticos, y estos son cada vez ms
sofisticados, automticos y difciles de rastrear.
La Tabla 7.2 detalla el tipo de atacante, las herramientas utilizadas, en que fase se realiza el
ataque, los tipos de procesos atacados, los resultados esperados y/u obtenidos y los objetivos
perseguidos por los intrusos.


Cualquier adolescente de 15 aos (Script Kiddies), sin tener grandes conocimientos, pero con
una potente y estable herramienta de ataque desarrollada por los Gurs, es capaz de dejar
fuera de servicio cualquier servidor de informacin de cualquier organismo en Internet,
simplemente siguiendo las instrucciones que acompaan la herramienta.
Los nmero que siguen no pretenden alarmar a nadie ni sembrar la semilla del futuro Hacker.
Evidentemente la informacin puede ser aprovechada para fines menos lcitos que para los
cuales fue pensada, pero esto es algo ciertamente difcil de evitar.


Nota I: Estos incidentes slo representan el 30% correspondientes a los Hackers. Nota II: En
1992 el DISA(2) realiz un estudio durante el cual se llevaron a cabo 38.000 ataques a
distintas sitios de organizaciones gubernamentales (muchas de ellas militares). El resultado
de los ataques desde 1992 a 1995 se resumen en el siguiente cuadro(3):

Puede observarse que solo el 0,70% (267) de los incidentes fueron reportados. Luego, si en el
ao 2000 se denunciaron 21.756 casos eso arroja 3.064.225 incidentes en ese ao. Nota III:
Puede observarse que los incidente reportados en 1997 con respecto al ao anterior es
menor. Esto puede deberse a diversas causas:
Las empresas u organizaciones no se pueden permitir el lujo de denunciar ataques a
sus sistemas, pues el nivel de confianza de los clientes (ciudadanos) bajara
enormemente.
Los administradores tienen cada vez mayor conciencia respecto de la seguridad de sus
sistemas y arreglan por s mismos las deficiencias detectadas. A esto hay que aadir
las nuevas herramientas de seguridad disponibles en el mercado.
Los "Advisories" (documentos explicativos) sobre los nuevos agujeros de seguridad
detectados y la forma de solucionarlos, lanzados por el CERT, han dado sus frutos.

Tipos de Ataques
A continuacin se expondrn diferentes tipos de ataques perpetrados, principalmente, por
Hackers. Estos ataques pueden ser realizados sobre cualquier tipo de red, sistema operativo,
usando diferentes protocolos, etc. En los primeros tiempos, los ataques involucraban poca
sofisticacin tcnica. Los Insiders (operadores, programadores, data entrys) utilizaban sus
permisos para alterar archivos o registros. Los Outsiders ingresaban a la red simplemente
averiguando una password vlida. A travs de los aos se han desarrollado formas cada vez
ms sofisticadas de ataque para explotar "agujeros" en el diseo, configuracin y operacin de
los sistemas.
Ingeniera Social
Ingeniera Social Inversa
Trashing (Cartoneo)
Ataques de Monitorizacin
Ataques de Autenticacin
Denial of Service (DoS)
Ataques de Modificacin - Dao
Errores de Diseo, Implementacin y Operacin
Muchos sistemas estn expuestos a "agujeros" de seguridad que son explotados para acceder
a archivos, obtener privilegios o realizar sabotaje. Estas vulnerabilidades ocurren por
variadas razones, y miles de "puertas invisibles" son descubiertas (cada da) en sistemas
operativos, aplicaciones de software, protocolos de red, browsers de Internet, correo
electrnico y todas clase de servicios informtico disponible.
Los Sistemas operativos abiertos (como Unix y Linux) tienen agujeros mas conocidos y
controlados que aquellos que existen en sistemas operativos cerrados (como Windows). La
importancia (y ventaja) del cdigo abierto radica en miles de usuarios analizan dicho cdigo
en busca de posibles bugs y ayudan a obtener soluciones en forma inmediata.
Constantemente encontramos en Internet avisos de nuevos descubrimientos de problemas de
seguridad (y herramientas de Hacking que los explotan), por lo que hoy tambin se hace
indispensable contar con productos que conocen esas debilidades, puedan diagnosticarlas y
actualizar el programa afectado con el parche adecuado.

Implementacin de las Tcnicas
A lo largo de mi investigacin he recopilando distinto tipos de programas que son la
aplicacin de las distintas tcnicas enumeradas anteriormente. La mayora de las mismos son
encontrados fcilmente en Internet en versiones ejecutables, y de otros se encuentra el cdigo
fuente, generalmente en lenguaje C, Java y Perl.
Cada una de las tcnicas explicadas (y ms) pueden ser utilizadas por un intruso en un ataque.
A continuacin se intentarn establecer el orden de utilizacin de las mismas, pero siempre
remarcando que un ataque insume mucha paciencia, imaginacin acumulacin de
conocimientos y experiencia dada (en la mayora de los casos) por prueba y error.
1. Identificacin del problema (vctima): en esta etapa se recopila toda la informacin
posible de la vctima. Cuanta ms informacin se acumule, ms exacto y preciso ser el
ataque, ms fcil ser eliminar las evidencias y ms difcil ser su rastreo.
2. Exploracin del sistema vctima elegido: en esta etapa se recopila informacin sobre
los sistemas activos de la vctima, cuales son los ms vulnerables y cuales se
encuentran disponibles. Es importante remarcar que si la victima parece apropiada en
la etapa de Identificacin, no significa que esto resulte as en esta segunda etapa.
3. Enumeracin: en esta etapa se identificaran las cuentas activas y los recursos
compartidos mal protegidos. La diferencia con las etapas anteriores es que aqu se
establece una conexin activa a los sistemas y la realizacin de consultas dirigidas.
Estas intrusiones pueden (y deberan) ser registradas, por el administrador del
sistema, o al menos detectadas para luego ser bloqueadas.
4. Intrusin propiamente dicha: en esta etapa el intruso conoce perfectamente el sistema
y sus debilidades y comienza a realizar las tareas que lo llevaron a trabajar, en muchas
ocasiones, durante meses.
Contrariamente a lo que se piensa, los sistemas son difciles de penetrar si estn bien
administrados y configurados. Ocasionalmente los defectos propios de la arquitectura de los
sistemas proporciona un fcil acceso, pero esto puede ser, en la mayora de los casos,
subsanado aplicando las soluciones halladas.

Cmo defenderse de estos Ataques?
La mayora de los ataques mencionados se basan en fallos de diseo inherentes a Internet (y
sus protocolos) y a los sistemas operativos utilizados, por lo que no son "solucionables" en un
plazo breve de tiempo.
La solucin inmediata en cada caso es mantenerse informado sobre todos los tipos de ataques
existentes y las actualizaciones que permanentemente lanzan las empresas desarrolladoras
de software, principalmente de sistemas operativos.
Las siguientes son medidas preventivas. Medidas que toda red y administrador deben conocer
y desplegar cuanto antes:
1. Mantener las mquinas actualizadas y seguras fsicamente
2. Mantener personal especializado en cuestiones de seguridad (o subcontratarlo).
3. Aunque una mquina no contenga informacin valiosa, hay que tener en cuenta que
puede resultar til para un atacante, a la hora de ser empleada en un DoS coordinado
o para ocultar su verdadera direccin.
4. No permitir el trfico "broadcast" desde fuera de nuestra red. De esta forma evitamos
ser empleados como "multiplicadores" durante un ataque Smurf.
5. Filtrar el trfico IP Spoof.
6. Auditorias de seguridad y sistemas de deteccin.
7. Mantenerse informado constantemente sobre cada unas de las vulnerabilidades
encontradas y parches lanzados. Para esto es recomendable estar suscripto a listas
que brinden este servicio de informacin.
8. Por ltimo, pero quizs lo ms importante, la capacitacin continua del usuario.


(1) HOWARD, John D. Thesis: An Analysis of security on the Internet 1989-1995. Carnegie
Institute of Technology. Carnegie Mellon University. 1995. EE.UU.
http://www.cert.org. Captulo 12Pgina 165 (2) DISA (Defense Information System
Agency). http://www.disa.mil (3) HOWARD, John D. Thesis. An Analysis
of security on the Internet 1989-1995. Carnegie Institute of Technology. Carnegie
Mellon University. 1995. EE.UU. http://www.cert.org. Captulo 12Pgina 168.





Tipos de encriptacin

Criptografa: si no existiera, habra que inventarla
Desde que el hombre comenz a comunicarse con sus semejantes ha experimentado la
necesidad de proteger su informacin confidencial de odos y ojos indiscretos.


Puede afirmarse que la criptografa o arte de hacer secreta la escritura naci con la
escritura misma. Desde las primeras tablillas babilnicas cifradas hace ms de 4.500
aos hasta nuestros das, la criptografa ha evolucionado considerablemente,
especialmente a partir de la irrupcin de los ordenadores.


La primera criptografa usada por el hombre fue la simtrica o de clave secreta
Para cifrar mensajes de correo, archivos del disco duro, registros de una base de datos,
y en general para cifrar grandes cantidades de datos, se utiliza un tipo de algoritmo de
cifrado conocido como de clave secreta o simtrico, representado en la figura 1.

La seguridad de un algoritmo de cifrado depende de dos factores. El primero de ellos
es la robustez de su diseo. Durante muchos siglos se vinieron usando dos tipos de
operaciones de cifrado: sustitucin y transposicin. En la sustitucin se sustituyen los
caracteres del mensaje por otros caracteres, que pueden ser del mismo alfabeto o de
alfabetos diferentes. Uno de los primeros ejemplos histricos conocidos es el cifrado
de Csar, cuyo funcionamiento se explica en la figura 2. Desde la Edad Media hasta
principios del siglo XX, fueron de uso comn los discos de cifrado basados en la
operacin de sustitucin.

El mayor inconveniente del cifrado por sustitucin es que no oculta los patrones
lingsticos de frecuencia de aparicin de letras de cada idioma, por lo que resulta
vulnerable a un criptoanlisis, el estudio de un texto cifrado con el fin de obtener el
mensaje original o bien la clave con la que se cifr el mensaje. Por supuesto, la labor
del criptoanalista se puede complicar utilizando una sustitucin polialfabtica,
consistente en sustituir un carcter por varios caracteres distintos, de manera que la
frecuencia de las letras quede ofuscada. Sin embargo, con textos suficientemente
largos, an puede obtenerse el mensaje original.


Otra operacin de cifrado que se ha utilizado tambin desde antiguo consiste en la
transposicin, es decir, simplemente se cambian de sitio las letras del mensaje
siguiendo una regla determinada, como en el ejemplo de la figura 3. Uno de los
primeros ejemplos histricos de cifrado de transposicin de los que tenemos
conocimiento es la scitala espartana.

A menudo esta regla recibe el nombre de mapa de transposicin. En este caso, el
criptoanalista debe ordenar las letras en la secuencia correcta para reconstruir el
mensaje original. Para ello, puede buscar palabras comunes, como artculos y
preposiciones, o palabras clave que tenga certeza de que aparecern en el mensaje
estudiado, lo que le ayudar a determinar cul ha sido la regla utilizada. Para
aumentar la dificultad del criptoanlisis se puede aplicar repetidamente la misma
regla o mapa de transposicin, algo muy fcil de hacer con un ordenador.

Ahora bien, la transposicin por s sola tampoco sirve para cifrar textos de manera
segura. Sin embargo, la robustez del algoritmo de cifrado puede mejorarse
considerablemente si se combinan ambas operaciones, usando sustitucin y
transposicin repetidamente sobre el mismo mensaje. Los algoritmos modernos de
cifrado, como DES y AES, utilizan mltiples vueltas de cifrado en las que se combinan
las dos operaciones, tal y como se muestra en la figura 4.




Por tanto, si un algoritmo de cifra est bien diseado, un texto cifrado slo se podr
descifrar si se conoce la clave secreta. En la buena criptografa se sigue siempre el
principio de Kerckhoffs: la seguridad del sistema debe recaer en la seguridad de la
clave, debindose suponer conocidos el resto de los parmetros del sistema
criptogrfico.


Si no se te ocurre cmo atacarlo, recurre a la fuerza bruta
El segundo factor para calibrar la seguridad de un algoritmo es la longitud de la clave
utilizada. Cuando un criptoanalista no puede encontrar fallos en el algoritmo, siempre
le queda recurrir a un ataque de fuerza bruta. Se trata de un mtodo sin elegancia, que
no ataca el algoritmo en s, sino que busca exhaustivamente todos los posibles valores
de la clave hasta dar con la correcta.

Hoy en da se estima que claves de 128 bits de longitud o ms garantizarn la
seguridad por muchos aos. De hecho, algunos algoritmos permiten seleccionar a
voluntad la longitud de la clave, como el actual estndar de cifrado AES, basado en el
algoritmo criptogrfico Rijndael.

Por consiguiente, si el diseo es robusto y la longitud de la clave es suficientemente
larga, podemos considerar que el algoritmo es seguro.





Nmeros aleatorios para elegir buenas claves de cifrado
Elegir la clave de cifrado es un asunto muy importante. La clave debe ser
perfectamente aleatoria. Ahora bien, los ordenadores son mquinas deterministas
incapaces de generar nmeros al azar. Una de las soluciones consiste en utilizar
fuentes de entropa fsicas, como por ejemplo registrar los movimientos de ratn del
usuario, sus pulsaciones de teclas, y otras fuentes semejantes. Estas secuencias,
adems de ser muy difciles de crear, no pueden reproducirse: nunca generar dos
veces la misma secuencia aleatoria.

Para aquellas situaciones en que hiciera falta repetirlas, se crean las secuencias
pseudoaleatorias. En este caso, se generan usando algoritmos deterministas, los cuales
a partir de una semilla inicial son capaces de generar secuencias de bits que se
comportan estadsticamente como si hubieran sido generadas por generadores
verdaderamente aleatorios. Cualquiera que conozca la semilla podr regenerar la
secuencia.


Hay dos tipos de algoritmos de criptografa simtrica
Existen dos grandes familias de algoritmos simtricos o de clave secreta. Los
algoritmos de cifrado en bloque y los algoritmos de cifrado en flujo.

En el caso de los algoritmos de cifrado en bloque, primero se divide el mensaje
original en bloques de un tamao determinado. Cada bloque se cifra siempre de la
misma manera e independientemente de todos los dems. Por su parte, los algoritmos
de cifrado en flujo funcionan de forma muy diferente, representada en la figura 5.

Como sera muy complicado hacer llegar al destinatario una clave tan larga como el
mensaje, en la prctica lo que se hace es una pequea trampa: en lugar de generar
aleatoriamente toda la clave, se genera una pequea semilla a partir de la cual,
mediante alguno de los algoritmos deterministas de generacin de nmeros
pseudoaleatorios ya mencionados, se genera la secuencia cifrante con la que se mezcla
el texto en claro.

Los cifradores en bloque resultan inadecuados en aquellas aplicaciones en las que la
informacin a cifrar no est disponible en su totalidad, sino a retazos, como, por
ejemplo, en las conversaciones telefnicas, ya que un bloque no puede cifrarse hasta
que estn disponibles todos sus bits.

Los cifradores en flujo no presentan este problema, puesto que cifran bit a bit la
informacin a medida que les llega. De hecho, se suelen realizar por hardware, lo que
hace que sean extremadamente rpidos y se los prefiera en aquellas aplicaciones en
las que prima la velocidad.





La criptografa de clave pblica soluciona el problema de la distribucin de
claves
Una vez cifrado un mensaje con la clave secreta, surge una nueva dificultad: cmo
enviarle al destinatario la clave secreta utilizada para cifrar el mensaje?

Se trata del mayor problema al que histricamente se ha enfrentado la criptografa,
conocido como problema de distribucin de la clave. De qu sirve utilizar el mejor
algoritmo de cifrado del mundo si no puede compartirse la clave con el destinatario
del mensaje? Durante siglos la criptografa se ha enfrentado con poco xito a este
problema, hasta que en la dcada de 1970 los criptgrafos Diffie y Hellman inventaron
la criptografa de clave pblica.

En esta forma de criptografa se dispone de dos claves: una es pblica y por tanto
conocida por todo el mundo y la otra es privada y conocida solamente por su
poseedor. Aunque cualquiera puede cifrar usando la clave pblica, slo el que posee la
correspondiente clave privada podr descifrar.

Por eso a la criptografa de clave pblica se le llama tambin asimtrica, cuyo
funcionamiento se ha representado en la figura 6. Si cifras un mensaje con la clave
pblica no podrs descifrarlo usando esa misma clave pblica. Necesitars usar la
correspondiente clave privada. Lo que cifras con una clave, debes descifrarlo con la
otra.

Tambin puede cifrarse con la clave privada. Si cifras algo con tu clave privada,
entonces cualquiera que conozca tu clave pblica podr descifrarlo. Cifrar un mensaje
con tu clave privada equivale a firmarlo porque nadie ms que el poseedor de la clave
privada podra haber cifrado ese mensaje. Cuando cifras algo con tu clave privada
ests demostrando tu autora: slo t puedes cifrarlo, por lo tanto, has tenido que ser
t quien lo cifr. Eso es lo que se llama autenticacin.

Y cualquiera puede descifrarlo usando tu clave pblica. Lo que equivale a verificar la
firma. Por eso es tan importante que tu clave privada sea privada y nunca la conozca
nadie ms que t. En la prctica, debido a que los algoritmos de cifrado asimtrico son
muy lentos, no suelen usarse para cifrar todo el mensaje, sino un resumen muy corto
del mismo calculado gracias a funciones hash (funcin unidireccional de resumen que
reduce el mensaje de partida a un valor de menor longitud, de forma que ste sirve
como representacin compacta del mensaje original).

La pareja de claves debera guardarse de forma segura, por ejemplo en una tarjeta
inteligente, como el DNI electrnico.





Las firmas electrnicas y los certificados digitales solucionan el problema de la
confianza
Cmo saber si la clave pblica de un usuario es en realidad la suya y no la de un
atacante que la ha sustituido por la suya propia? Se trata de un problema de confianza.
Igual que se vio lo difcil que resulta distribuir claves secretas de manera segura, es
igualmente difcil distribuir claves pblicas de manera fiable. Hoy en da se ha resuelto
al menos parcialmente usando las firmas electrnicas y los certificados digitales.

En principio, bastara con cifrar un documento con la clave privada para obtener una
firma digital segura, puesto que nadie excepto el poseedor de la clave privada puede
hacerlo. Posteriormente, cualquier persona podra descifrarlo con su clave pblica,
demostrndose as la identidad del firmante. En la prctica, debido a que los
algoritmos de clave pblica requieren mucho tiempo para cifrar documentos largos,
los protocolos de firma digital se implementan junto con funciones hash, de manera
que en vez de firmar un documento, se firma un resumen del mismo. Este mecanismo
implica el cifrado, mediante la clave privada del emisor, del resumen de los datos, los
cuales sern transferidos junto con el mensaje. Los pasos del protocolo aparecen
representados en la figura 7.