Documentos de Académico
Documentos de Profesional
Documentos de Cultura
4.1. Introducción
4.2. Taxonomía de los tipos de ataques
4.3. Ataques orientados a la obtención de información sobre el objetivo
4.4. Ataques, orientados a la obtención no autorizada de información
confidencial, basados en la mala administraciónde sistemas
4.5. Ataques. orientados a la obtención no autorizada de información
confidencial, basados en vulnerabilidades del software
4.6. Ataques de tipo denegación de servicio (dos)
4.7. Ataques @creativos*
4.8. Conclusiones
4.9. Evaluación
Conviene recordar lo citado en el capítulo 1 sobre el parecido entre los
ataques a redes y servidores y los ataques» o amenazas a la seguridad del
.mundo real,,. Los ataques dirigidos a los dispositivos de red que se desea
proteger están, finalmente, realizados por personas. Se puede pensar en algu-
nos: robos de bancos, malversaciones y fraudes, invasión de la confidenciali-
dad, sabotaje, espionaje, etc. Todo este tipo de problemas existen, también,
en las redes de las organizaciones actuales.
Por ejemplo, se puede decir, sin temor a equivocarse, que donde hay dine-
ro, hay criminales, con lo que asuntos como el sabotaje remoto al control de
cajeros automáticos o la pornografía infantil, pasan a ser perfectamente fac-
tibles también en las redes.
Pero, desde un punto de vista más técnico, sí hay diferencias, se podría
decir que el ciberespacio cambia las formas de los ataques y, como conse-
cuencia, se deben adecuar las formas de las defensas. La red Internet tiene
vanas características que hacen que los citados ataques puedan ser mucho
peores, en cierto sentido. Esas características son:
- El aspecto automático de los ataques. Si en algo son potentes los
ordenadores, es en las tareas repetitivas. Se puede dejar una máquina
tratando de descifrar contraseñas de manera automática, mientras el
atacante se va a pasar el fin de semana a esquiar, con la tranquilidad
de que su .trabajador. no se va a cansar, ni se va a quejar.
- El aspecto remoto de los ataques. Es casi tan fácil conectarse a un
ordenador en Paris desde Madrid que desde Tokio. En ese sentido, se
dice que Intemet «notiene fronteras,>.Lo grave es que los aspectos lega-
les de todo esto no están, aún, controlados. Como dijo John Gilmore:
~ T h eInternet treats censorship as a darnage and routes around itm
(Intemet trata a la censura como algo dañino y lo rodea).
La aún escasa legislación internacional al respecto ayuda en gran
manera a los atacantes.
88 SEGURIDAD EN LAS COMUNICACIONES Y EN LA INFORMACIÓN
4.2. TAXONO&I~A
DE LOS TIPOS D E ATAQUES
Una buena clasificación no se puede hacer sin un buen criterio. En este
caso, existen vanos buenos criterios, dependiendo de lo que se quiera anali-
zar. Atendiendo a un criterio de completitud, se van a utilizar vanos de ellos.
Se empieza por uno sencillo, pero interesante. Desde el punto de vista del
origen del ataque, se puede decir que los ataques son:
- Externos. Cuando el atacante origina su ataque desde el exterior de
una organización concreta, se dice que el ataque es externo. Esto pue-
de ser desde un sitio desconocido de Internet o desde una dirección en
la que se confía, pero que ha sido suplantada. Como se verá, esta
MÉTODOS DE ATAQUE A EQUIPOS Y REDES 89
I D ~raqinent ID:
58970
Flaqs: May be fragmented.Last fragment.0f fset=0 ( 0 x 0 0 )
Time to live 255 seconds/hopa
1--D
IP protocol type: UDP (0x11)
Suelen ser éstas las técnicas utilizadas para preparar un ataque mucho
más peligroso, al disponer el atacante de mucha información sobre el entorno
infomático y, a veces también, humano y organizativo, del objetivo a atacar.
Una vez se dispone de esa información, solo hay que aplicar un programa
cracker, que lo que hace es aplicar el algoritmo de hash a toda una lista de
palabras (más o menos extensa) y comparar el resultado con el hash del que
se dispone para cada cuenta de usuario. Normalmente, las listas son o un dic-
cionario (en el idioma deseado) o una lista de todas las combinaciones posi-
bles de todos los caracteres del estándar ASCII extendido. En el primer caso,
se habla de un cracker de tipo diccionario y, si la contraseña era sencilla, en
minutos se dispone de ella. En el segundo caso, se habla de un cracker de tipo
ufuerza bmtan, que es, por definición, infalible. Solo tiene un problema:
puede tardarse mucho en obtener la contraseña buscada. Por eso, como se
verá, es esencial cambiarla con cierta periodicidad.
Basta con ir a un buscador, por ejemplo Google, y buscar «password crac-
ker>>para obtener cientos de ellos diferentes. No obstante, por completitud, se
citan algunos de los más típicos:
- xcrack.zip: Última versión del Manics Unix/Linux Password Cracker,
codificado en Pearl. Es rápido (300.000 comparaciones por minuto en
un Pentium 133 MHz).
- John the Ripper: Aplicación que permite trabajar contra ficheros sha-
dow o passwd de distintos sistemas UNIX, desde sistemas Windows.
- LOphtcrack: Quizás el más Famoso y potente. Con un Pentium II a 400
MHz, puede aprobar» todas las contraseñas alfanuméricas en 5 horas,
las contraseñas alfanuméricas con algún símbolo típico en 50 horas y
cualquier combinación en algo más de 500 horas.
Hay aún dos aspectos más a remarcar:
- Si el usuano que tiene una contraseña fácil, la repite en todos los sis-
temas para los que tiene acceso, el ataque puede ser mucho más
demoledor.
- Si, además, en la red estamos utilizando aplicaciones como Telnet o
ftp, y no hay conmutadores, por muy difícil que sea la contraseña, bas-
ta con disponer de un sniffer, del que ya se ha hablado, para obtener,
con suma facilidad, nombres de usuario y contraseñas. El atacante
puede pensar que la contraseña es muy «rara>>, pero lo importante es
que ya la tiene.
Cuando se habla de relaciones de confianza mal administradas, se está
haciendo referencia, esencialmente, a los comando remotos de Berkeley, que
~ -
permiten ejecutar, remotamente, comandos en sistemas. En este caso, un sis-
tema A, que conHa en un sistema B (y en sus usuarios), permite (gracias a la
configuración de ficheros como letc/hosts.equiv y 1.rhosts en UNIX) que un
usuario del sistema B, con un nombre de cuenta común (o permitido por la
configuración de los ficheros citados) ejecute cualquier cosa, bajo esa cuenta
de usuano, en el sistema A. La ~confianzaxse basa en las direcciones IP de
96 SEGURIDAD EN LAS COMUNICACIONES Y EN LA INFORMACIÓN
los equipos, que es lo que suele aparecer en estos ficheros, junto con los nom-
bres de usuarios permitidos.
Hay dos puntos que suelen hacer la situación más grave: lo normal es que,
también, B confie en A (y que la situación se extienda a otras máquinas) y
suele pasar que una de las cuentas para las que esto funciona, sea la del admi-
nistrador del sistema (root en UNIX o administrador en Windows NT o 2000),
con lo que el peligro es mucho mayor. La razón de estas configuraciones tan
peligrosas es sencilla: la comodidad de trabajar de sistema a sistema, sin el
.engorro. de las contraseñas. Los comandos más típicos y extendidos en este
tipo de aentornos de confianzar son:
- rlogin. Comando que permite hacer log-in de un sistema a otro sin
contraseña, si se parte de un sistema en el que el sistema remoto «con-
fía,,. La sintaxis es muy sencilla:
rlogin nom-sis-remoto (o dirección ZP sistema remoto)
- rcp. Comando que permite copiar ficheros de un sistema a otro, en
iguales condiciones que el anterior. Su sintaxis es:
rcp especificaciólz-fichero-local
especificación-fichero-remoto
o
rcp especificación-fichero-remotoespecificación-fichero-local
por ejemplo:
rcp /home/prog/proyecto.dat 122.44.1.3:/oculto/secreto
- rsh. Comando que permite ejecutar cualquier comando de la shell
remota, en el sistema remoto. Su peligrosidad depende, grandemente,
de la cuenta que se haya suplantado. Su sintaxis es:
rsh (nombre o dir-ZP sistema remoto) ejecutable
Si, por ejemplo, se está en la cuenta root de un sistema en el que
se confía, el comando:
rsh 122.44.1.1'cd 1; rm -r *'
borraría todo el contenido de todos los discos del sistema U N E
remoto.
Si se trabaja en una red con sistemas UNIX, es típico disponer de servi-
dores NFS (Network File System), que permiten acceder a directorios y dis-
cos de sistemas remotos, como si fueran locales, lo cual, una vez más, es real-
mente cómodo. Esta configuración, mal administrada, puede resultar muy
peligrosa. Toda la información de configuración reside en un fichero conoci-
do como letclexpo~s,en el que se configura qué directorios se <<exportan,, y,
para cada uno de ellos, con qué permisos: permiso solo para leer la informa-
ción o permiso para leer y escribir (con lo que se puede también borrar en
UNIX). Suele haber, típicamente, dos problemas graves:
MÉTODOS DE ATAQUE A EQUIPOS Y REDES
- Hay una configuración por defecto, en muchos sistemas, que hace que
una vez elegidos los directorios a servir por la red, se exporten con per-
miso de lectura y escritura, dejando un gran agujero de seguridad.
Este .agujero>)resulta aún mayor si se trabaja, en los clientes, con un
entorno gráfico UNIX típico, en el que hay una opción para <<pedir,>,
desde el cliente, la lista de servidores y qué exportan cada uno y cómo
lo exportan.
- Si el administrador no se toma en serio los posibles problemas, puede,
además, permitir que el administrador del cliente trabaje en su siste-
ma, también, como administrador, con lo que cualquiera trabajando
en una cuenta de administrador, y que acceda a un directorio en el ser-
vidor, exportado de esta manera, puede trabajar como administrador
en ese servidor.
Si se cambia el entorno y se piensa en el entorno Windows de comparti-
ción de directorios, aparecen los mismos problemas que en el caso anterior.
En este caso, la administración es particularmente sencilla. Se pincha en el
directorio a compartir, en sus propiedades, se comparte el directorio y ya
está. No hay posibilidad sencilla de permitir acceso solo a determinados
usuarios y solo en determinadas condiciones. Es particularmente peligroso
en sistemas Windows .antiguos. como Windows 95 o Windows 98, en los que
no se exige autenticación en el dominio de Windows. Esto se complica, aún
más, cuando se tiene en cuenta la multitud de bugs encontrados en el proto-
colo SMB (Sewer Message Block) de Microsoft, protocolo responsable de tales
transferencias de ficheros.
Otra «vía de entrada,, a sistemas y redes es a través de protocolos con
una mala administración de su autenticación.
Quizás el caso más extendido sea el del protocolo SNMP (Simple Network
Management Protocol). Este protocolo, encargado de la gestión remota de dis-
positivos en red tiene diferentes versiones. En las más <<antiguas>>, versiones
1 y 2, el mecanismo de autenticación entre los agentes y la estación de gestión
es un «community string., que se transmite sin encriptar de ninguna manera
y que suele ser el valor por defecto, public, haciendo a todo el mundo, inclui-
do el atacante, más fácil el acceso al dispositivo objetivo, pudiendo ser éste,
incluso, la estación de gestión de red. Así, sin más que ssniffarn se puede
obtener mucha información de la red y de la gestión SNMP de cada equipo.
Se dispone de una versión 3 mejorada, con encriptación implícita, pero es,
desgraciadamente, muy normal, ver habilitado por defecto el comportamien-
to de la versión 1 en muchas redes.
Otro caso típico es el de las organizaciones, habitualmente grandes, que
administran toda la información de encaminamiento de su red mediante pro-
tocolos como OSPF (Open Shortest Path First) o EIGRP (Enhanced IGRP),
que disponen de un mecanismo de autenticación, más o menos sofisticado,
98 SEGURIDAD EN LAS COMUNICACIONES Y E N LA INFORMACIoN
que hace que los mensajes de actualización de rutas, enviados entre los dis-
tintos encaminadores, se hagan con tal información de autenticación, que,
además, suele ir encriptada. Esto es así, si está configurado, pues si no lo está
(caso muy habitual), cualquier encaminador se creen cualquier mensaje de
actualización de cualquier otro encaminador del mismo protocolo, haciendo
muy sencillo <<colocar,> uno falso en medio (que puede ser, incluso, un siste-
ma Windows 2000 o LINUX configurados como encaminador OSPF) y <<obli-
gar. a los otros encaminadores a que toda (o solo determinada) información
pase a través de ellos. Esto por no hablar en detalle (que se hará en el aparta-
do de denegación de servicio) de que el atacante puede .volver loca,, a la red,
implantado rutas falsas desde su <supuesto>,encaminador.
Llegados a este punto, hay que definir, para seguir adelante, lo que se
entiende por ~spoofingao suplantación: pretender ser salgo» o <<alguien),
que
no se es. En realidad, usar una cuenta ecrackeada,, es una suplantación de
personalidad.
El caso más extendido es el conocido como IP spoofing, en el cual una
máquina <<suplantan la dirección IP de otra (veáse la figura 4.2). La intención
resulta obvia: la máquina a la que se suplanta tiene disponible accesos (o rela-
ciones de confianza), que están vetados para el atacante.
Atacante
$ teinet servidor-smtp.com25
aquí habría un texto de presentación del servidor indicando nombre y versión
HELO satanas.cadiz.com" presentación de qué dominio viene el mensaje
aquíse obtiene u n mensaje de OK
MAIL FROM: fantomas@satanas.cadiz.com la identificación .falsa.
''
reside la víctima, habiendo colocado como dirección IP fuente del envío la del
equipo que se quiere atacar. Esto provoca que todo el resto de equipos de la
red colaboren, inocentemente, en sobrecargar la tarjeta de red de la víctima.
También se pueden utilizar peculiaridades del protocolo de transporte
TCP como herramientas de ataque. En este sentido, sobresalen ataques como
los de las aplicaciones land, en las que se envía un paquete TCP con los puer-
tos y direcciones IP modificados con los mismos valores, lo que hace creer al
equipo víctima, que está hablando consigo mismo, hasta que esta situación
provoca una sobrecarga en las tablas internas de IP, TCP o ambos.
Otra forma de aprovecharse de cómo funciona IP es empleando ataques
de tipo teardrop, en los que se envían Fragmentos IP con longitudes, y des-
plazamientos desde el inicio del mensaje, que solapan, provocando un gran
uso de recursos (en vano) para tratar de <<arreglar,,tales fragmentos. Esto
deja, en el mejor de los casos, en rendimiento muy bajo al proceso que con-
trole IP en el equipo atacado.
Dentro de los ataques DOS no es pequeño, además de especialmente vim-
lento, el subtipo de los provocados por malas implementaciones de aplica-
ciones o protocolos. Quizás el más famoso, que afectó a equipos Windows NT
y Solaris entre otros, es el ping de la muerte. No es más que un caso especial de
los ya citados ataques por desbordamiento de memoria, en el cual basta con
enviar mensajes ICMP de tipo ping con una longitud de datos del ping mayor
que 65510 bytes o más. Esto provoca, en estos casos, la sobre-escritura en posi-
ciones de memoria ocupadas por el sistema operativo, haciendo, en la mayoría
de los casos, que el equipo sufra un crash y deje de Funcionar. Afortunadamente,
hay una actualización para cada sistema en el que se ha conocido el problema.
Otro ejemplo sería un ataque .Out Of Band (OOB) data crash., en el
que el atacante envía un paquete TCP con el bit Urgent Pointer a 1, el ordena-
dor víctima no lo puede gestionar correctamente y el equipo deja de Funcio-
nar y rebota.
También entraría en esta categoría la vulnerabilidad sufrida por todos los
encaminadores de Cisco con versión del sistema operativo inferior a la 12.0,
en la que, si el encaminador tenía habilitado el servidor web (situación habi-
tual para hacer su gestión en remoto) y el atacante conocía una de las direc-
ciones IP de la víctima, bastaba con abrir el navegador, indicar como URL a
conectarse el siguiente:
http:l/dirección-IP-encaminador/%%
y esperar. En segundos, el encaminador había sufrido un crash.
Es importante señalar que solo durante los 7 últimos meses de 2002, las
principales compañías de dispositivos de red (Cisco, Juniper, Nortel, 3Com) y
de sistemas (IBM, HP, SUN, Microsoft) han avisado de este tipo de vulnerabi-
lidades. Hay que contar con ellas y no pensar en que se conocen todas, ni
mucho menos.
108 SEGURIDAD E N LAS COMUNICACIONES Y EN LA INFORMACI6N
p,
Atacante
Tabla de
CO".X~O."
embnbnic.,
...
De Victima a "NADIE", ACK, SYN
.. 1 l
A, con un SYN
FLOOD
4- "A-falso" envia un
l'<:P ACK y un
"echo ++ zz/.rhosts"
~ -
u Equipo A
Finalmente, hay que decir que los ataques pueden implicar toda una
creación de código nuevo, que utiliza aplicaciones ya existentes, para c o l a r -
se. en nuestros sistemas. Como ejemplo, que se lleva detectando (difícil-
mente) durante varios años, hay que citar a los programas de tipo LOKI. En
este tipo de ataques, es Fundamental, mediante alguno de los métodos cita-
dos hasta ahora, colocar un troyano en un equipo en la zona interna de la
red, si existe un cortafuegos (si no, es mucho más sencillo). Tal troyano es el
daemon de LOKI, que recibirá, entenderá y ejecutará el código que le llegue.
El interés, como ataque nuevo, está en cómo le llega el código al daemon: le
llega como ,<datos,,de un mensaje ICMP de tipo 8, código O (echo-request) o
de tipo 0, código O (echo-reply), es decir, que para un encaminador interme-
dio o para un cortahiegos, este tráfico es, simplemente, tráfico ICMP de tipo
ping. Realmente, lo que llega son comandos, scripts o cualquier cosa, que la
implementación de LOKI que se esté utilizando, permita. Por ejemplo
(http:liwww.phrack.org/)podrían llegar comandos imposibles de identificar
(por ejemplo, con un analizador de protocolos) por ir encnptados mediante
alguna de las técnicas criptográficas, de las que se hablara más adelante. Este
tipo de programas de tunneling de información criptografiada dentro de
mensajes ICMP no solo se ha observado para protocolos como ICMP, sino
también con protocolos de aplicación como el DNS. Se puede obtener mucha
más información en los servidores web de soporte de los sistemas más típicos
en los que está soportado LOKI, concretamente para OpenBSD, FreeBSD y
MÉTODOS DE ATAQUE A EQUIPOS Y REDES 113
Sohris 2.5, aunque, en este último caso, el soporte no se pueda buscar, obvia-
mente. en el sitio web de Sun.
4.8. CONCLUSIONES
Como se ha visto, éste de las redes puede ser un mundo realmente peli-
groso. Se remarcan los aspectos más relevantes del capítulo:
Las características que hacen los ataques en red diferentes a los simila-
res del mundo real son su aspecto automático, su aspecto remoto y la
gran velocidad de propagación de los medios de ataque.
Los ataques pueden ser realizados desde dentro de la organización
(internos) o desde fuera (externos).
Los ataques pueden ser no estructurados o estructurados, siguiendo un
esquema de tipo proyecto.
De entre los ataques para obtener información sobre el objetivo del
ataque, se ha de recordar la existencia de:
- Ataques de tipo Ingeniería Social
- Ataques basados en herramientas informáticas básicas (como el
ping) o más sofisticadas, como el nmap o los analizadores de vulne-
rabilidades
- Ataques que usan analizadores de protocolos o sniffers.
De entre los ataques que se aprovechan de la mala administración, y de
la mala configuración, de sistemas, se ha de recordar la existencia de:
- Ataques de robo de contraseñas y nombres de cuentas.
- Ataques basados en relaciones de confianza de sistemas, relaciona-
dos con los comandos remotos de Berkeley.
- Ataques basados en aplicaciones de compartición de disco, como
los de NFS.
- Ataques por autenticación mal administrada en protocolos.
- Ataques basados (o que usan) las técnicas de suplantación o spoofing.
- Ataques que se aprovechan de la inexistencia (o mala configura-
ción) de sistemas antivirus o de analizadores de vulnerabilidades.
De entre los ataques que se aprovechan de las vulnerabilidades del
software, conviene recordar los siguientes:
- Ataques debidos al ineficiente diseño de protocolos, como los
provocados por RIP.
SEGURIDAD E N LAS COMUNICACIONES Y E N LA INFORMACIÓN
2. Se puede estar seguro con cualquier bug de aplicación, pues éste es comu-
nicado primero siempre a sus usuarios.
a) Verdadero, si no fuera así no les compraría nadie.
b ) Verdadero, pues tienen sus equipos de seguridad siempre trabajando.
c ) Falso, habitualmente uno se entera con bastante tiempo de retraso
d ) Falso, es imposible que los detecten.
3. ¿En qué se basa un ataque de tipo TCP SYN FLOOD?
a ) En el algoritmo de Dijkstra aplicado al protocolo TCP.
b ) En la obtención de mensajes SYN mediante desbordamientos de
memoria.
C ) En poder hacer correctamente un reset a sesiones TCP establecidas
d) En la existencia de una tabla, de dimensión finita, de sesiones TCP en
estado embriónico.