viernes, 9 de noviembre de 2012

Tema 3. Metodos de Cifrados

Criptografía

Según el Diccionario de la Real Academia, la palabra criptografía proviene de la unión de los términos griegos oculto y escritura, y su definición es: “Arte de escribir con clave secreta o de un modo enigmático”.

Hoy día, la Criptografía se puede definir más bien como un conglomerado de técnicas, que tratan sobre la protección (ocultamiento frente a observadores no autorizados) de la información.

Según B. Schneier, la criptografía es el arte y la ciencia de mantener mensajes seguros.

Según Jorge Ramio Aguirrez: Realmente es la Rama de las Matemáticas -y en la actualidad de la Informática- que hace uso de métodos matemáticos con el objeto principal de cifrar un mensaje o archivo por medio de un algoritmo y una o más claves, dando lugar a distintos Criptosistemas que permiten asegurar, al menos, la confidencialidad y la integridad de la información.

Criptosistemas

            Tipo de Criptosistemas:
Criptosistemas Simétricos: Existe una única clave (secreta) que deben compartir emisor y receptor. La seguridad del sistema reside en mantener en secreto  dicha clave. 

El esquema de cifrado simétrico posee 5 ingredientes:
• Texto plano: Es el mensaje original legible que es suministrado como dato de entrada al algoritmo de cifrado.
• Algoritmo de cifrado: Ejecuta varias sustituciones y transformaciones sobre el texto plano
• Clave secreta: Es un valor independiente del texto plano y del algoritmo. Las sustituciones y las transformaciones ejecutadas por el algoritmo dependen de la clave.
• Texto cifrado: Es una cadena aleatoria de datos no legibles que es producido como salida del algoritmo. Depende del texto plano y de la clave secreta
• Algoritmo de descifrado: Su objetivo es tomar el texto cifrado y la clave secreta y producir el texto plano original.

Existen dos requerimientos que permitirán asegurar el uso de la criptografía simétrica:
·         Es necesario un algoritmo de cifrado fuerte: El oponente debe ser incapaz de descifrar el texto cifrado o descubrir la clave.
·         El enviador y el receptor deben haber obtenido copias de la clave secreta en un modo seguro y esta debe mantenerse muy bien protegida

Cifrado de flujo: El cifrado Vernam verifica las condiciones de secreto perfecto (Shannon), este es el único procedimiento de cifrado incondicionalmente seguro. Tiene el inconveniente de que requiere un bit de clave por cada bit de texto claro.

Hacer llegar una clave tan grande a emisor y receptor por un canal seguro desbordaría la propia capacidad del canal
El emisor A, con una clave corta (secreta) y un algoritmo determinístico (público) genera una secuencia binaria {Si} cuyos elementos se suman módulo 2 con los correspondientes bits de texto claro mi, dando lugar a los bits de texto cifrado ci. Esta secuencia {ci} es la que se envía a través de un canal público.
En recepción, B, con la misma clave y el mismo algoritmo genera la misma secuencia cifrante, que se suma modulo 2 con lasecuencia cifrada, dando lugar a los bits de texto claro.
El cifrado en flujo es una involución:
El procedimiento de cifrado y descifrado es el mismo. Como la secuencia cifrante se ha obtenido a partir de un algoritmo determinístico, el cifrado en flujo ya no considera secuencias perfectamente aleatorias, sino solamente pseudo-aleatorias.
Lo que se pierde en cuanto a seguridad (condiciones de Shannon) se gana en viabilidad. La única información que han de compartir emisor y receptor es la clave secreta, cuya longitud oscila entre 120-150 bits.
En la actualidad, y en general para todos los cifrados de clave privada, lo que se hace es enviar la clave privada al destinatario mediante un procedimiento de clave pública (procedimiento más costoso, pero válido para textos cortos), y una vez que ambos disponen ya de la clave, se procede a aplicar el esquema de cifrado en flujo.

Cifrado asimétricos: Cada usuario crea un par de claves, una privada y otra pública. La seguridad del sistema reside en la dificultad computacional de descubrir la clave privada a partir de la pública, salvo que se conozca una trampa. Usan funciones matemáticas con trampa.

El cifrado de clave pública fue el primer avance revolucionario en miles de años.
·         Los algoritmos de clave pública están basados en funciones matemáticas y no en simples operaciones sobre los patrones de bits.
·         La criptografía de clave pública es asimétrica, lo que implica el uso de dos claves separadas, a diferencia del cifrado simétrico convencional, que emplea sólo una clave.
·         El uso de dos claves tiene importantes consecuencias en el terreno de la confidencialidad, la distribución de las claves y la autentificación.
·         No debe ser posible deducir la clave privada a partir de la clave pública.
·         Transformación one way para generar la clave pública (RSA, DH).
·         El concepto del cifrado de clave pública evolucionó para intentar atacar dos de los problemas más difíciles asociados al cifrado simétrico, ellos son: la distribución de la clave y la firma digital.

RSA:

• Los dos algoritmos de clave pública más usados son el RSA y el Diffie-Hellman.
• El algoritmo fue descrito en 1977 por Ron Rivest, Adi Shamir y Len Adleman, del
Instituto Tecnológico de Massachusetts (MIT).
Diffie y Hellma originalmente no indicaron el algoritmo a utilizar en su protocolo.
El algoritmo RSA Rivert, Shamir, Adleman, permite satisfacer los requerimientos establecidos por D-H para hacer posible instrumentar el intercambio descrito previamente.  Opera como un cifrado de bloque y ha sido el enfoque más aceptado e implementado para el cifrado de clave pública.
Su robustez se fundamenta en la dificultad para factorizar grandes números- números primos como mínimo de 100 dígitos y cuyo producto es 10²ºº dígitos.

Esteganografia:
Del griego στεγανος (steganos): cubierto u oculto, y γραφος (graphos): escritura.
Es la parte de la criptología en la que se estudian y aplican técnicas que permiten el ocultamiento de mensajes u objetos, dentro de otros, llamados portadores, de modo que no se perciba su existencia. Es decir, se trata de ocultar mensajes dentro de otros y de esta forma establecer un canal encubierto de comunicación, de modo que el propio acto de la comunicación pase inadvertido para observadores que tienen acceso a ese canal. Esta se usa con el fin de realizar una comunicación entre partes. Para que pueda hablarse de Esteganografia debe haber voluntad de comunicación por parte del emisor y del receptor.
La esteganografía suele confundirse con la criptografía, por ser ambas parte de los procesos de protección de la información, son disciplinas distintas, tanto en su forma de implementar como en su objetivo mismo. Mientras que la criptografía se utiliza para cifrar información de manera que sea ininteligible para un probable intruso, a pesar del conocimiento de su existencia, la esteganografía oculta la información en un portador de modo que no sea advertido el hecho mismo de su existencia y envío. De esta última forma, un probable intruso ni siquiera sabrá que se está transmitiendo información sensible.
Sin embargo, la criptografía y la esteganografía pueden complementarse, dando un nivel de seguridad extra a la información, es decir, es muy común (aunque no imprescindible) que el mensaje a esteganografiar sea previamente cifrado, de tal modo que a un eventual intruso no sólo le costará advertir la presencia de la mensajería oculta, y si la llegara a obtener, la encontraría cifrada.
Dentro de la Esteganografia existen  dos grupos de ficheros, los cuales encontramos en nuestros discos duro: ficheros interpretados el más común y utilizado hoy día y ficheros ejecutables.

Los ficheros ejecutables: son los que mandan instrucciones al procesador (a través del sistema operativo y su núcleo o kernel).
Los ficheros interpretados: son aquellos usados para leer o escribir información, pero siempre mediante algún software.

Dentro de los ficheros interpretados tenemos:

Ficheros de imagen: Las imágenes es de lejos el tipo de fichero más utilizado para esteganografiar mensajes ocultos.
Aunque son muchas las formas de representar una imagen en un ordenador, todas tienen un denominador común: tienen que representar colores mediante bits, bien sea cada punto, vectores o tablas. Nuestro principal arma es la calidad de la imagen, por lo que según la profundidad de color será más o menos sencillo la realización de esteganografía. Con 4 y 8 bits (16 y 256 colores respectivamente) la variedad no es muy alta, por lo que la diferencia entre colores contiguos es poca.

Dentro de este grupo de fichero hay distintitos tipo de fichero de imagen:

 Windows BitMaP (BMP): Es el formato gráfico más simple, y aunque teóricamente es capaz de realizar compresión de imagen, en la práctica jamás se usa. Consiste simplemente en una cabecera y los valores de cada pixel de la imagen (ocupando cada pixel 4, 8, 16, 24 ó 32 bits según la calidad del color) empezando de abajo hacia arriba y de izquierda a derecha.
Su principal ventaja es la sencillez (es el formato más indicado para realizar esteganografía). Su mayor inconveniente es el inmenso tamaño que ocupan.

 PC Paintbrush (PCX): Este tipo de fichero es una evolución del mapa de bits tradicional. En PCX se usa el algoritmo de compresión RLE. Mediante RLE cuando dos o más pixels consecutivos tienen el mismo color, el algoritmo guarda la información del color y el número de pixels que lo usan (para la posterior visualización).
El criterio para almacenar el número de pixels usando el color es el siguiente: si el byte es menor o igual que 192, corresponde a un único pixel, pero si es superior a 192 el número de pixels repetidos nos lo dan los seis bits menos significativos del byte (ponemos a cero los dos bits más significativos) y el color nos lo da el byte siguiente.
Como ventajas tiene la sencillez del algoritmo (aunque, como ya veremos, este formato de compresión hace mucho más tedioso la realización de esteganografía), y como inconveniente, la escasa compresión que obtenemos en fotografías (que tienen mayor variedad de pixels), que al fin y al cabo es el mayor uso de imagenes.

 Graphics Image Format (GIF): Es uno de los mejores formatos de compresión (sobre todo para imágenes con grandes áreas de un mismo color), además de ser la opción más sencilla para animaciones vectoriales (flash y otros métodos más caros y complejos aparte...). El formato GIF89a además soporta transparencias y entrelazado.
Usa el algoritmo de compresión LZW (usado en compresión de ficheros también), mucho más complejo que RLE. Su principal punto débil es la limitación a 256 colores (8 bits) de la paleta de color, lo cual lo hace desaconsejable para cualquier tipo de fotografía o imagen realista.
Su principal ventaja es la enorme compresión (cosa que nos complica sobremanera la esteganografía) y la capacidad de uso de transparencias y entrelazado, mientras que su mayor defecto es la escasa paleta de colores.

 Joint Photographic Experts Group (JPEG): Este fichero es, con diferencia, el más popular. El algoritmo de compresión de JPEG se basa en un defecto del ojo humano que impide la completa visualización de la paleta de 24 bits, por lo que elimina la información que el ojo humano no es capaz de procesar. Esto nos da una importante reducción de tamaño, pero -muy importante este algoritmo SÍ tiene pérdida de información en el proceso de compresión. Dependiendo del factor de compresión la pérdida de imagen puede ser visible o no al ojo humano.
Una variante del JPEG original es el JPEG progresivo, que realiza entrelazado de datos para visualizarlo en primer lugar con baja calidad e ir aumentando la misma en varias pasadas.
La principal ventaja que tiene JPEG es su calidad a la hora de representar fotografías (con su paleta de 16 bits y su alta compresión), y su principal desventaja es la pérdida de calidad e información con grandes ratios de compresión.
JPEG es sin duda el más usado en esteganografía, pero eso no significa que sea el más sencillo.

 Tagged Image File Format (TIFF): TIFF es un formato usado en imágenes de altísima resolución y calidad, principalmente en trabajos de imprenta o fotografía profesional. Se trata básicamente de un mapa de bits preparado para el estándar CMYK, y preparado para el uso de muchos estándares y formatos de compresión diversos, que pueden ser usados en la misma imagen.
La ventaja de este formato es la enorme calidad obtenida, y su principal desventaja el tamaño que ocupa. Debido a lo específico de este tipo de fichero, no es prácticamente usado para esteganografía.

 Portable Network Graphics (PNG): El formato PNG nace debido a los problemas de la patente del algoritmo LZW (Lempel-Ziv-Welch), y con la intención de sustituir a GIF como estándar. PNG cubre prácticamente todas las características de GIF, con un mejor algoritmo de compresión, sin pérdida de información y con una paleta de color muy superior a los 256 bits de GIF (16 bits).
Además, se trata del único formato comprimido que incorpora la información del canal alpha, logrando una altísima calidad en el uso de capas y transparencias.
PNG además es uno de los primeros ficheros de imagen en contener información acerca del fichero en forma de metadatos de texto.
A pesar de todas sus ventajas (principalmente el tratarse de un formato libre), tiene un defecto: no permite el uso de animaciones (al contrario que GIF). La organización W3C (autores de PNG) ha creado el formato MNG para animaciones.

Ficheros de sonido: Los ficheros de sonido son también utilizados a menudo en técnicas esteganográficas.

La representación de la información en los ficheros de sonido se realiza generalmente mediante el registro consecutivo de las muestras que componen el sonido. Al igual que ocurría con los ficheros de imagen, el sonido es representado siempre en forma de bits, y cada vez con una calidad mayor (mientras redacto esto, estoy escuchando un mp3 de 128kbit y 44100Hz, lo cual supone una cantidad muy grande de información...), de forma que para nuestros experimentos esteganográficos podremos jugar con los bits menos significativos de la información.
En el sonido ocurre una cosa muy curiosa: nos da prácticamente igual que la calidad sea alta o baja, pues en calidades altas la cantidad de bits usados para representar el sonido es muy alta, y un cambio ínfimo no influye en el resultado; mientras que en los de calidad baja, aunque la modificación sea más llamativa, al tratarse de un sonido de baja calidad (por ejemplo calidad de radio), cualquier modificación puede pasar inadvertida como ruido de fondo.

Tipo de fichero de sonido:

 Waveform Audio File Format (WAV): Se trata del formato de sonido desarrollado por Microsoft para su sistema operativo Windows. Se compone de una cabecera de 43 bytes y un conjunto arbitrario de bytes que contienen las muestras una tras otra, sin ningún tipo de compresión y con cuantificación uniforme. Al ser un formato realmente sencillo, es muy útil para realizar tratamiento digital de sonido.
Su principal ventaja es la sencillez del formato, y su mayor inconveniente la cantidad de espacio requerido (una muestra de 10 segundos en calidad de CD -PCM, 44 KHz, 16 bit, estéreo ocupa 1,6 Mb).

 Motion Picture Experts Group - Audio Layer 3 (MP3): Sin duda el más famoso de todos los formatos de aud. Este formato utiliza un algoritmo de compresión con pérdida de información, basándose en las limitaciones del oído humano: somos sensibles a las frecuencias medias, pero poco perceptivos con las altas o bajas; y además percibimos mal los sonidos bajos que suenan a la vez que sonidos muy fuertes (efecto de ocultamiento). Así pues, eliminando los sonidos que no oímos, logra un ratio de compresión de hasta 12:1.
Su principal ventaja, sin duda, es la gran compresión y la poca pérdida de calidad que tiene, y su principal inconveniente es la pérdida inevitable de información.

 OGG Vorbis (OGG): Este formato se desarrolla para constituir una alternativa totalmente libre a mp3. Aunque es un formato aún muy joven (aún no hace dos años de la finalización de la versión 1.0), tiene mucho que decir, pues tiene un sistema de compresión similar al de mp3, pero logrando mayores ratios de compresión (ocupa menos) y una mayor calidad de sonido.
El principal obstáculo para la implantación de ogg es la “estandarización” de mp3: reproductores portátiles, equipos de audio, reproductores DVD domésticos...
La principal ventaja de ogg es la mayor compresión y calidad con respecto a mp3, así como ser 100% libre de patentes. Su principal inconveniente, como en mp3, es la pérdida de información en el proceso de compresión.

 Ficheros de vídeo: Motion Picture Experts Group -en cualquier versión- (MPEG), DivX (AVI), XviD (AVI)...
Este tipo de ficheros son también útiles dada la ingente cantidad de información que almacenan, pero a la vez son complicados de modificar sin estropearlos, debido a los complejos algoritmos de compresión utilizados.

 Ficheros de texto formateado: Microsoft Word (DOC), OpenOffice.org (SXW)...
Los ficheros de texto formateado usualmente almacenan metadatos que nos resultan muy útiles para esconder nuestra información. No obstante los metadatos también pueden ser leídos y una modificación puede ser detectada con relativa facilidad...

El caso de ficheros de texto plano, scripts o programas de lenguajes interpretados (TXT, SH, PL, HTML, PHP) es distinto, pues NO es aconsejable usarlos en esteganografía, dado que prácticamente todos son ficheros de texto plano que son leídos por su correspondiente intérprete. Esto hace que una “e” en el texto sea una “e” limpia al abrir el fichero con un editor hexadecimal, y si la modificamos para que sea una “f”, en el texto cambiará para ser una “f” igualmente.


Funciones de autenticación

            Firma Digital: Es una secuencia de datos electrónicos (bits) que se obtienen mediante la aplicación a un mensaje determinado de un algoritmo (fórmula matemática) de cifrado asimétrico o de clave pública, y que equivale funcionalmente a la firma autógrafa en orden a la identificación del autor del que procede el mensaje. Desde un punto de vista material, la firma digital es una simple cadena o secuencia de caracteres que se adjunta al final del cuerpo del mensaje firmado digitalmente.

La firma digital es un procedimiento técnico que basándose en técnicas criptográficas trata de dar respuesta a esa triple necesidad apuntada anteriormente, a fin de posibilitar el tráfico comercial electrónico.
           
Con el surgimiento y desarrollo de las redes telemáticas, como Internet, ha supuesto la posibilidad de intercambiar entre personas distantes geográficamente mensajes de todo tipo, incluidos los mensajes de contenido contractual. Estos mensajes plantean el problema de acreditar tanto la autenticidad como la autoría de los mismos.
Concretamente, para que dos personas, puedan intercambiar entre ellas mensajes electrónicos de carácter comercial que sean mínimamente fiables y puedan, en consecuencia, dar a las partes contratantes la confianza y la seguridad que necesita el tráfico comercial, esos mensajes deben cumplir los siguientes requisitos:

1. Identidad, que implica poder atribuir de forma indubitada el mensaje electrónico recibido a una determinada persona como autora del mensaje.
2. Integridad, que implica la certeza de que el mensaje recibido por B (receptor) es exactamente el mismo mensaje emitido por A (emisor), sin que haya sufrido alteración alguna durante el proceso de transmisión de A hacia B.
3. No repudio o no rechazo en origen, que implica que el emisor del mensaje (A) no pueda negar en ningún caso que el mensaje ha sido enviado por él.

Estos requisitos anteriores, se une un cuarto elemento, que es la confidencialidad, que no es un requisito esencial de la firma digital sino accesorio de la misma. La confidencialidad implica que el mensaje no haya podido ser leído por terceras personas distintas del emisor y del receptor durante el proceso de transmisión del mismo.

Es de hacer notar que La firma digital se basa en la utilización combinada de dos técnicas distintas, la criptografía asimétrica o de clave pública para cifrar mensajes y el uso de las llamadas funciones hash o funciones resumen.

Las Funciones Hash:
            Es una función matemática que toma una entrada de longitud variable y produce una salida de longitud fija.
Junto a la criptografía asimétrica se utilizan en la firma digital las llamadas funciones hash o funciones resumen. Los mensajes que se intercambian pueden tener un gran tamaño, hecho éste que dificulta el proceso de cifrado. Por ello, no se cifra el mensaje entero sino un resumen del mismo obtenido aplicando al mensaje una función hash.
Partiendo de un mensaje determinado que puede tener cualquier tamaño, dicho mensaje se convierte mediante la función hash en un mensaje con una dimensión fija (generalmente de 160 bits). Para ello, el mensaje originario se divide en varias partes cada una de las cuales tendrá ese tamaño de 160 bits, y una vez dividido se combinan elementos tomados de cada una de las partes resultantes de la división para formar el mensaje resumen o hash, que también tendrá una dimensión fija y constante de 160 bits. Este resumen de dimensión fija es el que se cifrará utilizando la clave privada del emisor del mensaje.

Los Sellos Temporales:
Finalmente, en el proceso de intercambio de mensajes electrónicos es importante que, además de los elementos o requisitos anteriormente analizados, pueda saberse y establecerse con certeza la fecha exacta en la que los mensajes han sido enviados. Esta característica se consigue mediante los llamados sellos temporales o “time stamping”, que es aquella función atribuida generalmente a los Prestadores de Servicios de Certificación mediante la cual se fija la fecha de los mensajes electrónicos firmados digitalmente.

La Confidencialidad de los Mensajes:
En ocasiones, además de garantizar la procedencia de los mensajes electrónicos que se intercambian por medio de Internet y la autenticidad o integridad de los mismos, puede ser conveniente garantizar también su confidencialidad. Ello implica tener la certeza de que el mensaje enviado por A (emisor) únicamente será leído por B (receptor) y no por terceras personas ajenas a la relación que mantienen A y B.
En tales casos, también se acude al cifrado del mensaje con el par de claves, pero de manera diferente al mecanismo propio y característico de la firma digital.
Para garantizar la confidencialidad del mensaje, el cuerpo del mismo (no el hash o resumen) se cifra utilizando la clave pública de B (receptor), quien al recibir el mensaje lo descifrará utilizando para ello su clave privada (la clave privada de B). De esta manera se garantiza que únicamente B pueda descifrar el cuerpo del mensaje y conocer su contenido.

La Obtención del Par de Claves y de los Certificados Digitales ¿Dónde puede obtener una persona el par de claves?:
La firma digital se genera mediante la utilización de un par de claves de cifrado (pública y privada), que se utilizan para cifrar y descifrar los mensajes.
A diferencia de la firma autógrafa, que es de libre creación por cada individuo y no necesita ser autorizada por nadie ni registrada en ninguna parte para ser utilizada, la firma digital, y más concretamente el par de claves que se utilizan para firmar digitalmente los mensajes, no pueden ser creadas libremente por cada individuo.
En principio, cualquier persona puede dirigirse a una empresa informática que cuente con los dispositivos necesarios para generar el par de claves y solicitar la creación de dicho par de claves. Posteriormente, con el par de claves creado para una persona determinada, ésta se dirigiría a un Prestador de Servicios de Certificación para obtener el certificado digital correspondiente a ese par de claves.
Sin embargo, en la práctica los Prestadores de Servicios de Certificación cumplen ambas funciones: crean el par de claves para una persona y expiden el certificado digital correspondiente a ese par de claves.

Certificados Digitales:
La utilización del par de claves (privada y pública) para cifrar y descifrar los mensajes permite tener la certeza de que el mensaje que B recibe de A y que descifra con la clave pública de A, no ha sido alterado y proviene necesariamente de A. Pero ¿Quién es A?. Para responder de la identidad de A (emisor) es necesario la intervención de un tercero, que son los llamados Prestadores de Servicios de Certificación, cuya misión es la de emitir los llamados certificados digitales o certificados de clave pública.
Un certificado digital es un archivo electrónico que tiene un tamaño máximo de 2 Kilobytes y que contiene los datos de identificación personal de A (emisor de los mensajes), la clave pública de A y la firma privada del propio
Prestador de Servicios de Certificación. Ese archivo electrónico es cifrado por la entidad Prestadora de Servicios de Certificación con la clave privada de ésta.
Los certificados digitales tienen una duración determinada, transcurrido un tiempo deben ser renovados, y pueden ser revocados anticipadamente en ciertos supuestos (por ejemplo, en el caso de que la clave privada, que debe permanecer secreta, haya pasado a ser conocida por terceras personas no autorizadas para usarla).
Gracias al certificado digital, el par de claves obtenido por una persona estará siempre vinculado a una determinada identidad personal, y si se sabe que el mensaje ha sido cifrado con la clave privada de esa persona, también se sabe quién es la persona titular de esa clave privada.

¿Cómo se Obtiene el Dispositivo para Firmar Digitalmente un Mensaje?
El proceso de obtención de los elementos necesarios para firmar digitalmente mensajes (par de claves y certificado digital) es el siguiente:

1.    Dirigirse a una empresa o entidad que tenga el carácter de Prestador de Servicios de Certificación y solicitar de ellos el par de claves y el certificado digital correspondiente a las mismas. Generalmente, se puede acudirá dicha entidad bien personalmente o por medio de internet utilizando la página web del Prestador de Servicios de Certificación.
2.    El prestador de Servicios de Certificación comprobará la identidad, bien directamente o por medio de entidades colaboradoras (Autoridades Locales de Registro), para lo cual se deberá exhibir el D.N.I. y en el caso de ser el representante de una sociedad (administrador, apoderado, etc.) o de cualquier otra persona jurídica, se debe acreditar documentalmente el cargo y sus facultades.
3.    El prestador de Servicios de Certificación crea con los dispositivos técnicos adecuados el par de claves pública y privada y genera el certificado digital correspondiente a esas claves.
4.    El prestador de Servicios de Certificación entrega una tarjeta semejante a una tarjeta de crédito que tiene una banda magnética, aunque actualmente se vienen sustituyendo por las tarjetas denominadas “smartcard” que incorporan un chip, en la que están grabados tanto el par de claves como el certificado digital. El acceso al par de claves y al certificado digital grabado en la tarjeta está protegido mediante una clave como las que se utilizan en las tarjetas de crédito o en las tarjetas de cajero automático. En otras ocasiones, en lugar de la tarjeta el Prestador de Servicios de Certificación deja almacenado el certificado digital en su propia página web, a fin de que el destinatario copie el archivo y lo instale en su ordenador.
5.    Con esa tarjeta y un lector de tarjetas smartcard (o de banda magnética si fuera el caso) adecuado conectado al ordenador personal, se podrá leer y utilizar la información grabada en la tarjeta para firmar digitalmente los mensajes electrónicos que se envíen a otras personas.

Funcionamiento de  la Firma Digital:

El proceso de firma digital de un mensaje electrónico comprende en realidad dos procesos sucesivos: la firma del mensaje por el emisor del mismo y la verificación de la firma por el receptor del mensaje. Estos dos procesos tienen lugar de la manera que se expresa a continuación.

Firma digital de un mensaje electrónico:

1.    El emisor crea o redacta un mensaje electrónico determinado (por ejemplo, una propuesta comercial).
2.    El emisor aplica a ese mensaje electrónico una función hash (algoritmo), mediante la cual obtiene un resumen de ese mensaje.
3.    El emisor cifra ese mensaje resumen utilizando su clave privada.
4.    El emisor envía al receptor un correo electrónico que contiene los siguientes elementos:
             I.        El cuerpo del mensaje, que es el mensaje en claro (es decir, sin cifrar). Si se desea mantener la confidencialidad del mensaje, éste se cifra también pero utilizando la clave pública del receptor.
            II.        La firma del mensaje, que a su vez se compone de dos elementos:
a.    El hash o mensaje resumen cifrado con la clave privada del emisor.
b.    El certificado digital del emisor, que contiene sus datos personales y su clave pública, y que está cifrado con la clave privada del Prestador de Servicios de Certificación.

Verificación por el receptor de la firma digital del mensaje

1. El receptor recibe el correo electrónico que contiene todos los elementos mencionados anteriormente.
2. El receptor en primer lugar descifra el certificado digital del emisor, incluido en el correo electrónico, utilizando para ello la clave pública del Prestador de Servicios de Certificación que ha expedido dicho certificado. Esa clave pública la tomará el receptor, por ejemplo, de la página web del Prestador de Servicios de Certificación en la que existirá depositada dicha clave pública a disposición de todos los interesados.
3. Una vez descifrado el certificado, el receptor podrá acceder a la clave pública del emisor, que es uno de los elementos contenidos en dicho certificado. Además podrá saber a quién corresponde dicha clave pública, dado que los datos personales del titular de la clave (emisor) constan también en el certificado.
4. El receptor utilizará la clave pública del emisor obtenida del certificado digital para descifrar el hash o mensaje resumen creado por el emisor.
5. El receptor aplicará al cuerpo del mensaje, que aparece en claro o no cifrado, que también figura en el correo electrónico recibido, la misma función hash que utilizó el emisor con anterioridad, obteniendo igualmente el receptor un mensaje resumen. Si el cuerpo del mensaje también ha sido cifrado para garantizar la confidencialidad del mismo, previamente el receptor deberá descifrarlo utilizando para ello su propia clave privada.
6. El receptor comparará el mensaje resumen o hash recibido del emisor con el mensaje resumen o hash obtenido por ella misma. Si ambos mensajes resumen o hash coinciden totalmente significa lo siguiente:
(a)  El mensaje no ha sufrido alteración durante su transmisión, es decir, es íntegro o auténtico.
(b)  El mensaje resumen descifrado por el receptor con la clave pública del emisor ha sido necesariamente cifrado con la clave privada del emisor y, por tanto, proviene necesariamente del emisor.
(c)  Como el certificado digital nos dice quién es el emisor, se puede concluir que el mensaje ha sido firmado digitalmente por el emisor, siendo éste una persona con identidad determinada y conocida.
(d)  Por el contrario, si los mensajes resumen no coinciden quiere decir que el mensaje ha sido alterado por un tercero durante el proceso de transmisión, y si el mensaje resumen descifrado por el receptor es ininteligible quiere decir que no ha sido cifrado con la clave privada del emisor. En resumen, que el mensaje no es auténtico o que el mensaje no ha sido firmado por el emisor sino por otra persona.
(e)  Finalmente, hay que tener en cuenta que las distintas fases del proceso de firma y verificación de una firma digital que han sido descritas no se producen de manera manual sino automática e instantánea, por el simple hecho de introducir la correspondiente tarjeta magnética en el lector de tarjetas de nuestro ordenador y activar el procedimiento.

Técnicas de los hackers:

1.    Footprinting:
El uso de un atacante de herramientas y de la información para crear un perfil completo de la postura de la seguridad de una organización se conoce como footprinting. Por ejemplo, antes de que un hacker ataque una red, el/ella quiere conocer la información que incluye:

  • Presencia en Internet/ extranet de la compañía
  • La política de la compañía con respecto al acceso remoto
  • La versión utilizada de software en los servers (IIS, Exchange etc)
  • Los rangos IP de los cuales es propietaria la organizacion
  • Desafíos técnicos hechos por la compañía
  • Las fusiones o las adquisiciones que terminaron recientemente, estan en marcha o pendientes

2.    Scanning:
Como resultado del footprinting, un hacker puede identificar la lista de red y las direcciones IP utilizadas en la compañía. El siguiente paso lógico para un hacker es el scanning. El uso de un atacante de herramientas y de la información es para determinar qué sistemas estos vivos y accesibles desde Internet así como qué puertos están escuchando en cualquier sistema dado. Con ese conocimiento, el atacante puede apuntar los sistemas específicos que funcionan con software o servicios específicos usando exploit conocidos.

3.    Enumeration:
Enumeration implica el uso de un atacante de herramientas para obtener la información detallada sobre un sistema remoto - por ejemplo servicios ejecutándose, todos los shares, cuentas de usuario, grupos, miembros de un dominio, politicas de cuentas (lockout, password age, etc.
Un hacker típicamente utiliza enumeration no intrusiva probando si la información que obtuvo es suficiente para un ataque.


4.    Port Redirection:
Cuando se tiene configurado un firewall para bloquear determinados puertos de acceso entrante, un hacker puede usar port redirection como camino de acceso a la  red. Port redirection es utilizado para escuchar en algunos puertos. Los paquetes son redireccionados a destinos específicos.

5.    Gaining Access:
Hay varias herramientas disponibles que pueden permitir a un hacker tomar control de un sistema. Por ejemplo, Samdump y Brutus son crackers de passwords. Samdump se utiliza extraer el hashes del password de los archivos SAM. Brutus es un cracker de password remoto. Si un hacker consigue el acceso a una copia de una base de datos SAM, el hacker podría utilizar l0phtcrack y extraer los usuarios y passwords exactos.

6.    Privilege Escalation:
Un hacker puede causar la mayoría del daño consiguiendo privilegios administrativos en una red. Hay varias utilidades que un hacker puede utilizar para ganar privilegio administrativo. Por ejemplo, la utilidad Getadmin.exe es usada para otorgar a usuarios comunes privilegios administrativos agregando a estos usuarios al grupo de administradores. Esta utilidad funciona con todas las cuentas excepto con la cuenta de Guest.

Es importante observar que cualquier cuenta se haya concedido el “Debug Programs right”. Siempre se podrá ejecutar satisfactoriamente Getadmin.exe, incluso después de la aplicación del hotfix. Esto es porque el “Debug Programs right” habilita al usuario a adjuntar cualquier proceso. El “Debug Programs right” es inicialmente otorgado a Administradores y debe ser utilizado únicamente con usuarios altamente confiables.

También, si Getadmin.exe se ejecuta con una cuenta que sea ya un miembro del grupo local de los administradores, continua funcionando (incluso luego de aplicar el hotfix).

7.    Buffer Overflows:
Algunas herramientas de ataque ejecutan código de buffer overruns. Sobreescribiendo segmentos específicos de la memoria, el atacante puede volver a dirigir una llamada de la memoria dentro de un programa para llamar su propio código en vez del código previsto. Tal llamada funcionaría en el contexto de seguridad del proceso que lo llama más que el nivel de privilegio del usuario.

8.    Shovel a Shell:
Herramientas de shell Remoto habilitan a los atacantes a acceder al ‘remote command shell’ en el servidor destino. Los atacantes usan remote shell para elevar sus privilegios.

9.    Interactive Control:
Llamados como ‘RATs’ (Remote Administration Tools).
Éstas son herramientas reales y cautelosas de Administración Remota contenidas en .exe llamados aleatoriamente (o camuflados en legítimos .exe). Eso permite que un usuario remoto realice cualquier acción remotamente vía un puerto a su elección sin un usuario local del sistema que lo habilite.

10.  Camouflaging:
Después que un hacker logra la entrada en una red, tratará de no dejar rastros de su presencia y su paso a los Administradores. Hay varias herramientas que un hacker puede utilizar. Por ejemplo, WinZapper y Elsave pueden ser utilizadas para borrar registros de los logs de eventos.

NT Rootkits es utilizado a veces por un atacante. En tal ataque, son reemplazados ciertos archivos con versiones modificadas. Cuando un administrador utiliza el ejecutable, el atacante obtiene información adicional para continuar su ataque. Semejantemente, los elementos específicos de salida se pueden enmascarar por rootkit para camuflar las herramientas de ataque que se ejecutan en el sistema. Un acercamiento común para detectar archivos modificados es comparar la versión en el hash de un archivo limpio. Es importante observar que la comparación se debe hacer en una máquina limpia usando medios confiables, pues es también es posible que cualquier utilidad del ataque haya comprometido el sistema en cuestión.

El propósito de este es alertar a el atacante que alguien está investigando. Se puede utilizar para ejecutar programas destructivos en nombre del Administrador o instalar backdoor trojans.



11.  Intelligence Gathering

SNIFFING

Propósito:
  • Después de utilizar un sniffer el atacante está en condiciones de obtener nombres de cuentas y passwords que pasen por la red en texto plano.
  • Puede ser utilizado para descubrir otras redes / equipos que pueden estar comprometidos en un futuro.
  • Puede ser utilizado para descubrir otros sniffers.
  • Netmon utilizabroadcasts del protocolo BONE.
  • Los equipos Windows por defecto responden pedidos ARP (Unix puede restringir respuestas ARP)

12.  Island Hopping:
Island Hopping es una técnica de Hacking en la cual el hacker incorpora una red de ordenadores débiles y después se traslada a partes más seguras de la red. Esencialmente, están utilizando las mismas técnicas discutidas previamente para ampliar su influencia dentro de un ambiente dado de red. Una cosa es para un atacante comprometer un web server sin interés y sin la seguridad apropiada. Es algo mucho más atractiva la red corporativa entera donde existen datos más interesantes para la compañía.

13.  Social Engineering:
Es de naturaleza humana. Nosotros, como generalización, conseguir la satisfacción de participar en el éxito de otros. Los atacantes ruegan a menudo esta opción. No realizando prácticamente acción alguna, obtienen información que de otra manera no estaría disponible. Un atacante social listo puede trampear a menudo a individuos en la organización para divulgar la información que pertenece a los nombres de servers, números de módem, direcciones IP, configuraciones de red, políticas de password, nombres de cuentas u otra información privilegiada que sea beneficiosa en un ataque. 

14.  Denial of Service:
Un atacante no tiene que acceder necesariamente a un sistema para causar problemas significativos. Los ataques Denial of Service (DoS) realizan tareas en los servicios con el fin de evitar su normal funcionamiento. Los ejemplos incluirían todas las conexiones de red en un server o asegurarse que un mail Server reciba más mails de los que puede manejar. Los ataques DoS pueden ser un ataque directo o causado por virus, gusanos o Trojan horses.

Los objetivos de los ataques Denial of service pueden ser:

§  CPU
§  Espacio en disco
§  Ancho de banda de red
§  Cualquier recurso o servicio


6 comentarios:

  1. hola que hace , lee este comentario o que hace :v :v el pacman dominara el mundo nya nya nya kawaii de su ne , kimochi sharangue oppa

    ResponderEliminar
  2. me parece muy genial tu pagina, la información me sirvio mucho

    ResponderEliminar
  3. me parece muy genial tu pagina, la información me sirvio mucho

    ResponderEliminar
  4. Excelente información, gracias por el aporte, excelente blog...!

    ResponderEliminar