Criptografía (1)

21
República Bolivariana de Venezuela Ministerio del Poder Popular Para la Educación Universitaria, Ciencia y Tecnología Instituto Universitario de Tecnología Agro-Industrial Programa Nacional de Formación en Informática San Juan de Colón Estado Táchira Autor: TSU Morales P. José G. C.I 24779739 Profesora: Lisby Mora San Juan de Colón Mayo de 2015

Transcript of Criptografía (1)

República Bolivariana de Venezuela

Ministerio del Poder Popular Para la Educación Universitaria, Ciencia y

Tecnología

Instituto Universitario de Tecnología Agro-Industrial

Programa Nacional de Formación en Informática

San Juan de Colón Estado Táchira

Autor:

TSU Morales P. José G.

C.I 24779739

Profesora: Lisby Mora

San Juan de Colón Mayo de 2015

Criptografía

Arte de escribir con clave secreta o de un modo enigmático. Aportando una

visión más específica, la criptografía es la creación de técnicas para el cifrado de

datos.

Teniendo como objetivo conseguir la confidencialidad de los mensajes. Si la

criptografía es la creación de mecanismos para cifrar datos, el criptoanálisis son

los métodos para “romper” estos mecanismos y obtener la información.

Una vez que nuestros datos han pasado un proceso criptográfico decimos que

la información se encuentra cifrada.

Cabe destacar el uso incorrecto del termino encriptar, que proviene de una

mala traducción del inglés encrypt. La palabra encriptar no está reconocida por la

RAE y el término correcto es cifrar. La interpretación del término encriptar sería

introducir cuerpos en una cripta.

Objetivos de la Criptografía

Mantener la confidencialidad del mensaje

o La información contenida en el mensaje permanezca secreta.

Garantizar la autenticidad tanto del mensaje como del par

remitente/destinatario:

o El mensaje recibido ha de ser realmente el enviado.

o El remitente y destinatario han de ser realmente quienes dicen ser y

no remitentes y/o destinatarios fraudulentos.

Criptosistemas

Un criptosistema es el conjunto de procedimientos que garantizan la seguridad

de la información y utilizan técnicas criptográficas.

• El término en inglés es cipher.

• El elemento fundamental de un Criptosistema es la “llave”.

• En algunas referencias a la llave se le conoce como clave.

Definiciones

• A y B son emisor y receptor respectivamente.

• El mensaje original (texto en claro) es transformado mediante un procedimiento

de encripción controlado por una llave.

• El mensaje transformado (encriptado) se llama criptograma.

• Cuando se recibe B, con conocimiento de la llave, se transforma el criptograma

en el texto fuente o claro.

• La llave también es conocida como clave, encripción como cifrado y decripción

como descifrado.

Seguridad de un Criptosistema

En la práctica la seguridad que ofrece un criptosistema consiste en mostrar que

“cualquier ataque que tiene una probabilidad de romper la llave requiere de una

cantidad infinita de computación”.

Un sistema criptográfico se dice inseguro cuando los contenidos de encripción

pueden ser descifrados en un tiempo polinomial.

El cifrado simétrico

El cifrado simétrico (también conocido como cifrado de clave privada o cifrado

de clave secreta) consiste en utilizar la misma clave para el cifrado y el descifrado.

Cifrado simétrico con clave privada

El cifrado consiste en aplicar una operación (un algoritmo) a los datos que se

desea cifrar utilizando la clave privada para hacerlos ininteligibles. El algoritmo

más simple (como un OR exclusivo) puede lograr que un sistema prácticamente a

prueba de falsificaciones (asumiendo que la seguridad absoluta no existe).

Sin embargo, en la década de 1940, Claude Shannon demostró que, para tener

una seguridad completa, los sistemas de clave privada debían usar claves que

tengan, como mínimo, la misma longitud del mensaje cifrado. Además, el cifrado

simétrico requiere que se utilice un canal seguro para intercambiar la clave y esto

disminuye en gran medida la utilidad de este tipo de sistema de cifrado.

La mayor desventaja de un criptosistema de clave secreta está relacionada con

el intercambio de las claves. El cifrado simétrico se basa en el intercambio de un

secreto (las claves). Surge, entonces, el problema de la distribución de las claves:

Así, un usuario que desea comunicarse con varias personas y garantizar al

mismo tiempo niveles separados de confidencialidad debe utilizar el mismo

número de claves privadas que de personas. Para un grupo de una cantidad N de

personas que utilizan un criptosistema de clave secreta, es necesario distribuir una

cantidad de claves equivalente a N* (N-1) / 2.

En la década de 1920, Gilbert Vernam y Joseph Mauborgne desarrollaron el

método One-Time Pad (también conocido como "One-Time Password", abreviado

OTP), basado en una clave privada generada de forma aleatoria que se usa sólo

una vez y después se destruye. En el mismo período, el Kremlin y la Casa Blanca

se comunicaban a través del famoso teléfono rojo, un teléfono que cifraba las

llamadas mediante una clave privada que utilizaba el método one-time pad. La

clave privada se intercambiaba a través de valija diplomática (que cumplía el papel

de canal seguro).

Cifrado en flujo

Para algunas aplicaciones, tales como el cifrado de conversaciones telefónicas,

el cifrado en bloques es inapropiado porque los flujos de datos se producen en

tiempo real en pequeños fragmentos. Las muestras de datos pueden ser tan

pequeñas como 8 bits o incluso de 1 bit, y sería un desperdicio rellenar el resto de

los 64 bits antes de cifrar y transmitirlos.

Los cifradores de flujo son algoritmos de cifrado que pueden realizar el cifrado

incrementalmente, convirtiendo el texto en claro en texto cifrado bit a bit. Esto se

logra construyendo un generador de flujo de clave. Un flujo de clave es una

secuencia de bits de tamaño arbitrario que puede emplearse para oscurecer los

contenidos de un flujo de datos combinando el flujo de clave con el flujo de datos

mediante la función XOR. Si el flujo de clave es seguro, el flujo de datos cifrados

también lo será.

Se puede construir un generador de flujo de clave iterando una función

matemática sobre un rango de valores de entrada para producir un flujo continuo

de valores de salida. Los valores de salida se concatenan entonces para construir

bloques de texto en claro, y los bloques se cifran empleando una clave compartida

por el emisor y el receptor.

Para conservar la calidad de servicio del flujo de datos, los bloques del flujo de

clave deberían producirse con un poco de antelación sobre el momento en que

vayan a ser empleados, además el proceso que los produce no debiera exigir

demasiado esfuerzo de procesamiento como para retrasar el flujo de datos.

Criptografía asimétrica

La criptografía asimétrica (en inglés asymmetric key cryptography), también

llamada criptografía de clave pública (en inglés public key cryptography) o

criptografía de dos claves1 (en inglés two-key cryptography), es el método

criptográfico que usa un par de claves para el envío de mensajes. Las dos claves

pertenecen a la misma persona que ha enviado el mensaje. Una clave es pública y

se puede entregar a cualquier persona, la otra clave es privada y el propietario

debe guardarla de modo que nadie tenga acceso a ella. Además, los métodos

criptográficos garantizan que esa pareja de claves sólo se puede generar una vez,

de modo que se puede asumir que no es posible que dos personas hayan

obtenido casualmente la misma pareja de claves.

Si el remitente usa la clave pública del destinatario para cifrar el mensaje, una vez

cifrado, sólo la clave privada del destinatario podrá descifrar este mensaje, ya que

es el único que la conoce. Por tanto se logra la confidencialidad del envío del

mensaje, nadie salvo el destinatario puede descifrarlo.

Ejemplo de cifrado de mensaje: Ana envía un mensaje a David

1° Ana redacta un mensaje

2° Ana cifra el mensaje con la clave pública de David

3° Ana envía el mensaje cifrado a David a través de internet, ya sea por correo

electrónico, mensajería instantánea o cualquier otro medio

4° David recibe el mensaje cifrado y lo descifra con su clave privada

5° David ya puede leer el mensaje original que le mandó Ana

Si el propietario del par de claves usa su clave privada para cifrar el mensaje,

cualquiera puede descifrarlo utilizando su clave pública. En este caso se consigue

por tanto la identificación y autentificación del remitente, ya que se sabe que sólo

pudo haber sido él quien empleó su clave privada (salvo que alguien se la hubiese

podido robar). Esta idea es el fundamento de la firma electrónica.

Ejemplo de firma digital con clave asimétrica: David envía un mensaje a Ana

1° David redacta un mensaje

2° David firma digitalmente el mensaje con su clave privada

3° David envía el mensaje firmado digitalmente a Ana a través de internet, ya sea

por correo electrónico, mensajería instantánea o cualquier otro medio

4° Ana recibe el mensaje firmado digitalmente y comprueba su autenticidad

usando la clave pública de David

5° Ana ya puede leer el mensaje con total seguridad de que ha sido David el

remitente

Los sistemas de cifrado de clave pública o sistemas de cifrado asimétricos se

inventaron con el fin de evitar por completo el problema del intercambio de claves

de los sistemas de cifrado simétricos. Con las claves públicas no es necesario que

el remitente y el destinatario se pongan de acuerdo en la clave a emplear. Todo lo

que se requiere es que, antes de iniciar la comunicación secreta, el remitente

consiga una copia de la clave pública del destinatario. Es más, esa misma clave

pública puede ser usada por cualquiera que desee comunicarse con su

propietario. Por tanto, se necesitarán sólo n pares de claves por cada n personas

que deseen comunicarse entre sí.

Las dos principales ramas de la criptografía de clave pública son:

Cifrado de clave pública: un mensaje cifrado con la clave pública de un

destinatario no puede ser descifrado por nadie (incluyendo al que lo cifró), excepto

un poseedor de la clave privada correspondiente--presumiblemente, este será el

propietario de esa clave y la persona asociada con la clave pública utilizada. Se

utiliza para confidencialidad.

Firmas digitales: un mensaje firmado con la clave privada del remitente puede

ser verificado por cualquier persona que tenga acceso a la clave pública del

remitente, lo que demuestra que el remitente tenía acceso a la clave privada (y por

lo tanto, es probable que sea la persona asociada con la clave pública utilizada) y

la parte del mensaje que no se ha manipulado. Sobre la cuestión de la

autenticidad.

Una analogía con el cifrado de clave pública es la de un buzón con una ranura

de correo. La ranura de correo está expuesta y accesible al público; su ubicación

(la dirección de la calle) es, en esencia, la clave pública. Alguien que conozca la

dirección de la calle puede ir a la puerta y colocar un mensaje escrito a través de

la ranura; sin embargo, sólo la persona que posee la llave (clave privada) puede

abrir el buzón de correo y leer el mensaje.

Una analogía para firmas digitales es el sellado de un sobre con un sello

personal. El mensaje puede ser abierto por cualquier persona, pero la presencia

del sello autentifica al remitente.

La esteganografía

La esteganografía es el arte de ocultar información en algún otro elemento. No

es algo que naciera de la informática, sino que lleva acompañando al hombre

desde que éste vio necesario realizar este tipo de técnicas. Casos como el uso de

animales o esclavos para enviar información confidencial entre reinos (se cortaba

el pelo del animal/el pelo de la cabeza del esclavo, se escribía algo en la piel, y se

esperaba a que éste creciera de nuevo), o ese experimento que todos hemos

realizado de escribir algo con zumo de limón y esperar a que se seque, son

ejemplos de técnicas utilizadas en la antigüedad que entran dentro de esta

definición.

Para ello, se utilizan dos elementos, el mensaje (la información que queremos

ocultar) y el camuflaje o tapadera (el elemento que hará de tapadera), una función

estego (algún tipo de técnica para que el elemento oculto pase desapercibido

dentro del camuflaje) y quizás algún tipo de clave necesaria para descifrarla.

El camuflaje (con el mensaje oculto en su interior) viajará por un canal

previsiblemente inseguro (una página web, o el camino entre dos reinos),

pudiendo ser interceptado por algún otro receptor (llamado habitualmente

guardián). Y el objetivo es que el guardián sea incapaz de, o bien darse cuenta de

que el camuflaje tiene un mensaje oculto, o en caso de darse cuenta, que no

pueda obtener el mensaje.

Una vez que llega a su destino, el receptor objetivo aplicará la estego-función y

la estego-clave (si es que había), separando camuflaje de mensaje, y obteniendo

así la información buscada.

La esteganografía (ES) tiene por tanto una terna en cuyo equilibrio radica la

función para la que se ha desarrollado. Habitualmente, las técnicas de

esteganografía que permiten ocultar mayor información (cantidad) son menos

robustas y pasan menos desapercibidas (invisbilidad). Por contra, a mayor

robustez, normalmente menor cantidad de información oculta.

Por su idiosincrasia, obedece al principio de la negación plausible (que no haya

manera, a no ser que se conozca la estego-función y la estego-clave, de que

alguien pueda discernir que un elemento es camuflaje de un mensaje oculto, o

simplemente ese elemento tiene ruido). Esto hace de la esteganografía una

técnica muy valiosa tanto para los espías, como para activistas, militares e incluso

terrorismo, ya que juega con la ventaja de que es más o menos invisible (difícil

darse cuenta de su existencia), puede ser enviada por canales poco seguros

(como internet) y resulta muy complicado demostrar ante un juez que estamos

ante una comunicación oculta sin conocer los elementos que la forman.

Esteganografia según el medio

En documentos

El uso de esteganografía en los documentos puede funcionar con sólo añadir

un espacio en blanco y las fichas a los extremos de las líneas de un documento.

Este tipo de esteganografía es extremadamente eficaz, ya que el uso de los

espacios en blanco y tabs no es visible para el ojo humano, al menos en la

mayoría de los editores de texto, y se producen de forma natural en los

documentos, por lo que en general es muy difícil que levante sospechas.

En imágenes

Ejemplo utilizando técnica de LSB.

El método más utilizado es el LSB, puesto que para un computador un archivo

de imagen es simplemente un archivo que muestra diferentes colores e

intensidades de luz en diferentes áreas (píxeles). El formato de imagen más

apropiado para ocultar información es el BMP color de 24 bit Bitmap), debido a

que es el de mayor proporción (imagen no comprimida) y normalmente es de la

más alta calidad. Eventualmente se prefiere optar por formatos BMP de 8 bits o

bien otros tales como el GIF, por ser de menor tamaño. Se debe tener en cuenta

que el transporte de imágenes grandes por Internet puede despertar sospechas.

Cuando una imagen es de alta calidad y resolución, es más fácil y eficiente ocultar

y enmascarar la información dentro de ella.

La desventaja del método LSB es que es el más conocido y popular, por tanto el

más estudiado. Deja marcas similares a ruido blanco en el portador (imagen

contenedora), lo cual la convierte en altamente detectable o vulnerable a ataques

de estegoanálisis, para evitarlo se recurre a dispersar el mensaje, en general

usando secuencias aleatorias.

Es importante notar que si se oculta información dentro de un archivo de

imagen y este es convertido a otro formato, lo más probable es que la información

oculta dentro sea dañada y, consecuentemente, resulte irrecuperable.

En audio

Cuando se oculta información dentro de archivos de audio, por lo general la

técnica usada es low bit encoding (baja bit de codificación), que es similar a la LSB

que suele emplearse en las imágenes. El problema con el low bit encoding es que

en general es perceptible para el oído humano, por lo que es más bien un método

arriesgado que alguien lo use si están tratando de ocultar información dentro de un

archivo de audio.

Spread Spectrum también sirve para ocultar información dentro de un archivo

de audio. Funciona mediante la adición de ruidos al azar a la señal de que la

información se oculta dentro de una compañía aérea y la propagación en todo el

espectro de frecuencias.

Otro método es Echo data hiding, que usa los ecos en archivos de sonido con el

fin de tratar de ocultar la información. Simplemente añadiendo extra de sonido a

un eco dentro de un archivo de audio, la información puede ser ocultada. Lo que

este método consigue mejor que otros es que puede mejorar realmente el sonido

del audio dentro de un archivo de audio.

En vídeo

En vídeo, suele utilizarse el método DCT (Discrete Cosine Transform). DCT

funciona cambiando ligeramente cada una de las imágenes en el vídeo, sólo de

manera que no sea perceptible por el ojo humano. Para ser más precisos acerca

de cómo funciona DCT, DCT altera los valores de ciertas partes de las imágenes,

por lo general las redondea. Por ejemplo, si parte de una imagen tiene un valor de

6,667, lo aproxima hasta 7.

Esteganografía en vídeo es similar a la aplicada en las imágenes, además de

que la información está oculta en cada fotograma de vídeo. Cuando sólo una

pequeña cantidad de información que está oculta dentro del código fuente por lo

general no es perceptible a todos. Sin embargo, cuanta mayor información se

oculte, más perceptible será.

En archivos de cualquier tipo

Uno de los métodos más fáciles de implementar es el de inyección o agregado de

bytes al final del archivo. Esta técnica consiste, esencialmente, en agregar o

adosar al final de un archivo, de cualquier tipo, otro archivo que será el contenedor

del "mensaje a ocultar", también de cualquier tipo. Esta metodología es la más

versátil, pues permite usar cualquier tipo de archivo como portador (documentos,

imágenes, audio, vídeos, ejecutables, etc) y añadir al final del archivo contenedor

el "paquete enviado", que es otro archivo, también de cualquier tipo.

Esta es una técnica que no se vale de las limitaciones humanas (vista y oído)

para implementar la estrategia esteganográfica, sino que se vale de la forma de

funcionamiento de las aplicaciones software que utilizan el portador. No degradan

el contenido del portador de ninguna forma, por ejemplo, si es una imagen,

permanecerá intacta; ya que el "mensaje" se le inyecta o adosa al final de la

misma y la aplicación usada para visualizarla la mostrará normalmente hasta

donde ella finalice. Esto es debido que todo tipo de archivo, en su cabecera, entre

otros, contiene ciertos bytes fijos (en cantidad y ubicación) usados exclusivamente

para indicar el tamaño del archivo. La aplicación que utilice un archivo, de

cualquier tipo, siempre lee su cabecera primero, adquiere ese valor como su

tamaño (en cantidad de bytes) y seguidamente lee el resto del archivo hasta el

final indicado por dicho valor. De modo que si se coloca algo (mensaje) más allá

del valor de ese parámetro, no será leído por la aplicación normal, por tanto no

detectado, y el archivo portador funcionará normalmente.

Si bien es la técnica más sencilla de implementar, y de uso muy difundido, tiene

la gran desventaja que provoca crecimiento del portador, tanto como el tamaño de

su mensaje, siendo por tanto una estrategia fácilmente detectable. Un sencillo

programa de estegoanálisis lo detecta por la sola lectura de su cabecera y la

comprobación del tamaño real de archivo portador; incluso cualquier usuario

desconfiado puede muchas veces sospechar del portador por su tamaño ocupado

en disco en relación a su contenido. Otra desventaja, aunque muy relativa y

eventual, es que el crecimiento del portador podría ser limitante a la hora de

transferirlo por las redes, particularmente por Internet.

Los programas o software que utilizan esta técnica son llamados joiners,

básicamente unen dos archivos, el portador y el de mensaje, manteniendo el valor

inicial del tamaño en bytes indicado en la cabecera del primero. Esta es una

técnica no utilizada si se pretende obtener características de indetectabilidad.

Si no se requiere reunir requisitos de indetectabilidad, es uno de los métodos

preferidos por su sencillez, flexibilidad y escasas limitaciones. Prácticamente

cualquier tipo de portador es admitido, con o sin compresión, incluso módulos

ejecutables. En algunos casos provoca corrupción del portador, lo cual no es gran

problema: practicada la técnica e inyectado el mensaje se prueba el portador con

su aplicación correspondiente, si se ha degradado y/o no funciona bien,

sencillamente toma otro, del mismo u otro tipo y se repite la operación.

Otros

Una nueva técnica esteganográfica implica el inyectar retardos (conocidos por

su traducción al inglés como "delays") imperceptibles a los paquetes enviados

sobre la red desde el teclado. Los retardos en el tecleo de los comandos en

algunos usos (telnet o software de escritorio remoto) pueden significar un retardo

en paquetes, y los retardos en los paquetes se pueden utilizar para codificar datos.

Funciones de autenticación

Firma digital:

Una de las principales ventajas de la criptografía de clave pública es que ofrece

un método para el desarrollo de firmas digitales. La firma digital permite al receptor

de un mensaje verificar la autenticidad del origen de la información así como

verificar que dicha información no ha sido modificada desde su generación. De

este modo, la firma digital ofrece el soporte para la autenticación e integridad de

los datos así como para el no repudio en origen, ya que el originador de un

mensaje firmado digitalmente no puede argumentar que no lo es.

Una firma digital está destinada al mismo propósito que una manuscrita. Sin

embargo, una firma manuscrita es sencilla de falsificar mientras que la digital es

imposible mientras no se descubra la clave privada del firmante.

La firma digital se basa en la propiedad ya comentada sobre que un mensaje

cifrado utilizando la clave privada de un usuario sólo puede ser descifrado

utilizando la clave pública asociada. De tal manera, se tiene la seguridad de que el

mensaje que ha podido descifrarse utilizando la clave pública sólo pudo cifrarse

utilizando la privada. La firma digital, por tanto, es un cifrado del mensaje que se

está firmando pero utilizando la clave privada en lugar de la pública.

Sin embargo ya se ha comentado el principal inconveniente de los algoritmos

de clave pública: su lentitud que, además, crece con el tamaño del mensaje a

cifrar. Para evitar éste problema, la firma digital hace uso de funciones hash. Una

función hash es una operación que se realiza sobre un conjunto de datos de

cualquier tamaño de tal forma que se obtiene como resultado otro conjunto de

datos, en ocasiones denominado resumen de los datos originales, de tamaño fijo e

independiente el tamaño original que, además, tiene la propiedad de estar

asociado unívocamente a los datos iniciales, es decir, es prácticamente imposible

encontrar dos mensajes distintos que tengan un resumen hash idéntico.

Proceso

4. Descifra el resumen del mensaje mediante la clave pública de Ana.

5. Aplica al mensaje la función hash para obtener el resumen.

6. Compara el resumen recibido con el obtenido a partir de la función hash. Si son

iguales, Bernardo puede estar seguro de que quien ha enviado el mensaje es Ana

y que éste no ha sido modificado.

Con este sistema conseguimos:

Autenticación: la firma digital es equivalente a la firma física de un documento.

Integridad: el mensaje no podrá ser modificado.

No repudio en origen: el emisor no puede negar haber enviado el mensaje.

Certificado digital

Según puede interpretarse de los apartados anteriores, la eficacia de las

operaciones de cifrado y firma digital basadas en criptografía de clave pública sólo

está garantizada si se tiene la certeza de que la clave privada de los usuarios sólo

es conocida por dichos usuarios y que la pública puede ser dada a conocer a

todos los demás usuarios con la seguridad de que no exista confusión entre las

claves públicas de los distintos usuarios.

Para garantizar la unicidad de las claves privadas se suele recurrir a soportes

físicos tales como tarjetas inteligentes o tarjetas PCMCIA que garantizan la

imposibilidad de la duplicación de las claves. Además, las tarjetas criptográficas

suelen estar protegidas por un número personal sólo conocido por su propietario

que garantiza que, aunque se extravíe la tarjeta, nadie que no conozca dicho

número podrá hacer uso de ella.

Por otra parte, para asegurar que una determinada clave pública pertenece a

un usuario en concreto se utilizan los certificados digitales. Un certificado digital es

un documento electrónico que asocia una clave pública con la identidad de su

propietario.

Adicionalmente, además de la clave pública y la identidad de su propietario, un

certificado digital puede contener otros atributos para, por ejemplo, concretar el

ámbito de utilización de la clave pública, las fechas de inicio y fin de la validez del

certificado, etc. El usuario que haga uso del certificado podrá, gracias a los

distintos atributos que posee, conocer más detalles sobre las características del

mismo.

Técnicas de los hackers

Ed Skoudis, Girogio Maone, Caleb Sima, Chris Wysopal, Jeff Williams, Charlie

Miller, Dan Kaminsky, Steven Christey y Arian Evans forman parte de un selecto

grupo de expertos que han participado en una votación sobre cuáles han sido las

10 mejores técnicas de hacking web en el 2010.

El ranking, patrocinado por Black Hat, OWASP y White Hat Security, será

presentado en detalle en la conferencia IT-Defense 2011 que tendrá lugar en

Alemania el próximo mes, del 9 al 11 de febrero.

Hasta entonces, ya podemos ver el Top 10 elegido en la votación:

1.- Ataque criptográfico Padding Oracle: el primer puesto lo ocupa un ataque que

puede hacer peligrar incluso algunas transacciones bancarias. Si los datos

cifrados de la cookie cambian, la forma en que el framework ASP.NET maneja los

resultados en la aplicación pueden darnos información de cómo descifrar el tráfico.

Con repetidos cambios, un hacker puede deducir los posibles bytes que pueden

eliminarse de la clave de encriptación hasta facilitar así su obtención. Los

desarrolladores del hack, Juliano Rizzo y Thai Duong, han creado una herramienta

para ejecutar esta técnica.

2.- Evercookie: creado por Samy Kamkar, se trata de una API de JavaScript que

produce cookies para los navegadores que son "extremadamente persistentes".

Afecta al estándar HTML5, es muy difícil de eliminar y puede poner a disposición

de un atacante información privada de los usuarios.

3.- Hacking de autocompletar: creado por Jeremiah Grossman, es un técnica que

se aprovecha de la función autocompletar de un formulario web, pudiendo forzar al

navegador a rellenar los datos personales obteniendo los datos almacenados del

ordenador de la víctima y sin interacción del usuario.

4.- Atacando HTTPS con inyección en caché: inyectando librerías JavaScript

maliciosas en el caché del navegador, los atacantes pueden comprometer sitios

web protegidos con SSL. Esta técnica funciona hasta que el caché es limpiado.

Sus autores son Elie Bursztein, Baptiste Gourdin y Dan Boneh.

5.- Anulación de la protección CSRF con ClickJacking y parámetros HTTP

contaminados: Lavakumar Kuppan combinaba estas dos técnicas para saltar las

protecciones CSRF y engañar a los usuarios para que revelen los IDs de sus

cuentas. Usándolo, un atacante podría resetear la contraseña de la víctima y

obtener acceso a su cuenta.

6.- XSS universal en IE8: su exploit puede eludir la protección cross-site scripting

de Internet Explorer 8 y permitir que las páginas web sean procesadas de una

forma potencialmente maliciosa.

7.- HTTP POST DoS: ideado por Wong Onn Chee y Tom Brennan, consiste en

enviar primero cabeceras HTTP POST al servidor para dar a conocer los datos

que están siendo enviados, y luego transmitir los datos de una forma muy lenta

consumiendo los recursos del servidor. Cuando se envían varios

simultáneamente, los servidores pueden ser desbordados.

8.- JavaSnoop: consiste en un agente Java instalado en la máquina objetivo que

se comunica con la herramienta JavaSnoop. El objetivo es testear aplicaciones en

búsqueda de fallos de seguridad y, dependiendo se su uso, puede actuar como

una herramienta de seguridad o de hacking. Su autor es Arshan Dabirsiagh.

9.- Hack CSS del historial en Firefox sin JavaScript para Intranet Port Scanning:

Robert "RSnake" Hansen desarrolló una idea para que los CSS puedan ser

utilizados para grabar los historiales de navegación. La información obtenida

podría ser utilizada posteriormente para realizar ataques de phishing.

10.- DNS Rebinding con Applets de Java: creado por Stefano Di Paola, mediante

applets de Java es posible redireccionar el navegador hacia sitios web controlados

por el atacante, forzando al navegador a saltarse su caché DNS.