Probablemente querremos configurar la administración de la red con las herramientas que tenemos a nuestra disposición para controlar diversas actividades. Para redes con pocas terminales, queremos controlar cuándo nuestros dispositivos de conmutación fallan, están fuera de servicio por mantenimiento, y cuando haya fallos en las líneas de comunicación u otro hardware. Es posible configurar SGMP y SNMP para que usen "traps" (mensajes no solicitados) para un host en particular o para una lista de hosts cuando ocurre un evento crítico (por ejemplo, líneas activas o desactivas). No obstante, no es realista esperar que un dispositivo de conmutación nos notifique cuando falla. También es posible que los mensajes "traps" se pierdan por un fallo en la red, o por sobrecarga, así que no podemos depender completamente de los traps. No obstante, es conveniente que nuestros dispositivos de conmutación reúnan regularmente este tipo de información. Hay varias herramientas que visualizan un mapa de la red, donde los objetos cambian de color cuando cambian de estado, y hay cuadros que muestran estadísticas sobre los datagramas y otros objetos.
Otro tipo de monitorización deseable es recolectar información para hacer informes periódicos del porcentaje de uso de la red y prestaciones. Para ello, necesitamos analizar cada dispositivo de conmutación y quedarnos con los datos de interés. En la Universidad de Rutgers esto se hace cada hora, y se obtienen datos del número de datagramas reenviados a Internet u otra red, errores, varios, etc.; y se almacenan informes detallados de cada día. Hay informes mensuales en los que se refleja el tráfico que soporta cada gateway y algunas estadísticas de errores, elegidas para ver si hay un gateway que está sobrecargado (datagramasperdidos).
Sería posible que cualquier tipo de conmutador pudiese usar cualquier tipo de técnica de monitorización. Sin embargo, generalmente los repetidores no proporcionan ningún tipo de estadística, debido a que normalmente no tienen ningún procesador para abaratar su precio. Por otro lado, es posible usar un software de administración de redes con repetidores con buffer, bridges y gateways. Los gateways, en la mayoría de los casos, incluyen un avanzado software de administración de redes. La mayoría de los gateways pueden manejar IP y los protocolos de monitorización anteriormente mencionados. Y la mayoría de los bridges tienen medios para poder recoger algunos datos de prestaciones. Puesto que los bridges no están dirigidos a ningún protocolo en particular, la mayoría de ellos no tienen el software necesario para implementar los protocolos TCP/IP de administración de redes. En algunas ocasiones, la monitorización puede hacerse tecleando algunos comandos a una consola a la que esté directamente conectada. (Hemos visto un caso donde era necesario dejar el puente fuera de servicio para recoger estos datos). En los restantes casos, es posible recoger datos a través de la red, pero el protocolo requerido no suele ser ningún estándar.
Excepto para algunas pequeñas redes, debemos insistir en que cualquier dispositivo conmutador más complejo que un simple repetidor es capaz de recolectar estadísticas y algún mecanismo para hacernos con ellas de forma remota. Aquellas partes de la red que no soporten dichas operaciones pueden monitorizarse mediante pinging (aunque el ping sólo detecta errores graves, y no nos permite examinar el nivel de ruido de una línea serie y otros datos necesarios para llevar a cabo un mantenimiento de alta calidad). Se espera que la mayoría del software disponible cumpla los protocolos SGMP/SNMP y CMIS. También un software de monitorización no estándar, siempre y cuando sea soportado por los equipos que tenemos.
2. Administracion del sistema UNIX
Tareas administrativas básicas
La administración del sistema consiste básicamente en gestionar los recursos del sistema para que se puedan utilizar de la forma más eficiente posible así como llevar control de los usuarios potenciales del sistema. Entrando más en detalle, las tareas de administración del sistema más comunes son las siguientes:
- Instalar el sistema operativo.
- Añadir, eliminar y controlar usuarios y sus contraseñas.
- Instalar software de aplicación.
- Instalar hardware (como tarjetas, impresoras, terminales y modems).
- Mantener la seguridad e integridad del sistema y de la red.
- Diagnosticar y arreglar problemas software y hardware cuando ocurran.
- Comprobar el uso de los sistemas de archivos para asegurarse que no están llenos y además controlar el uso indiscriminado de éstos.
- Mantener impresoras, modems y terminales remotos.
- Realizar copias de seguridad de los sistemas de archivos.
- Recuperar archivos desde copias de seguridad.
- Mantener servicios de red, correo y otros servicios de comunicaciones.
- Optimizar el uso de los recursos del sistema.
- Asistir a los usuarios en sus necesidades.
- Nivel 0 Estado de shutdown (apagado del sistema).
- Nivel 1 Estado de administración.
- Nivel 2 Modo monousuario.
- Nivel 3 Estado de red distribuida.
- Nivel 4 Usuario definible (no usado).
- Nivel 5 Estado de diagnósticos.
- Nivel 6 Estado de rearranque y/o shutdown.
- Sistemas de archivos montados.
- Tipo de archivo.
- Información de inodo.
- Operaciones que se pueden realizar en el archivo.
- s5 es el tipo de sistemas de archivos tradicional de System V (el estándar de AT&T). Permite nombres de archivos de hasta 14 caracteres.
- ufs está basado en el tipo de sistema de archivos utilizado en el UNIX de la Universidad de Berkeley (BSD Fast File System). Permite nombres de archivos de 250 caracteres.
- bfs es un tipo de sistema de archivos especial (boot file system) que se utiliza tan sólo para una partición donde se almacenan los archivos necesarios para realizar la carga del sistema (el directorio /stand).
? Se ejecuta un comando umask para modificar los permisos por defecto a la hora de crear nuevos archivos.
? Se analiza la existencia del archivo /etc/motd. Si este archivo existe, se lista su contenido.
? Se establecen los parámetros por defecto para el terminal.
? Se analiza si el usuario que se acaba de identificar tiene correo en su buzón. Si es así se visualiza un mensaje de aviso.
? Se analiza la existencia de algún "boletín de noticias" (news) que aún no haya sido leído por el usuario, visualizando su nombre en caso de que lo haya.
Los comandos y archivos relativos a la administración del sistema varía de una versión a otra del UNIX, pero la filosofía es siempre la misma. A continuación se verá la administración en UNIX System V Release 4 (SVR4) como ejemplo de administración de UNIX, los pasos a seguir son prácticamente los mismos para cualquier otra versión.
3. Secuencia de encendido y apagado del sistema
Modos de funcionamiento:
En UNIX SVR4 existen varios modos o niveles de ejecución, cada uno de los cuales tiene unas características y funciones específicas. A continuación se nombran estos niveles de ejecución:
Secuencia de encendido:
Para iniciar el sistema desde un estado inactivo, se realiza una secuencia de pasos conocido como bootstrap. El procedimiento de arranque varía según el tipo de máquina y nivel de ejecución pero el objetivo es el mismo en todos ellos: obtener una copia del sistema operativo en la memoria principal e iniciar su ejecución. Generalmente, cuando se enciende el ordenador, se instruye a la máquina a cargar un programa de bootstrap desde el microcódigo. El procedimiento de bootstrap lee el bloque 0 (boot block) del sistema de archivos principal y lo carga en memoria. El programa contenido en el boot block carga el kernel desde el sistema de archivos y después transfiere el control a la dirección de inicio del núcleo, para que el núcleo comience a ejecutarse.
El kernel inicializa sus estructuras de datos internas, monta el sistema de archivos principal y prepara el entorno para el proceso 0. Una vez preparado el entorno, el sistema comienza a ejecutarse como el proceso 0; luego se bifurca (se desdobla con la llamada al sistema fork) creando un nuevo proceso, el proceso 1. El proceso 0 se convierte en el proceso swapper (intercambiador) que será el encargado de manejar la asignación de espacio de direccionamiento entre la memoria principal y los dispositivos de swap. El proceso 0 o proceso swapper se ejecutará en modo kernel.
Por otra parte, el proceso 1 realiza varias inicializaciones y pasa a ejecutarse en modo usuario. Luego ejecuta el programa /usr/etc/init. Al proceso 1 se le llama normalmente como el proceso init porque es el responsable de la inicialización de nuevos procesos; o dicho de otra forma, todos los procesos en el sistema, excepto el proceso swapper, descienden del proceso init.
El proceso init es un proceso dispatcher (despachador) y produce, entre otros, los procesos para que los usuarios puedan conectarse al sistema. Normalmente ejecuta la secuencia de órdenes del script /etc/rc.boot para comprobar los sistemas de archivos y posteriormente ejecuta las órdenes del etc/rc y /etc/rc.local para comenzar las operaciones de multiusuario; en otro caso, se comenzaría en modo monousuario.
En operaciones de multiusuario, el papel de init es crear un proceso por cada puerto del terminal en el cuál un usuario pueda conectarse. Para iniciar estas operaciones, lee el archivo /etc/ttytab y ejecuta, normalmente, la orden /usr/etc/getty por cada terminal especificado en el archivo que tenga el campo de status a on. getty abre e inicializa la línea del terminal y ejecuta la orden login para permitir la conexión de usuarios. Básicamente, la orden login actualiza los archivos de accounting, imprime el mensaje del día, informa de la existencia de algún correo y muestra la fecha de la última conexión. Por último, login inicia un intérprete de órdenes basándose en las especificaciones encontradas en el archivo /etc/passwd.
Cuando se abandona el shell, el proceso init elimina la entrada apropiada del archivo /etc/utmp, el cuál registra los usuarios actuales, y realiza una entrada en el archivo /etc/wtmp, el cuál contiene un histórico de las conexiones y desconexiones.
Los procesos en un sistema UNIX pueden ser procesos de usuario, procesos daemon o procesos del kernel. Los procesos de usuarios, la mayoría, se asocian con usuarios de un terminal. Los procesos daemon no se asocian con ningún usuario pero hace funciones del sistema, tales como la administración y control de redes, ejecución de actividades dependientes del tiempo, spooling de impresión, etc… Los procesos daemon se ejecutan en modo usuario.
Los procesos del kernel se ejecutan sólo en modo kernel. Son creados por el proceso 0 antes de que éste se convierta en el proceso swapper. Los procesos del kernel son similares a los procesos daemon (proporcionan servicios del sistema) pero ellos tienen un mayor control sobre las prioridades de ejecución ya que su código es parte del kernel. Ellos pueden acceder a algoritmos del kernel y a estructuras de datos directamente sin tener que usar llamadas al sistema; por ello son extremadamente potentes. Sin embargo no son tan flexibles como los procesos daemon, porque el núcleo del sistema operativo debe ser recompilado para poder cambiarlos.
Apagado del sistema:
Antes de efectuar el apagado físico del sistema es necesario efectuar el procedimiento shutdown, encargado de efectuar la parada del sistema en una secuencia lógica que evite la corrupción de los sistemas de archivos y la posible pérdida de información.
La ejecución de este procedimiento puede variar ligeramente dependiendo de que el sistema esté en modo multiusuario o monousuario. En el primer caso es conveniente comprobar si hay algún usuario conectado al sistema. Si hay alguien trabajando deberá notificársele la situación y concederle un tiempo para que pueda cerrar sus archivos y hacer logoff. A continuación puede lanzarse el proceso shutdown.
Para que se pueda ejecutar el proceso shutdown, es necesario tener privilegios de administrador y estar posicionado en el directorio raíz. Una vez ejecutado el proceso, aparecerá un mensaje indicando que ya se puede desconectar la máquina.
4. Administración del sistema de archivos
Particiones de disco:
Dada la gran capacidad de almacenamiento de las unidades de disco, puede ser interesante el subdividirlo en porciones más pequeñas para mejorar su gestión. Cada una de estas subdivisiones se denomina partición, comportándose como si fuera un disco lógico.
Normalmente, cada partición se utiliza como un sistema de archivos, sin embargo también pueden utilizarse para otros propósitos, como el área de swap.
En un sistema que disponga de varios discos físicos se denomina disco primario al que contiene el directorio raíz. Las particiones del disco primario se crean durante la instalación del sistema operativo.
Sistemas de archivos:
Una de las principales funciones del sistema operativo UNIX es la de soportar los sistemas de archivos. Un sistema de archivos es un mecanismo que permite a los usuarios crear, borrar o acceder a los mismos sin necesitar saber en qué lugar físico del disco están almacenados sus bloques. Un sistema de archivos ocupa una partición del disco, pero no todas las particiones tienen que ser un sistema de archivos (por ejemplo la utilizada para swap). El sistema de archivos principal (root) está disponible automáticamente por el mero hecho de cargar el sistema. El resto de sistemas de archivos figuran como "montables". Montar un sistema de archivos significa enlazarlo a otro que esté disponible (normalmente el root). El punto de enlace de los dos sistemas de archivos se denomina "punto de montaje" y debe ser un directorio. Los archivos y subdirectorios de un sistema de archivos que no ha sido montado, no son accesibles. Una vez montado se podrán acceder como dependientes del directorio de montaje.
Sistema de archivos virtual:
En UNIX System V Release 4, el sistema de archivos virtual (virtual file system o VFS) es un concepto que permite que existan diferentes tipos de sistemas de archivos trabajando conjuntamente en el mismo sistema. Para su correcto funcionamiento, utiliza dos mecanismos de control, uno dependiente del tipo de sistema de archivos y el otro no.
Estructura vnode: Es una estructura de memoria que controla la información independiente del tipo de sistema de archivos. Cada archivo accedido tiene asociada su propia estructura vnode, que es el centro de toda su actividad. Contiene punteros hacia:
Virtual file system switch table:
Se encarga de manejar la información que depende del tipo de sistema de archivos. Contiene una entrada por cada uno de los tipos de sistema de archivos. Esta tabla lleva punteros hacia las utilidades y operaciones específicas de cada tipo. Muchas de las utilidades que manejan los sistemas de archivos incorporan una opción para apuntar a la entrada apropiada en esta tabla.
Tipos de sistemas de archivos:
SVR4 permite la coexistencia de diferentes tipos de sistemas de archivos en una misma estructura. Existen tres tipos diferentes de sistemas de archivos:
Aparte de estos tipos de sistemas de archivos que se asocian a particiones de disco, existen otros sistemas de archivos virtuales, de uso interno del sistema, que quedan residentes en memoria.
Tabla del sistema de archivos virtual:
Como ya se ha mencionado antes, el concepto de sistema de archivos virtual permite la coexistencia de diferentes tipos de sistemas de archivos en un mismo sistema.
Dado que comandos genéricos trabajan sobre cualquier tipo de sistema de archivos, es necesario que se les suministre una información específica. Esta información puede ser proporcionada explícitamente desde la línea de comandos o implícitamente desde la tabla de sistemas de archivos (/etc/vfstab). Este archivo contiene entradas para los sistemas de archivos que se pueden montar en el sistema.
Area de desplazamiento (swap):
En configuraciones por defecto, la segunda partición del primer disco se utiliza para el área de swap. El área de swap se utiliza como una ampliación de la memoria principal durante la operación del sistema.
Dado que pertenece al primer disco, que es formateado y construidas sus particiones durante el proceso de instalación, la reconfiguración del espacio destinado a este área implica una tarea complicada (copias de seguridad de todos los sistemas de archivos del disco, nueva instalación, etc.). Para evitarlo, dentro de lo posible, se ha proporcionado la posibilidad de asignar y liberar recursos de disco, de forma dinámica al área de swap.
Quota system (ufs):
El sistema de archivos ufs permite asignar un límite (quota) de espacio y cantidad de inodos a ser utilizados en él por un usuario específico. Existen dos tipos de límites, uno "hard" y otro "soft".
Límite Hard:
Especifica el número máximo de bloques de disco, o de i-nodos, que puede utilizar el usuario. Nunca puede ser alcanzado. En caso de que el usuario intente llegar a este límite, se visualizará un mensaje de error.
Límite Soft:
Este límite tiene dos parámetros, espacio de disco y tiempo. El límite especificado para el espacio de disco puede ser excedido (sin llegar al límite hard), pero en ese momento arranca un reloj que permite utilizar ese espacio hasta que el límite de tiempo se agote. A partir de ese momento el usuario debe situar la utilización del sistema de archivos por debajo del límite soft antes de poder utilizar más espacio.
Resumiendo, cada usuario puede tener especificados límites (hard y soft) para la utilización de bloques y de i-nodos. También puede definirse un límite de tiempo, que se aplica a todos los usuarios del sistema de archivos, indicando durante cuanto tiempo puede excederse el límite soft. Puede especificarse un límite de tiempo diferentes para cada sistema de archivos. Además, los usuarios pueden tener diferentes límites en diferentes sistemas de archivos.
5. Administración de usuarios
La administración de la cuenta de los usuarios y sus grupos de trabajo implica una gran responsabilidad, pues el primer paso para mantener la seguridad del sistema consiste en evitar el acceso al mismo de personas no autorizadas. Esta tarea se realiza asignando y manteniendo identificativos y contraseñas de acceso al sistema.
Para que un usuario pueda acceder al sistema, debe estar previamente registrado ante el mismo. Esta tarea, realizada por el administrador del sistema, afecta a tres archivos: /etc/passwd, /etc/shadow y /etc/group. Sin embargo, estos archivos no deben ser editados directamente, para evitar errores que los corrompan, pues son críticos para el acceso al sistema. Por tanto, el registro de usuarios se realiza por medio de un conjunto de utilidades suministradas con el sistema.
Archivo /etc/passwd:
Este archivo es consultado por el proceso login cuando un usuario se identifica, para ver si figura el identificativo en el mismo, y si es así localizar la información pertinente para dejarle correctamente conectado al sistema.
Archivo /etc/shadow:
Este archivo, totalmente crítico para la seguridad del sistema, contiene toda la información relativa a las contraseñas de acceso de los usuarios. En el archivo /etc/shadow existe una línea por cada uno de los usuarios registrados en el sistema. En cada una existen ocho campos separados por el carácter ":", Establecimiento del entorno de usuario:
El administrador tiene la posibilidad de establecer un entorno general de trabajo para todos los usuarios, pero a su vez el usuario en sí dispone de una forma para establecer su propio entorno individual, de tal manera que por el mero hecho de identificarse este entorno quede creado.
Con este objetivo existen el archivo /etc/profile y un archivo .profile en el directorio Home de cada usuario. Archivo /etc/profile:
Una vez que el usuario se identifica correctamente, se ejecuta de forma automática el shellscript contenido en este archivo. Dado de que este contenido es el mismo para todos los usuarios, permite crear el entorno general.
Durante la ejecución de este shellscript se pueden efectuar una serie de operaciones de interés general para los usuarios, tales como:
El archivo /etc/profile, es de propiedad del administrador y, por lo tanto, puede ser modificado cuando lo desee para eliminar aquello que no le guste o para añadir todo lo que quiera que se ejecute cada vez que se identifica un usuario.
Archivo $HOME/.profile:
Este archivo se crea en el directorio Home del usuario cuando es añadido al sistema. Normalmente se copia desde el existente en /etc/skel. El archivo .profile, salvo que así lo disponga el administrador, es de propiedad del usuario y por lo tanto cada uno puede modificarlo a su gusto para crearse su entorno individual.
Comunicación con los usuarios:
El administrador del sistema dispone de diferentes métodos para ponerse en comunicación con los usuarios a través del sistema. Dependiendo del motivo que provoque esta necesidad unos serán más convenientes que otros. Algunos de estos métodos son los siguientes:
Archivo /etc/issue:
El contenido de este archivo aparece en la pantalla precediendo al mensaje que solicita el login. Por lo tanto antes incluso de la identificación del usuario.
Archivo /etc/motd:
Cuando un usuario se identifica ante el sistema, se ejecuta el shellscript contenido en el archivo /etc/profile y una de sus misiones es visualizar el contenido de este archivo. Por lo tanto aparecerá en pantalla antes de que el usuario reciba el mensaje prompt. Se suele utilizar Para informar a todos los usuarios que se identifiquen, de algún evento a producirse en ese día de ahí su nombre "Mensaje del día".
Comando wall:
6. Seguridad de las redes
Seguridad.- La seguridad de los datos puede conseguirse por medio de los servidores que posean métodos de control, tanto software como hardware.
El objetivo es describir cuales son los métodos más comunes que se utilizan hoy para perpetrar ataques a la seguridad informática (confidencialidad, integridad y disponibilidad de la información) de una organización o empresa, y que armas podemos implementar para la defensa, ya que saber cómo nos pueden atacar (y desde donde), es tan importante como saber con que soluciones contamos para prevenir, detectar y reparar un siniestro de este tipo. Sin olvidar que éstas últimas siempre son una combinación de herramientas que tienen que ver con tecnología y recursos humanos (políticas, capacitación). Los ataques pueden servir a varios objetivos incluyendo fraude, extorsión, robo de información, venganza o simplemente el desafío de penetrar un sistema. Esto puede ser realizado por empleados internos que abusan de sus permisos de acceso, o por atacantes externos que acceden remotamente o interceptan el tráfico de red.
A esta altura del desarrollo de la "sociedad de la información" y de las tecnologías computacionales, los piratas informáticos ya no son novedad. Los hay prácticamente desde que surgieron las redes digitales, hace ya unos buenos años. Sin duda a medida que el acceso a las redes de comunicación electrónica se fue generalizando, también se fue multiplicando el número de quienes ingresan "ilegalmente" a ellas, con distintos fines. Los piratas de la era cibernética que se consideran como una suerte de Robin Hood modernos y reclaman un acceso libre e irrestricto a los medios de comunicación electrónicos.
Genios informáticos, por lo general veinteañeros, se lanzan desafíos para quebrar tal o cual programa de seguridad, captar las claves de acceso a computadoras remotas y utilizar sus cuentas para viajar por el Ciberespacio, ingresar a redes de datos, sistemas de reservas aéreas, bancos, o cualquier otra "cueva" más o menos peligrosa.
Como los administradores de todos los sistemas, disponen de herramientas para controlar que "todo vaya bien", si los procesos son los normales o si hay movimientos sospechosos, por ejemplo que un usuario esté recurriendo a vías de acceso para las cuales no está autorizado o que alguien intente ingresar repetidas veces con claves erróneas que esté probando. Todos los movimientos del sistema son registrados en archivos, que los operadores revisan diariamente.
Métodos y Herramientas de Ataque
En los primeros años, los ataques involucraban poca sofisticación técnica. Los insiders (empleados disconformes o personas externas con acceso a sistemas dentro de la empresa) utilizaban sus permisos para alterar archivos o registros. Los outsiders (personas que atacan desde afuera de la ubicación física de la organización) ingresaban a la red simplemente averiguando una password válida. A través de los años se han desarrollado formas cada vez más sofisticadas de ataque para explotar "agujeros" en el diseño, configuración y operación de los sistemas. Esto permitó a los nuevos atacantes tomar control de sistemas completos, produciendo verdaderos desastres que en muchos casos llevo a la desaparición de aquellas organizaciones o empresas con altísimo grado de dependencia tecnológica (bancos, servicios automatizados, etc).
Estos nuevos métodos de ataque han sido automatizados, por lo que en muchos casos sólo se necesita conocimiento técnico básico para realizarlos. El aprendiz de intruso tiene acceso ahora a numerosos programas y scripts de numerosos "hacker" bulletin boards y web sites, donde además encuentra todas las instrucciones para ejecutar ataques con las herramientas disponibles.
Los métodos de ataque descriptos a continuación están divididos en categorías generales que pueden estar relacionadas entre sí, ya que el uso de un método en una categoría permite el uso de otros métodos en otras. Por ejemplo: después de crackear una password, un intruso realiza un login como usuario legítimo para navegar entre los archivos y explotar vulnerabilidades del sistema. Eventualmente también, el atacante puede adquirir derechos a lugares que le permitan dejar un virus u otras bombas lógicas para paralizar todo un sistema antes de huir.
Eavesdropping y Packet Sniffing
Muchas redes son vulnerables al eavesdropping, o la pasiva intercepción (sin modificación) del tráfico de red. En Internet esto es realizado por packet sniffers, que son programas que monitorean los paquetes de red que estan direccionados a la computadora donde estan instalados. El sniffer puede ser colocado tanto en una estacion de trabajo conectada a red, como a un equipo router o a un gateway de Internet, y esto puede ser realizado por un usuario con legítimo acceso, o por un intruso que ha ingresado por otras vías. Existen kits disponibles para facilitar su instalación.
Este método es muy utilizado para capturar loginIDs y passwords de usuarios, que generalmente viajan claros (sin encriptar) al ingresar a sistemas de acceso remoto (RAS). También son utilizados para capturar números de tarjetas de crédito y direcciones de e-mail entrantes y salientes. El análisis de tráfico puede ser utilizado también para determinar relaciones entre organizaciones e individuos.
Snooping y Downloading
Los ataques de esta categoría tienen el mismo objetivo que el sniffing, obtener la información sin modificarla. Sin embargo los métodos son diferentes. Además de interceptar el tráfico de red, el atacante ingresa a los documentos, mensajes de e-mail y otra información guardada, realizando en la mayoría de los casos un downloading de esa información a su propia computadora.
El Snooping puede ser realizado por simple curiosidad, pero también es realizado con fines de espionaje y robo de información o software. Los casos mas resonantes de este tipo de ataques fueron : el robo de un archivo con mas de 1700 números de tarjetas de crédito desde una compañía de música mundialmente famosa, y la difusión ilegal de reportes oficiales reservados de las Naciones Unidas, acerca de la violación de derechos humanos en algunos países europeos en estado de guerra.
Tampering o Data Diddling
Esta categoría se refiere a la modificación desautorizada a los datos, o al software instalado en un sistema, incluyendo borrado de archivos. Este tipo de ataques son particularmente serios cuando el que lo realiza ha obtenido derechos de administrador o supervisor, con la capacidad de disparar cualquier comando y por ende alterar o borrar cualquier información que puede incluso terminar en la baja total del sistema en forma deliverada. O aún si no hubo intenciones de ello, el administrador posiblemente necesite dar de baja por horas o días hasta chequear y tratar de recuperar aquella informacion que ha sido alterada o borrada.
Como siempre, esto puede ser realizado por insiders o outsiders, generalmente con el propósito de fraude o dejar fuera de servicio un competidor.
Son innumerables los casos de este tipo como empleados (o externos) bancarios que crean falsas cuentas para derivar fondos de otras cuentas, estudiantes que modifican calificaciones de examenes, o contribuyentes que pagan para que se les anule la deuda por impuestos en el sistema municipal.
Múltiples web sites han sido víctimas del cambio de sus home page por imágenes terroristas o humorísticas, o el reemplazo de versiones de software para download por otros con el mismo nombre pero que incorporan código malicioso (virus, troyanos).
La utilización de programas troyanos esta dentro de esta categoría, y refiere a falsas versiones de un software con el objetivo de averiguar información, borrar archivos y hasta tomar control remoto de una computadora a través de Internet como el caso de Back Orifice y NetBus, de reciente aparición.
Spoofing
Esta técnica es utilizada para actuar en nombre de otros usuarios, usualmente para realizar tareas de snoofing o tampering. Una forma comun de spoofing, es conseguir el nombre y password de un usuario legítimo para, una vez ingresado al sistema, tomar acciones en nombre de él, como puede ser el envío de falsos e-mails.
El intruso usualmente utiliza un sistema para obtener información e ingresar en otro, y luego utiliza este para entrar en otro, y en otro. Este proceso, llamado Looping, tiene la finalidad de evaporar la identificacion y la ubicación del atacante. El camino tomado desde el origen hasta el destino puede tener muchas estaciones, que exceden obviamente los límites de un país. Otra consecuencia del looping es que una compañía o gobierno pueden suponer que estan siendo atacados por un competidor o una agencia de gobierno extranjera, cuando en realidad estan seguramente siendo atacado por un insider, o por un estudiante a miles de km de distancia, pero que ha tomado la identidad de otros.
El looping hace su investigación casi imposible, ya que el investigador debe contar con la colaboración de cada administrador de cada red utilizada en la ruta, que pueden ser de distintas jurisdicciones. Los protocolos de red también son vulnerables al spoofing. Con el IP spoofing, el atacante genera paquetes de Internet con una dirección de red falsa en el campo From, pero que es aceptada por el destinatario del paquete.
El envío de falsos e-mails es otra forma de spoofing permitida por las redes. Aquí el atacante envía a nombre de otra persona e-mails con otros objetivos. Tal fue el caso de una universidad en USA que en 1998 debió reprogramar una fecha completa de examenes ya que alguien en nombre de la secretaría había cancelado la fecha verdadera y enviado el mensaje a toda la nómina (163 estudiantes). Muchos ataques de este tipo comienzan con ingeniería social, y la falta de cultura por parte de los usuarios para facilitar a extraños sus identificaciones dentro del sistema. Esta primera información es usualmente conseguida a través de una simple llamada telefónica.
Jamming o Flooding
Este tipo de ataques desactivan o saturan los recusos del sistema. Por ejemplo, un atacante puede consumir toda la memoria o espacio en disco disponible, asi como enviar tanto tráfico a la red que nadie más puede utilizarla.
Muchos ISPs (proveedores de Internet) han sufrido bajas temporales del servicio por ataques que explotan el protocolo TCP. Aquí el atacante satura el sistema con mensajes que requieren establecer conección. Sin embargo, en vez de proveer la dirección IP del emisor, el mensaje contiene falsas direcciones IP (o sea que este ataque involucra tambien spoofing). El sistema responde al mensaje, pero como no recibe respuesta, acumula buffers con información de las conecciones abiertas, no dejando lugar a las conecciones legítimas.
Muchos host de Internet han sido dados de baja por el "ping de la muerte", una versión-trampa del comando ping. Mientras que el ping normal simplemente verifica si un sistema esta enlazado a la red, el ping de la muerte causa el reboot o el apagado instantáneo del equipo.
Otra acción común es la de enviar millares de e-mails sin sentido a todos los usuarios posibles en forma contínua, saturando los distintos servers destino.
Caballos De Troya
Consiste en introducir dentro de un programa una rutina o conjunto de instrucciones, por supuesto no autorizadas y que la persona que lo ejecuta no conoce, para que dicho programa actúe de una forma diferente a como estaba previsto (P.ej. Formatear el disco duro, modificar un fichero, sacar un mensaje, etc.).
Bombas Logicas
Este suele ser el procedimiento de sabotaje mas comúnmente utilizado por empleados descontentos. Consiste en introducir un programa o rutina que en una fecha determinada destruira, modificara la información o provocara el cuelgue del sistema.
Ingeniería Social
Básicamente convencer a la gente de que haga lo que en realidad no debería. Por ejemplo llamar a un usuario haciéndose pasar por administrador del sistema y requerirle la password con alguna excusa convincente. Esto es común cuando en el Centro de Computo los administradores son amigos o conocidos.
Difusión de Virus
Si bien es un ataque de tipo tampering, difiere de este porque puede ser ingresado al sistema por un dispositivo externo (diskettes) o través de la red (e-mails u otros protocolos) sin intervención directa del atacante. Dado que el virus tiene como característica propia su autoreproducción, no necesita de mucha ayuda para propagarse a traves de una LAN o WAN rapidamente, si es que no esta instalada una protección antivirus en los servidores, estaciones de trabajo, y los servidores de e-mail. Existen distintos tipos de virus, como aquellos que infectan archivos ejecutables (.exe, .com, .bat, etc) y los sectores de boot-particion de discos y diskettes, pero aquellos que causan en estos tiempos mas problemas son los macro-virus, que están ocultos en simples documentos o planilla de cálculo, aplicaciones que utiliza cualquier usuario de PC, y cuya difusión se potencia con la posibilidad de su transmisión de un continente a otro a traves de cualquier red o Internet. Y ademas son multiplataforma, es decir, no estan atados a un sistema operativo en particular, ya que un documento de MS-Word puede ser procesado tanto en un equipo Windows 3.x/95/98 , como en una Macintosh u otras. Cientos de virus son descubiertos mes a mes, y técnicas más complejas se desarrollan a una velocidad muy importante a medida que el avance tecnológico permite la creación de nuevas puertas de entrada. Por eso es indispensable contar con una herramienta antivirus actualizada y que pueda responder rapidamente ante cada nueva amenaza.
El ataque de virus es el más común para la mayoría de las empresas, que en un gran porcentaje responden afirmativamente cuando se les pregunta si han sido víctimas de algun virus en los últimos 5 años.
Autor:
Cesar Angel Tovar Flores
Cesarangel_tovar[arroba]yahoo.com.mx
Universidad de Guadalajara, Jalisco – México
Página anterior | Volver al principio del trabajo | Página siguiente |