Tema 5 - TAI
Tema 5 - TAI
Tema 5 - TAI
Disponibilidad: el grado en que un dato esta en el lugar, momento y forma en que es requerido
por el usuario autorizado, el sistema, tanto hardware como software se mantiene funcionando
eficientemente y es capaz de recuperarse en caso de fallo.
2. POLÍTICAS DE SEGURIDAD
Reglas y procedimientos que regulan la forma en que una organización previene,
protege y maneja los riesgos de daño sobre:
- Los computadores de sus sistemas y los elementos físicos (impresoras, discos, cables…)
- Software e información almacenada.
- Usuarios del sistema.
La política de seguridad es una declaración de alto nivel, cubre la seguridad y proporciona las
bases para definir y delimitará responsabilidades para las diversas actuaciones técnicas y
organizativas que se requerirán. La política se refleja en una serie de normas, reglamentos y
protocolos a seguir donde se definen las distintas mediad a tomar para proteger la seguridad
del sistema, distintos componentes y mecanismos para controlar su correcto funcionamiento.
- Determinar los recursos a proteger y su valor: lograr que un ataque a nuestros bienes
sea más costoso que su valor, invirtiendo menos de lo que vale, normas básicas en la
evaluación de riesgos: valor intrínseco del producto a proteger y costes derivados de
su perdida.
- Analizar las vulnerabilidades y amenazas de nuestro sistema, su probabilidad y su
coste:
o La seguridad debe cubrir todos los posibles métodos de ataque.
o La máxima seguridad obtenible es la del elemento más débil del sistema.
o La solución de seguridad constituye un sistema complejo.
- Definir las medidas a establecer para proteger el sistema: las medidas deben
establecerse a todos los niveles (físico, humano y logístico).
- Monitorizar el cumplimiento de la política, revisarla y mejorarlas cada vez que se
detecte un problema.
o Medidas para proteger los cables de líneas de datos contra escuchas o daños
- Medidas administrativas: aquellas que deben ser tomadas por las personas encargadas
de definir la política de seguridad
o Documentación y publicación de la política de seguridad
o Establecimiento de un plan de formación del personal
- Medidas legales: aplicación de medidas legales para disuadir al posible atacante o para
aplicarle algún tipo de castigo a posteriori. Normalmente son fijadas por instituciones
gubernamentales e incluso instituciones internacionales como LOPD (Ley Orgánica de
Protección de Datos)
3. IDENTIFICACION Y AUTENTIFICACION
Las herramientas y aplicaciones forman la base técnica de la política de seguridad, pero la
política de uso aceptable debe considerar otros aspectos (quien tiene permisos, acceso,
responsabilidades…)
Para poder entrar en un recinto será necesario saber de quien se trata y si el sujeto está
autorizado, será preciso identificar al sujeto (identificación) de forma totalmente fiable
(autenticación o verificación) y consultar un archivo, base de datos y/o algoritmo que nos diga
si el sujeto tiene o no autorización para realizar la acción demandada (autorización).
Esto implica que antes se haya establecido un sistema para identificar a los sujetos (gestión de
la identificación), se haya definido un sistema para autentificar al usuario (Autentificador), y
que para cada usuario se haya definido una tabla de permisos. Cuando el usuario intente
entrar en el sistema, deberá dar su identificación, que el sistema verificará (Comprobación del
identificador), realizar la operación pertinente para demostrar que es quien dice ser
(contraseña) y el sistema lo comprobará (Autentificación).
Otorgamientos de permisos: el administrador de seguridad será el encargado de introducir los
datos de los privilegios al sistema. Pueden darse individualmente a una persona o a un grupo
de personas con las mismas características.
Identificación y verificación del usuario: las claves son los mecanismos mas utilizados, pero
tienen algunos problemas como posibilidad de conocerlos por fuerza bruta, no hay manera de
saber si un intruso ha accedido, es difícil conseguir que los usuarios utilicen una buena
práctica…
Control de acceso: seleccionar o filtrar los usuarios que pueden acceder a recursos
informáticos, en redes telemáticas se puede hacer la selección del acceso según:
- La máquina (ordenador cliente): solo sirve para procedimientos remotos, son mas
seguros, pero limitan la libertad de poder acceder desde cualquier ordenador.
- El usuario (persona o programa)
4. AMENAZAS Y VULNERABILIDADES
Definiciones:
Magerit define:
- Instalaciones por defecto de sistemas y aplicaciones: la mayoría del software viene con
scripts de instalación, estos típicamente instalan más componentes de los que se
necesitan en realidad, lo que realmente está instalado en los sistemas deja peligrosos
programas de demostración u otras herramientas potencialmente peligrosas.
- Cuentas sin contraseña o débiles: los nombres de usuario (UID) son relativamente
fáciles de conseguir, toda la seguridad recae en una contraseña fuerte.
- Respaldos incompletos o inexistentes (backups): la recuperación requiere respaldos
actualizados y métodos probados para restaurar la información, se deben verificar el
respaldo y la restauración.
- Gran numero de puertos abiertos: tanto los usuarios legítimos como los atacantes se
conectan a los sistemas por medio de puertos, cuantos más puertos abiertos más
formas hay para que alguien se conecte, es importante mantener abiertos solo los
puertos imprescindibles.
- Insuficiente filtrado de los paquetes con direcciones de inicio y destino inadecuadas:
falsificaciones de direcciones IP es un método comúnmente utilizado por los atacantes,
utilizar un mecanismo de filtrado sobre el trafico que entra en la red (ingress filtering)
y el que sale (egress filtering) ayuda a lograr un alto nivel de protección.
- Registro de eventos (logging) incompleto o inexistente: la prevención es ideal pero la
detección es fundamental, una vez atacado, sin registros (logs) hay muy pocas
probabilidades de que descubra que hicieron realmente los atacantes.
- Programas CGI vulnerables: la mayoría de los servidores web, incluyendo IIS (Microsoft
Internet Information Service) de Microsoft y Apache, permiten el uso de programas
CGI (Common Gateway Interface), proporcionar interactividad a las páginas web, los
programas proporcionan un vínculo directo entre cualquier usuario en cualquier parte
de internet y el SO en la máquina que se encuentra ejecutando el servidor web.
Puertos comúnmente vulnerables: los puertos conocidos como “puertos IANA” son los 1024
primeros puertos del PC, esta adjudicó a cada uno de estos puertos una utilidad, protocolo…
para estandarizar la comunicación.
Los puertos “registrados” son los comprendidos entre el 1024 y el 49151 sobre los que
trabajan programas, protocolos… pero sobre los cuales no actúa la estandarización de IANA.
Los puertos troyanos son puertos que utilizan por defecto los troyanos para establecer la
comunicación servidor-cliente, bloquear estos puertos constituye tan solo un requisito mínimo
necesario para la seguridad perimetral, mucho mejor es bloquear todos aquellos puertos que
no son utilizados.
NFS (2049/tcp)
Servicio de nombres:
DNS (53/udp)
Mail:
Web:
Otros:
ICMP: es recomendado bloquear los mensajes ICMP “echo request” entrantes (ping y
traceroute), “echo reply” salientes, “time exceded” y “destination unreachable”.
5. ATAQUES Y AMENAZAS
Tipos de ataques y amenazas: todas aquellas acciones que supongan una violación de la
seguridad de nuestro sistema (confidencialidad, integridad o disponibilidad), se pueden
clasificar en:
- Dañino: siempre causa daños en el sistema que infecta, el hacer daño no significa que
vaya a romper algo, el daño puede ser implícito se busca es destruir o alterar la
información o pueden ser situaciones con efectos negativos para la computadora,
consumo de memoria principal, tiempo de procesador, disminución de rendimiento…
- Autorreproductor: crear copias de si mismo, cosa que ningún otro programa
convencional.
- Subrepticio: utilizara distintas técnicas para evitar que el usuario se de cuenta de su
presencia (se oculta). Tener un tamaño reducido para poder disimularse a primera
vista, la peligrosidad de un virus está dada por lo critico del sistema que este
infectando, no pueden causar daño directo sobre el hardware, pero si pueden hacer
ejecutar operaciones que reduzcan la vida útil de estos. Por lo general prefieren atacar
los archivos y no meterse con la parte física.
Funcionamiento: este tipo de programas se pega a alguna entidad ejecutable que le facilitara
la subida a memoria principal y la posterior ejecución, como entidades ejecutables reconocen
los sectores de arranque de los discos de almacenamiento (MBR), los archivos ejecutables de
DOS (.exe), librerías, módulos de programas (.dll, .lib,…) los sectores de arranque son
fundamentales para garantizar que el virus será cargado cada vez que se encienda el pc.
El virus puede tener control total de la maquina al igual que el SO, si logra cargarse antes que
nadie, la necesidad de tener que asociarse a una entidad ejecutable vienen de que como
cualquier otro programa de pc, necesita ser ejecutado y teniendo en cuenta que ningún
usuario en su sano juico lo hará se vale de otros métodos furtivos, según la secuencia de
arranque de los PC, el microprocesador tiene fijado de fábrica la dirección de donde puede
obtener la primera instrucción a ejecutar. Apunta a una celda de la memoria ROM donde se
encuentra la subrutina POST encargada de varias verificaciones y de comparar el registro de la
memoria CMOS con e hardware instalado (función checksum). Sería imposible que el virus
logre cargarse ya que la memoria ROM viene grabada de fábrica y no puede modificarse.
El POST pasa el control a otra subrutina de la ROM BIOS llamada “Bootstrap ROM” que copia el
MBR en memoria RAM. El MBER contiene la información de la tabla de particiones, para
conocer la delimitación de cada partición, su tamaño y cual es la partición activa desde donde
se carga el SO. En este punto el procesador empieza a ejecutar de la memoria RAM, dando la
posibilidad a que un virus tome partida. Hasta aquí el SO todavía no fue cargado y en
consecuencia tampoco el antivirus. El funcionamiento típico del virus seria copiar el MBR en un
sector alternativo y tomar su posición. Así, cada vez que se inicie el sistema el virus lograr
cargarse antes que el SO y luego, respetando su dese por permanecer oculto hará ejecutar las
intrusiones del MBR.
Con la información del MBR sabremos que partición es la activa y en que sector se encuentra
su sector de arranque, el BR contiene una subrutina que se ocupara de cargar los archivos de
arranque del SO, es importante recordad que le SO es el último en cargarse en la secuencia de
arranque antes de que el usuario pueda introducir comandos en la Shell. El antivirus es
cargado por los archivos de configuración del SO personalizable por el usuario.
Cuando un virus infecta un archivo ejecutable .exe, intenta rastrear en el código los puntos de
entrada y salida del programa. El primer punto señalado es en donde, dentro del archivo, se
iniciará la ejecución de instrucciones. El segundo punto resulta ser lo opuesto. Cuando un virus
localiza ambos puntos escribe su propio código antes de cada uno, este código cargara el virus
en memoria y apuntara a esa zona infectada con el virus, a partir de ahí determinara cuales
son las acciones a seguir: puede continuar infectando archivos que sean cargados en memoria,
ocultarse o ejecutar el contenido de su modulo de ataque. El virus puede infectar también las
copias de los archivos cargados en memoria que están en la unidad de almacenamiento. Así se
asegura que, ante un eventual apagado, su código igualmente se encuentra en los archivos de
la unidad. Es importante comprender que la computadora no estará infectada hasta que
ejecutemos algo parasitado previamente con el virus, un virus puede contener tres módulos
principales:
Métodos de infección:
- Añadidura o empalme: el código del virus se agrega al final del archivo ejecutable a
infectar, modificando las estructuras de arranque del archivo anfitrión, el control del
programa pase primero al virus cuando se quiera ejecutar el archivo, este cambio de
secuencia permite al virus realizar sus tareas especificas y luego pasar el control al
programa para que este se ejecute normalmente. La principal desventaja es el tamaño
del archivo infectado es mayor al original, lo que permite una fácil detección.
- Inserción: los virus que utilizan el método de inserción buscan alojarse en zonas de
código no utilizadas o en segmentos de datos dentro de los archivos que contagian, la
longitud total del archivo infectado no varía. Exige mayores técnicas de programación
de los virus para poder detectar las zonas posibles de contagio dentro de un
ejecutable.
- Reorientación: se introducen centrales virósicas en zonas físicas del disco rígido
marcadas como defectuosas o en archivos ocultos del sistema. Al ejecutarse,
implantan pequeños trozos de código en los archivos ejecutables que infectan, actúan
como llamadores de las centrales virósicas. El cuerpo del virus, al no estar insertado en
el archivo infectado, sino en otro sitio oculto, puede tener un tamaño bastante grande,
aumentando así su funcionalidad. La desventaja mas fuerte es que la eliminación de
este tipo de infecciones es bastante sencilla. Basta con borrar archivos oculto
sospechosos o reescribir las zonas del disco marcadas como defectuosas.
- Polimorfismo: método más avanzado de contagio logrado por los programadores, la
técnica básica usada es la de inserción de código viral en un archivo ejecutable, pero
para evitar el aumento de tamaño del arco infectado, el virus compacta parte de su
código y del código del archivo anfitrión de manera que la suma de ambos sea igual al
tamaño original del archivo. Al ejecutar, el programa infectado actúa primero el código
del virus descompactando en memoria las porciones previamente compactadas,
permite a los virus usar métodos de encriptación dinámicos para evitar ser detectados.
- Sustitución: usado con variantes por los troyanos, es el método mas primitivo. Consiste
en sustituir el código completo del archivo original por el código del virus, al ejecutar el
programa infectado el único que actúa es el virus, que cumple con sus tareas de
contagiar otros archivos y luego termina la ejecución del programa reportando algún
tipo de error.
- Tunneling: técnica usada por programadores de virus y antivirus para evitar todas las
rutinas al servicio de una interrupción y tener así un control directo sobre esta,
requiere programación compleja, hay que colocar le procesador en modo kernel, tras
ejecutarse cada instrucción se produce la INT 1, se coloca una ISR (Interrupt Service
Routine) para dicha interrupción y se ejecutan instrucciones comprobando si se ha
llegado a donde se quería hasta recorrer toda la cadena de ISR. Los virus utilizan el
tunneling para protegerse de los módulos residentes de los antivirus que monitorean
todo lo que sucede en la máquina para interceptar todas las actividades “típicas” de
los virus.
- Según su comportamiento:
o Caballos de Troya: no llegan a ser realmente virus porque no tienen la
capacidad de autorreproducirse. Se esconden dentro del código de archivos
ejecutables y no ejecutables pasando inadvertidos por los controles de
muchos antivirus. Posee subrutinas que permitirán que se ejecute en el
momento oportuno. Su objetivo será el de robar las contraseñas que el
usuario tenga en sus archivos o las contraseñas para el acceso a redes.
Después de que el virus obtenga la contraseña que deseaba, la enviara por
correo a la dirección que tenga registrada como la de la persona que lo envió a
realizar la tarea, se usan estos métodos para el robo de contraseñas para
acceso a internet de usuario hogareños, un troyano que infecta la red de una
empresa representa un gran riesgo ya que esta facilitando enormemente el
acceso a intrusos. Muchos so utilizados para espionaje industrial y están
programados para autodestruirse una vez cumplen el objetivo, destruyendo
toda evidencia.
o Camaleones: variedad de los troyanos, actúan como otros programas
comerciales, en los que el usuario confía, en realidad están haciendo algún
tipo de daño. Los camaleones pueden realizar todas las funciones de los
programas legítimos a los que sustituyen (actúan como programas de
demostración de productos, los cuales son simulaciones de programas reales).
Un camaleón podría emular un programa de acceso a sistemas remotos
(rlogin, telnet) realizando todas las acciones que ellos realizan, pero como
tarea adicional (y oculta) va almacenando en algún archivo los diferentes
logins y claves para recuperarlos y utilizarlos posteriormente por el atacante.
o Virus polimorfos o mutantes: poseen la capacidad de cifrar el cuerpo del virus
para que no pueda ser detectado fácilmente por un antivirus, deja disponibles
unas cuantas rutinas que se encargaran de descifrar el virus para poder
propagarse una vez descifrado el virus intentara alojarse en algún archivo de la
computadora. El virus presenta un modo descifrad, en el que puede infectar,
para que presente su característica de cambio de formas debe poseer algunas
rutinas especiales, si mantuviera siempre esta estructura cualquier antivirus
podría reconocerlo. Para esto incluye un generador de códigos al que se
conoce como motor de mutación, utiliza un generador numérico aleatorio
que, combinado con un algoritmo matemático, modifica la firma del virus,
podrá crear una rutina de descifrado que será diferente cada vez que se
ejecute. Los métodos básicos de detección no pueden dar con este tipo de
virus, existen programas que se dedican especialmente a localizarlos y
eliminarlos.
o Virus sigilosos: posee un módulo de defensa bastante sofisticado, intentara
permanecer oculto tapando todas las modificaciones que haga y observando
como el SO trabaja con los archivos y con el sector de booteo. Subvirtiendo
algunas líneas de código el virus logra apuntar el flujo de ejecución hacia
donde se encuentra la zona infectada. Es difícil que un antivirus se de cuenta
de estas modificaciones por lo que será imperativo que el virus se encuentre
ejecutándose en memoria en el momento justo en que el antivirus corre,
también tiene la capacidad de engañar al SO, se adiciona a un archivo y, en
consecuencia, el tamaño de este aumenta. Esta es una clara señar de que un
virus lo infecta, la técnica stealth de ocultamiento de tamaño captura las
interrupciones del SO que solicitan ver los atributos del archivo y, el virus le
devuelve la información que poseía el archivo antes de ser infectado. Cuando
el SO solicita leer una posición del archivo, el virus devolver los valores que
debería tener ahí y no los que tiene actualmente.
o Virus lentos: infectan solamente los archivos que el usuario hace ejecutar por
el SO, simplemente siguen la corriente y aprovechan cada una de las cosas que
se ejecutan, un virus lento únicamente podrá infectar el sector de arranque de
un disco cuando se use el comando FORMAT para escribir algo en dicho sector.
Su eliminación resulta bastante complicada, cuando el verificador de
integridad encuentra nuevos archivos avisa al usuario. La mayoría de las
herramientas creadas para luchar contra este tipo de virus son programas
residentes en memoria que vigilan constantemente la creación de cualquier
archivo y validan cada uno de los pasos que se dan en dicho proceso, otro
método es el “Decoy Launching”, se cran varios archivos .exe y .com cuyo
contenido conoce el antivirus, los ejecuta y revisa para ver si se han
modificado sin su conocimiento.
o Retro-virus: intenta como método de defensa atacar directamente al
programa antivirus, lo programadores de virus esta no es una información
difícil de obtener ya que pueden conseguir cualquier copia de antivirus que
hay en el mercado, descubrir cuales son los puntos débiles del programa y
buscar una buena forma de aprovecharse de ellos, los retro-virus buscan el
archivo de definición de virus y lo eliminan, otros detectan al programa
antivirus en memoria y tratan de ocultarse o inician una rutina destructiva
antes de que el antivirus logre encontrarlos.
o Virus voraces: alteran el contenido de los archivos de forma indiscriminada,
sustituirá el programa ejecutable por su propio código, se dedican a destruir
completamente los datos que puedan encontrar.
o Bombas de tiempo: virus convencionales con la diferencia de que el trigger de
su modulo de ataque se disparara en una fecha determinada, muestran
mensajes en la pantalla en alguna fecha.
o Conejo: los ordenadores de tipo medio estaban extendidos especialmente en
ambientes universitarios, funcionaban como multiusuario, múltiples usuarios
se conectaban simultáneamente a ellos mediante terminales con un nivel de
prioridad. Como por regla general, los estudiantes tenían prioridad mínima, a
alguno de ellos se le ocurrió la idea de crear este virus, el programa se
colocaba en la cola de espera y cuando llegaba su turno se ejecutaba haciendo
una copia de si mismo, los procesos a ser ejecutados iban multiplicándose
hasta consumir toda la memoria de la computadora central interrumpiendo
todos los procesamientos.
o Macro-virus: son completamente independientes del SO o de la plataforma, ni
siquiera son programas ejecutables, son pequeños programas escritos en el
lenguaje propio de un programa (editores de texto, hojas de cálculo, utilidades
especializadas…), se pueden propagar a otros ordenadores siempre que los
usuarios intercambien documentos del tipo del virus. Alteran de tal forma la
información de los documentos infectados que su recuperación resulta
imposible, solo se ejecutan en aquellas plataformas que tengan la aplicación
para la que fueron creados.
o Gusanos: un conjunto de programas, que tiene la capacidad de desparramar
un segmento de él o su propio cuerpo a otras computadoras conectadas a una
red, hay dos tipos de gusanos:
Host Computer Worm: contenidos totalmente en una computadora,
se ejecutan y se copian a si mismo vía conexión de una red,
originalmente terminan cuando hicieron una copia de ellos mismo en
otro host, también existen los que hacen la copia e infectan otras
redes, es decir que cada maquina guarda una copia de ese gusano.
Network Worm: conjunto de partes (segmentos), cada una corre en
una máquina distinta y usando la red para distintos propósitos de
comunicación propagan un segmento de una maquina a otra, tienen
un segmento principal que coordina el trabajo de los otros segmentos.
6.1. TROYANOS
Programa de acceso remoto o administración remota, conocidos también como RAT
(Remote adminstration Tool), se han desarrollado para el control remoto del PC, permite un
manejo prácticamente total de un PC, que físicamente no se encuentra al alcance de nuestras
manos, por medio de una conexión directa dese otro PC. Deben estar instalado en ambos pc y
su comunicación se produce vía internet o vía red. Un troyano tiene unas características
propias que le confieren un carácter malicioso:
Para que un troyano se instale en un PC atacado necesita de la actuación del usuario del PC en
cuestión, ya que este debe ejecutarlo personalmente. La forma habitual es la de enviar el
servidor dl troyano al PC que se quiere atacar, por medio de un mail o a través de un
intercambio de ficheros vía IRC, ICQ, FTP… con la intención de que la víctima lo ejecute, se
utilizan dos formas de engañar al usuario para que ejecute el servidor del troyano en su PC, la
primera consiste en enviar el servidor renombrado y con extensión doble, aprovechando la
peculiaridad de los sistemas Windows para ocultar las extensiones conocidas.
La segunda forma de enviar el troyano es más limpia que la primera ya que el atacado no nota
nada raro, consiste en adherir el troyano a un fichero real de forma que se fusionen dos
ficheros en uno solo, pero resultando los dos 100% operativos. Cuando el atacado ejecuta el
archivo en realidad ejecuta los dos a la vez, pero el atacado no lo nota.
6.2. PROGRAMAS DE DEFENSA
- Firewall: es un programa (aunque también los hay hardware), que controla todo el
software que se pone en comunicación con o desde nuestro PC. Controla toda
comunicación entrante y saliente. Controla tanto programas en concreto como
protocolos de comunicación, se pueden permitir bloquear, monitorizar… todo lo que
se mueva entre nuestro PC y la red.
- Antitroyanos: aplicación o dispositivo hardware que hace detección y eliminación de
troyanos.
- Proxys: aplicación o dispositivo hardware que hace de intermediario entre los usuarios,
normalmente de una red local e internet. Lo que hace realmente es recibir peticiones
de usuario y redirigirlas a internet, la ventaja que presenta es que con una única
conexión a internet podemos conectar varios usuarios.
Un proxy es a su vez un servidor de cache, almacena las páginas web a las que se
accede más asiduamente en una memoria, un usuario quiere acceder a internet,
accede a través del proxy. Se aceleran en gran medida los accesos a internet.
El proxy el transparente al usuario, porque tendrá que configurar su navegador
diciéndole que accede a internet a través de este. Los últimos proxies que han
aparecido en el mercado realizan además funciones de filtrado, dejar que un usuario
determinado acceda a unas determinadas páginas de internet o que no acceda a
ninguna, podemos configurar una red local en la que haya usuario a los que se les
permita salir a internet, otros a los que les permita enviar correo, pero no salir a
Internet, …
Diferencias entre un Proxy y un Cortafuegos: el Proxy se usa para redirigir las
peticiones que recibe de varios usuarios a internet de forma transparente se encarga
de devolverles las respuestas (las páginas web).
El firewall, es únicamente un método de protección de la red o de un PC, con el que
podemos cerrar o dejar abiertos ciertos puertos, IP, aplicaciones…
Esteganografía: lo que busca es ocultar un mensaje ante un posible atacante, pero la diferencia
estaba en como oculta la información ambas técnicas: mientras que la criptografía pretende
que la información no sea descifrada, la esteganografía lo que pretende es que la información
pase desapercibida.
Cifrado en bloque: toma como entrada un bloque de longitud fija y una clave genera un nuevo
bloque cifrado de la misma longitud que el bloque de entrada. La técnica consiste en dividir el
texto a cifrar (con longitud “L”) en bloques de tamaño “b” y a continuación cifrar cada uno de
los bloques. Si “L” no es múltiplo de “B” se agregan bits adicionales para conseguir que todos
los bloques estén completos. Muchos de los algoritmos de cifrado en bloque se basan en:
- Sustitución: consiste en traducir cada bloque de bits que llegan como entrada a otro
de salida siguiendo una permutación determinada
- Transposición: reordenar la información del texto en claro según un patrón
determinado, reescribir cada grupo (1,2,3) en el orden (2,3,1).
Modos de operación del cifrado en bloque: en ocasiones es posible que se pueda deducir
información indirectamente, por ejemplo, en un protocolo que utilice mensajes can una
cabecera fija, la aparición de los mismos datos cifrados varias veces en una transmisión puede
indicar donde empiezan los mensajes, para contrarrestar esto el cifrado bloque opera en
varios modos:
- ECB (Electronic Codeobook): dividir el texto en bloques y cifrar cada uno de ellos de
forma separada pero los bloques idénticos de mensaje sin cifrar producirán idénticos
textos cifrados.
- CBC (Cipher Block Chaining): antes de ser cifrado, a cada bloque de texto se le aplica
una operación XOR bit a bit, de este modo, cada bloque es independiente de todos los
bloques de texto previos hasta ese punto para hacer cada mensaje único se puede
usar un vector de inicialización.
- CFB (Cipher Feedback): el algoritmo de cifrado no se aplica directamente al texto en
claro sino a un vector auxiliar. Del resultado del cifrado se toman “n” bits del texto en
claro para obtener “n” de texto cifrado. Estos bits se utilizan también para actualizar el
vector auxiliar.
- OFB (Output Feedback): como el CFB pero en lugar de actualizar el vector auxiliar con
el texto cif4rado, se actualiza con el resultado obtenido del algoritmo de cifrado.
Algoritmo de cifrado en bloque DES (Data Encryption Standard): es uno de los algoritmos más
usados el algoritmo ha sido sustituido por AES (Advanced Encryption Standard) debido a que
hoy en día se considera inseguro para muchas aplicaciones.
DES es el prototipo de algoritmo de cifrado por bloques: toma un texto en claro de longitud fija
de bits y lo transforma mediante una serie de operaciones básicas en otro texto cifrado de la
misma longitud, en bloques de 64 bits. DES utiliza una clave criptográfica para modificar la
transformación de modo que le descifrado solo puede ser realizado por aquellos que conozcan
la clave concreta utilizada en el cifrado. En realidad, solo 56 bits son empleados por el
algoritmo, los ocho restantes se utilizan únicamente para comprobar la paridad. La parte
central del algoritmo consiste en divide el mensaje de entrada en grupos de bits, hacer una
sustitución distinta sobre cada grupo y a continuación una transposición de todos los bits, esta
transformación se repite dieciséis veces, en cada iteración, la entrada es una transposición
distinta de los bits de la clave suma bit a bit (XOR) con la salida de la iteración anterior.
Algoritmo de cifrado en bloque AES: Rijndael puede trabajar en bloques de 128, 192 o 256 bits,
y la longitud de la clave también puede ser de 128, 192 o 256 bits. Dependiendo de la longitud
el número de iteración del algoritmo es 10, 12 o 14 respectivamente, cada iteración incluye y
una sustitución fija byte a byte, una transposición, una transformación consistente en
desplazamientos de bits y XORs y una suma binaria (XOR) con bits obtenidos a partir de la
clave.
- Si se escoge una secuencia “k” mas corta que el mensaje “M” se puede repetir
cíclicamente tantas veces como sea necesario para ir sumándola al texto en claro.
- Se podría tomar directamente S(k)=k, es decir, que la propia clave debe ser tan larga
como el mensaje que hay que cifrar. Si “k” es una secuencia totalmente aleator8ia que
no se repite cíclicamente, est6amos ante un ejemplo de cifrado incondicionalmente
seguro.
Lo que en la practica se utiliza son funciones que generan secuencias pseudoaleatorias a partir
de una semilla (parámetro generador), lo que se intercambia como clave secreta “k” es
solamente la semilla, las variables serán finitas, habrá un numero máximo de posibles estados
distintos, al cabo de un cierto periodo, los datos generados se volverán a repetir. Interesa que
el periodo de repetición sea cuanto más largo mejor.
Cifrado en base a funciones resumen: los algoritmos de cifrado no solo se usan para cifrar
datos, sino que son utilizados para garantizar la autenticidad de los mismos (funciones hash).
Una función resumen nos permite obtener una cadena de bits de longitud fija, relativamente
corta, a partir de un mensaje de longitud arbitraria: para mensajes “M” iguales, la función “h”
debe dar resúmenes “H” iguales. Las funciones de resumen, los algoritmos tienen que definir
una relación compleja entre los bits de entrada y cada bit de salida. Los ataques por fuerza
bruta se contrarrestan alargando lo suficiente la longitud del resumen.
Los algoritmos utilizados permiten cifrar y descifrar fácilmente, pero todos ellos son
considerablemente mas lentos que los equivalentes con criptografía simétrica, por eso, la
criptografía de calve publica se suele utilizar Oslo en los problemas que la criptografía
simétrica no puede resolver: el intercambio de claves y la autenticación con no repudio (firmas
digitales).
Los mecanismos de intercambio de claves permiten que dos partes se pongan de acuerdo en
las claves simétricas que utilizaran para comunicarse, sin que un tercero que este escuchando
el dialogo pueda deducir cuales son estas claves. La autenticación basada en clave publica se
puede utilizar si el algoritmo permite utilizar las claves a la inversa, si A envía un mensaje
cifrado con su clave privada, todo el mundo podrá descifrarlo con la calve publica de A, y al
mismo tiempo todo el mundo sabara que el mansaje solo lo puede a ver generado quien
conozca la calve privada asociada (A), esta es la base de las firmas digitales.
Algoritmos de calve pública (Diffie-Hellman): mecanismo que permite que dos partes se
pongan de acuerdo de forma segura sobre una clave secreta utilizando un canal inseguro, el
algoritmo se basa en la dificultad de calcular logaritmos discretos y se usa generalmente como
medio para acordar calves simétricas que será empleadas para el cifrado de una sesión.
- ¿Como sé que la calve pública del destinatario es la que dice ser y no es la de otra
persona que me engaña para poder leer el mensaje? Surgen las autoridades de
certificación. Las terceras partes de confianza (trusted third parties), entidades que
merecen la confianza de otros actores en un escenario de seguridad donde no existe
confianza directa entre las partes involucradas en una cierta transacción. Es necesaria
aun infraestructura de clave publica para cerrar el circulo de confianza. Esta
infraestructura de clave publica consta de una serie de autoridades que se especializan
en papeles concretos:
o Autoridades de certificación (CA o certificación authorities): vinculan la clave
publica a la entidad registrada proporcionado un servicio de identificación.
o Autoridades de registro (RA o registration authorities): ligan entes registrados
a figuras jurídicas, extendiendo la accesibilidad de las CA.
o Autoridades de fechado digital (TSA o time stamping authorities): vinculan un
instante de tiempo a un documento electrónico avalando con su firma la
existencia del documento en el instante referenciado (exactitud temporal de
los documentos electrónicos).
CERES: iniciativa puesta en marcha por la Administración, consiste en establecer una entidad
publica de certificación que permita autentificar y garantizar la confidencialidad de las
comunicaciones entre ciudadanos, empresas u otras instituciones ya administración públicas a
través de las redes abiertas de comunicación.
Los algoritmos de encriptación asimétrica son sede media del orden de 100-1000 veces mas
lentos que los algoritmos de encriptación simétrica por ellos es necesario combinar distintas
formas de encriptación para conseguir una mayor eficacia.
8. FIRMA DIGITAL
Es un bloque de caracteres que acompaña a un documento (o fichero) acreditando
quien es su autor (autenticación) y que no ha existido ninguna manipulación posterior de los
datos (integridad) para firmar un documento digital, su autoría queda vinculado al documento
de la firma, dicha firma podrá ser comprobada por cualquier persona que disponga de la clave
pública del autor.
La firma se realiza de la siguiente forma: software del firmante aplica un algoritmo hash sobre
el texto a firmar (unidireccional, lo cifrado no se puede descifrar), extracto de longitud ficha y
absolutamente específico para ese mensaje. Los algoritmos has mas utilizados para esta
función son el MD5 o SHA-1. El extracto conseguido cuya longitud oscila entre 128 y 1690 bits,
se somete a continuación a cifrado mediante la clave secreta del autor.
Una de las funciones básicas de un CPD es simplificar las labores administrativas, los puestos
de trabajo que aparecerán en:
Estándares:
Uno de los grandes problemas de un CPD está en la disipación de calor del equipamiento y el
consumo energético asociado, se hace necesarios sistemas de aire acondicionado que
mantenga temperaturas estables y bajas. Los principales factores a la hora de diseñar un CPD
son:
- Ubicación
- Espacios, seguridad
- Cableado, equipamiento, consumo
Espacios: las áreas funcionales se deben plantear de manera que garantice que:
Cableado: el sistema de cableado de un CPD debe deseñarse teniendo en mente que tiene que
ser permanente y genérico, debe seguir las normas EIA/TIA-568, que garantizan que los
sistemas que se ejecuten de acuerdo a ella soportaran todas las aplicaciones de
telecomunicaciones presentes y futuras por un lapso de al menos diez años.
- Uso de racks comunes: simplifica el montaje y brinda un control unificado de los cables
(sin superar el 70% de la capacidad del armario).
- Instalar guías de cables verticales y horizontales comunes.
- Extensas trayectorias para cables por arriba y debajo del piso: las superiores se
dedican al cableado temporal, pudiendo ir por canaletas y las inferiores para el
cableado permanente.
- Los cables UTP y coaxiales irán separados de la fibra en las trayectorias horizontales.
- Los cables eléctricos irán en bandejas de cables y la fibra en canales montados en
bandejas para evitar dañarla
- Todos los cables deberán ir convenientemente etiquetados.
Conexión cruzada: para conectar los equipos se utiliza el método de conexión cruzada se
conectan a paneles de parcheo (patch panels) conectados a su vez al cableado permanente, el
cableado apenas se vuelve a tocar tras su instalación, ventajas:
Climatización: optimizar espacio, se tiende a acomodar mas equipos en menos espacio y esto
conduce aun grave problema de disipación de calor, se hace imprescindible recurrir a equipos
de refrigeración y aire acondicionado que mantenga el clima del centro de datos
rigurosamente controlado, los valores recomendados son 16-24º y 40-55% de humedad.
Consumo energético: parte vital de un centro de datos y uno de sus mayores problemas
logísticos, no puede faltar suministro en ningún momento, los procedimientos más habituales
son:
Las medidas a tomar dependerán del nivel de fiabilidad requerido y de los costos, mantener un
equilibrio sopesando el coste que tendría para la empresa un “apagón”. Para ayudar a estimar
el nivel de fiabilidad de un CPD, la norma TIA-492 desarrolla cuatro niveles denominados Tier:
el nivel I brinda la menor fiabilidad y el IV, la mayor.
Niveles TIER:
- Tier I (CPD Básico): un CPD Tier I puede admitir interrupciones tanto planeadas como
no planeadas. Cuenta con sistemas de aire acondicionado y distribución de energía,
pero puede no tener piso técnico, UPS o generador eléctrico. La carga máxima de los
sistemas en situaciones críticas puede llegar al 100%, el CPD deberá estar fuera de
servicio al menos una vez al año por razones de mantenimiento y o reparaciones.
Errores de operación fo fallas en los componentes de su infraestructura causaran la
interrupción del CPD.
- Tier II (Componentes Redundantes): un CPD con componentes redundantes son
ligeramente menos susceptibles a interrupciones, tanto planeadas como las no
planeadas. Cuentan con suelo técnico, UPS y generadores eléctricos, conectado a una
sola línea de distribución eléctrica, existe al menos un duplicado de cada componente
de la infraestructura. La carga máxima de los sistemas en situaciones criticas es del
100%. El mantenimiento en la línea de distribución eléctrica o en otros componentes,
pueden causar una interrupción del servicio.
- Tier III (Mantenimiento Concurrente): permiten realizar cualquier actividad planeada
sobre cualquier componente de la infraestructura sin interrupciones en la operación,
incluyen mantenimiento preventivo, reparaciones o reemplazo de componentes,
agregar o eliminar componentes, realizar pruebas de sistemas o subsistemas, entre
otros. Suficiente capacidad y doble línea de distribución de los componentes,
actividades no planeadas como errores de operación o fallos espontaneas den la
infraestructura pueden todavía causar una interrupción del CPD. La carga máxima en
los sistemas en situaciones críticas es de 90%.
- Tier IV (Tolerante a Fallos): provee capacidad para realizar cualquier actividad
planeada sin interrupciones en el servicio, la funcionalidad tolerante a fallos le permite
a la infraestructura continúa operando aun ante un evento critico no planeado. Esto
requiere dos líneas de distribución simultáneamente activas (UPS independientes). La
carga máxima de los sistemas de situaciones críticas des de 90%. Persiste un nivel de
exposición a fallos, por el inicio una alarma de incendio o porque una persona inicie un
procedimiento de apagado de emergencia (EPO).
Existirán SAIs centralizadas en el CPD para dar alimentación eléctrica durante un periodo corto
de tiempo, equipos siguen funcionando más allá de este tiempo de paradas, será necesario
utilizar “grupos electrógenos”, existen 3 tipos de SAI:
Seguridad: los CPD son entornos críticos que deben adoptar diferentes medidas de seguridad.
Hay que prevenir accesos no autorizados (control de acceso, cámaras de vigilancia, alarmas,
sensores de presencia). Paralelamente hay que implementar mecanismos de prevención y
contención de desastres naturales.
- Precaución antiincendios: para reducir los riesgos se debe guardar las impresoras, una
fuente común de ignición, lejos de otros equipos, las paredes deben tener un grado
mínimo de resistencia al fuego de una hora y deben proporcionar barrera frente al
humo, todas las puertas de acceso deben tener ventana con cierre propio, los
materiales de construcción de la sala de ordenadores deben ser incombustibles y los
cables tendidos bajo el suelo deben ser LSZH (Low Smoke Zero Halogen).
Los principios para protección contra incendios son: reducir la probabilidad de que un
fuego comience, reducir la probabilidad de que un fuego se disperse y reducir el daño
mínimo que un fuego puede causar.
Los sistemas por aspersión se activan por dos detectores, hay que evitar que en caso
de incendio el agua caiga directamente sobre los equipos electrónicos y que los
sistemas de energía y aire permanezcan abiertos. Los dispositivos mas implantados son
los mecanismos de disparo de dióxido de carbono, se vacían grandes cantidades de
este gas en la sala que provoca el desplazamiento del oxígeno y por tanto el apagado
del incendio sin dañar los equipos.
- Armarios ignífugos: las copias de backup o los servidores de respaldo, también han de
contar con protección, los armarios ignífugos para daos, rack y equipos proporcionan
la más alta protección ante todo tipo de agentes externos.
- Sistemas de control de inundaciones: detectores de inundación con alarmas en varios
sitios instaladas en sitos visibles del edifico. La principal ventaja de los datos digitales
es su facilidad de copia, grandes organizaciones optan por realizar backups periódicos,
almacenan en ubicaciones geográficas distintas al CPD de tal forma que sus datos,
permanecen a salvo.
Procedimientos y actividades a realizar: definir una guía de actuación con los procedimientos y
acciones necesarios para restauración rápida, eficiente y segura de la capacidad de
procesamiento informático y de comunicaciones de la organización, así como para la
recuperación de los datos dañados o destruidos. Debe proporcionar una respuesta sistemática
ante los incidentes de seguridad, permitirá minimizar los daos ocasionados y facilitar la
recuperación del sistema afectado.
Una segunda alternativa seria retrasar la contención para poder estudiar con mas detalle el
tipo de incidente y tratar de averiguar quien es el responsable del mismo. Se puede adoptar
siempre y cuando sea posible monitorizar y controlar la actuación de los atacantes, para de
este modo reunir las evidencias necesarias que permitan iniciar las actuaciones legales. Se
corre el riesgo de que el incidente pueda tener perores consecuencias para la organización o
para terceros.
La erradicación es la etapa del Plan de Respuesta a Incidentes en la que se llevan a cabo todas
las actividades necesarias para eliminar los agentes causantes del incidente y de sus secuelas,
podríamos citar posibles “puertas traseras”, rootkits u otros códigos malignos. Será
conveniente llevar a cabo una revisión de otros sistemas que se pudieran ver comprometidos a
través de las relaciones de confianza con el sistema afectado
Identificación del atácate y posibles actuaciones legales: dentro del Plan de Respuesta a
Incidentes, la identificación del atacante es necesario para poder emprender acciones legales
para exigir responsabilidades y reclamar indemnizaciones. Generalmente solo se podrá
identificar la maquina o maquinas desde la que se ha llevado a cabo el ataque, pero no
directamente al individuo responsable de su utilización. Es una tarea que consume bastante
tiempo y recursos, no debería interferir en la contención y erradicación del incidente, los
ataques realizados desde otros países con ciertas lagunas legales.
Existen distintas técnicas para determinar la dirección IP del equipo desde el que se ha llevado
a cabo el ataque contra el sistema informático: herramientas como “ping”, “traceroute” o
“whois” consulta en los registros inversos de servidores DNS, es necesario tener en cuenta una
serie de obstáculos que pueden dificultar esta tarea: