Changeset 0d95b4f in libros
- Timestamp:
- May 13, 2014, 11:54:51 AM (10 years ago)
- Branches:
- master, revisionfinal
- Children:
- afd4f50
- Parents:
- ea64a13 (diff), 342b9da (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent. - Location:
- maquetacion
- Files:
-
- 1 added
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
maquetacion/bibliografia.bib
r12c2106 r342b9da 441 441 } 442 442 443 @Article{ 443 @Article{rlsm:tor-design, 444 444 title = "Tor: The Second-Generation Onion Router", 445 445 author = "Dingledine, R., Mathewson, N., Syverson, P.", … … 451 451 452 452 453 @Article{ 453 @Article{rlsm:antnet, 454 454 title = "AntNet: Distributed Stigmergetic Control for Communications Networks", 455 455 author = "Caro, G.D., Dorigo, M.", … … 557 557 } 558 558 559 560 561 559 % Referencias adicionales del capítulo 3. 560 561 @TechReport{ico2006, 562 author = {Information Commissioner Office}, 563 title = {Data protection technical guidance note: Privacy enhancing technologies (pets)}, 564 institution = {Information Commissioner Office}, 565 year = {2006}, 566 month = {April}, 567 } 568 569 @TechReport{ONU1948, 570 author = {Organización de las Naciones Unidas}, 571 title = {Derechos humanos para todos. Declaración Universal de los Derechos humanos}, 572 institution = {Organización de las Naciones Unidas}, 573 year = {1948} 574 } 575 576 @phdthesis{george-thesis, 577 title = {Better Anonymous Communications}, 578 author = {George Danezis}, 579 school = {University of Cambridge}, 580 year = {2004}, 581 month = {July}, 582 www_tags = {selected}, 583 www_section = {Anonymous communication}, 584 www_pdf_url = {http://www.cl.cam.ac.uk/~gd216/thesis.pdf}, 585 } 586 587 @inproceedings{ISDN-mixes, 588 title = {{ISDN-mixes: Untraceable communication with very small bandwidth overhead}}, 589 author = {Andreas Pfitzmann and Birgit Pfitzmann and Michael Waidner}, 590 booktitle = {Proceedings of the GI/ITG Conference on Communication in Distributed 591 Systems}, 592 year = {1991}, 593 month = {February}, 594 pages = {451--463}, 595 www_tags = {selected}, 596 www_section = {Anonymous communication}, 597 www_ps_gz_url = {http://www.semper.org/sirene/publ/PfPW_91TelMixeGI_NTG.ps.gz}, 598 } 599 600 @inproceedings{esorics04-mauw, 601 title = {A formalization of anonymity and onion routing}, 602 author = {S. Mauw and J. Verschuren and E.P. de Vink}, 603 booktitle = {Proceedings of ESORICS 2004}, 604 year = {2004}, 605 location = {Sophia Antipolis}, 606 pages = {109--124}, 607 editor = {P. Samarati and P. Ryan and D. Gollmann and R. Molva}, 608 publisher = {LNCS 3193}, 609 www_tags = {selected}, 610 www_section = {Formal methods}, 611 www_pdf_url = {http://www.win.tue.nl/~ecss/downloads/esorics04.pdf}, 612 } 613 614 @inproceedings{onion-discex00, 615 title = {{O}nion {R}outing Access Configurations}, 616 author = {Paul Syverson and Michael Reed and David Goldschlag}, 617 booktitle = {Proceedings of the DARPA Information Survivability Conference and Exposition 618 (DISCEX 2000)}, 619 volume = {1}, 620 year = {2000}, 621 pages = {34--40}, 622 publisher = {IEEE CS Press}, 623 www_ps_gz_url = {http://www.onion-router.net/Publications/DISCEX-2000.ps.gz}, 624 www_tags = {selected}, 625 www_abstract_url = {http://www.onion-router.net/Publications.html}, 626 www_section = {Anonymous communication}, 627 www_pdf_url = {http://www.onion-router.net/Publications/DISCEX-2000.pdf}, 628 www_ps_url = {http://www.onion-router.net/Publications/DISCEX-2000.ps}, 629 } 630 631 @inproceedings{onion-routing:pet2000, 632 title = {{Towards an Analysis of Onion Routing Security}}, 633 author = {Paul Syverson and Gene Tsudik and Michael Reed and Carl Landwehr}, 634 booktitle = {Proceedings of Designing Privacy Enhancing Technologies: Workshop on Design 635 Issues in Anonymity and Unobservability}, 636 year = {2000}, 637 month = {July}, 638 pages = {96--114}, 639 editor = {H. Federrath}, 640 publisher = {Springer-Verlag, LNCS 2009}, 641 www_important = {1}, 642 www_tags = {selected}, 643 www_section = {Anonymous communication}, 644 www_ps_gz_url = {http://www.onion-router.net/Publications/WDIAU-2000.ps.gz}, 645 } 646 647 @inproceedings{danezis:pet2004, 648 title = {The Traffic Analysis of Continuous-Time Mixes}, 649 author = {George Danezis}, 650 booktitle = {Proceedings of Privacy Enhancing Technologies workshop (PET 2004)}, 651 volume = {3424}, 652 year = {2004}, 653 month = {May}, 654 pages = {35--50}, 655 series = {LNCS}, 656 www_important = {1}, 657 www_tags = {selected}, 658 www_section = {Traffic analysis}, 659 www_pdf_url = {http://www.cl.cam.ac.uk/users/gd216/cmm2.pdf}, 660 } 661 662 @inproceedings{timing-fc2004, 663 title = {Timing Attacks in Low-Latency Mix-Based Systems}, 664 author = {Brian N. Levine and Michael K. Reiter and Chenxi Wang and Matthew K. Wright}, 665 booktitle = {Proceedings of Financial Cryptography (FC '04)}, 666 year = {2004}, 667 month = {February}, 668 pages = {251--265}, 669 editor = {Ari Juels}, 670 publisher = {Springer-Verlag, LNCS 3110}, 671 www_tags = {selected}, 672 www_section = {Traffic analysis}, 673 www_pdf_url = {http://www.cs.umass.edu/~mwright/papers/levine-timing.pdf}, 674 } 675 676 @inproceedings{SS03, 677 title = {Passive Attack Analysis for Connection-Based Anonymity Systems}, 678 author = {Andrei Serjantov and Peter Sewell}, 679 booktitle = {Proceedings of ESORICS 2003}, 680 year = {2003}, 681 month = {October}, 682 www_tags = {selected}, 683 www_remarks = {An investigation of packet counting attacks (which work best on lightly loaded networks) and connection-start timing attacks.}, 684 www_ps_url = {http://www.cl.cam.ac.uk/users/aas23/papers_aas/conn_sys.ps}, 685 www_section = {Traffic analysis}, 686 } 687 688 @inproceedings{flow-correlation04, 689 title = {On Flow Correlation Attacks and Countermeasures in Mix Networks}, 690 author = {Ye Zhu and Xinwen Fu and Bryan Graham and Riccardo Bettati and Wei Zhao}, 691 booktitle = {Proceedings of Privacy Enhancing Technologies workshop (PET 2004)}, 692 volume = {3424}, 693 year = {2004}, 694 month = {May}, 695 pages = {207--225}, 696 series = {LNCS}, 697 www_tags = {selected}, 698 www_section = {Traffic analysis}, 699 www_pdf_url = {http://students.cs.tamu.edu/xinwenfu/paper/PET04.pdf}, 700 } 701 702 @inproceedings{WangCJ05, 703 title = {Tracking anonymous peer-to-peer VoIP calls on the internet}, 704 author = {Xinyuan Wang and Shiping Chen and Sushil Jajodia}, 705 booktitle = {Proceedings of the ACM Conference on Computer and Communications Security}, 706 year = {2005}, 707 month = {November}, 708 pages = {81--91}, 709 www_tags = {selected}, 710 www_section = {Anonymous communication}, 711 www_pdf_url = {http://ise.gmu.edu/~xwangc/Publications/CCS05-VoIPTracking.pdf}, 712 } 713 714 @inproceedings{e2e-traffic, 715 title = {Practical Traffic Analysis: Extending and Resisting Statistical Disclosure}, 716 author = {Nick Mathewson and Roger Dingledine}, 717 booktitle = {Proceedings of Privacy Enhancing Technologies workshop (PET 2004)}, 718 volume = {3424}, 719 year = {2004}, 720 month = {May}, 721 pages = {17--34}, 722 series = {LNCS}, 723 www_important = {1}, 724 www_tags = {selected}, 725 www_section = {Traffic analysis}, 726 www_pdf_url = {http://freehaven.net/doc/e2e-traffic/e2e-traffic.pdf}, 727 } 728 729 @inproceedings{back01, 730 title = {Traffic Analysis Attacks and Trade-Offs in Anonymity Providing Systems}, 731 author = {Adam Back and Ulf M\"oller and Anton Stiglic}, 732 booktitle = {Proceedings of Information Hiding Workshop (IH 2001)}, 733 year = {2001}, 734 month = {April}, 735 pages = {245--257}, 736 editor = {Ira S. Moskowitz}, 737 publisher = {Springer-Verlag, LNCS 2137}, 738 www_important = {1}, 739 www_tags = {selected}, 740 www_section = {Traffic analysis}, 741 www_pdf_url = {http://www.cypherspace.org/adam/pubs/traffic.pdf}, 742 } 743 744 @inproceedings{hs-attack06, 745 title = {Locating Hidden Servers}, 746 author = {Lasse {\O}verlier and Paul Syverson}, 747 booktitle = {Proceedings of the 2006 IEEE Symposium on Security and Privacy}, 748 year = {2006}, 749 month = {May}, 750 publisher = {IEEE CS}, 751 www_important = {1}, 752 www_tags = {selected}, 753 www_pdf_url = {http://www.onion-router.net/Publications/locating-hidden-servers.pdf}, 754 www_remarks = {Motivates and describes Tor's entry guard design.}, 755 www_section = {Traffic analysis}, 756 } -
maquetacion/capitulo3/capitulo3.tex
r9c88d1e r342b9da 23 23 \section{Técnicas para proporcionar privacidad} 24 24 25 Tal como se menciona en [50]las personas en general utilizan Internet para poder comunicarse, para el envío de correo electrónico, para la investigación en diversas áreas de interés, para la interacción con distintos organizamos públicos y/o privados, etc. Al mismo tiempo, gran cantidad de estos organismos públicos y privados en distintas regiones del planeta buscan maximizar la interacción electrónica en todos los niveles entre los usuarios y sus centros tecnológicos, intercambiando información a través del uso de bases de datos controladas por ellos mismos, buscando utilizar el poder de la informática para tener el control de la información concerniente a innumerables aspectos relacionados a los individuos, tales como las preferencias en sus consumos diarios, la interacción con su alrededor, sus estilos de vida, sus opiniones, sus preferencias, y todo esto en niveles que en gran medida son desconocidos por los mismos usuarios. En respuesta a lo anterior, y procurando minimizar este tipo de control, se han26 propuestos diferentes mecanismos y sistemas que buscan reforzar o mejorar la privacidad (Privacy Enhancing Technologies) del individuo (visto en un contexto amplio, es decir, pudiéndose considerar como individuo a un conjunto de personas, e incluso a organizaciones completas). Este tipo de tecnologías pueden asistir a los organismos en su cumplimiento de los principios de protección de la privacidad establecido en los derechos humanos [25], dándole a los usuarios mayor poder para controlar su información, pudiendo éstos decidir cómo y cuándo puede ser utilizada por terceras partes. Existen sistemas tales como los navegadores web anónimos y servicios especiales de correo electrónico que le permiten comunicarse sin necesidad de revelar su verdadera identidad. Los sistemas para el manejo de la identidad potencialmente le permiten a los individuos acceder a los servicios y recursos sin tener que proveer información sobre ellos. Esto implica involucrar a una o varias organizaciones sobre las cuales se deba tener25 Tal como se menciona en \cite{ico2006} las personas en general utilizan Internet para poder comunicarse, para el envío de correo electrónico, para la investigación en diversas áreas de interés, para la interacción con distintos organizamos públicos y/o privados, etc. Al mismo tiempo, gran cantidad de estos organismos públicos y privados en distintas regiones del planeta buscan maximizar la interacción electrónica en todos los niveles entre los usuarios y sus centros tecnológicos, intercambiando información a través del uso de bases de datos controladas por ellos mismos, buscando utilizar el poder de la informática para tener el control de la información concerniente a innumerables aspectos relacionados a los individuos, tales como las preferencias en sus consumos diarios, la interacción con su alrededor, sus estilos de vida, sus opiniones, sus preferencias, y todo esto en niveles que en gran medida son desconocidos por los mismos usuarios. En respuesta a lo anterior, y procurando minimizar este tipo de control, se han 26 propuestos diferentes mecanismos y sistemas que buscan reforzar o mejorar la privacidad (Privacy Enhancing Technologies) del individuo (visto en un contexto amplio, es decir, pudiéndose considerar como individuo a un conjunto de personas, e incluso a organizaciones completas). Este tipo de tecnologías pueden asistir a los organismos en su cumplimiento de los principios de protección de la privacidad establecido en los derechos humanos \cite{ONU1948}, dándole a los usuarios mayor poder para controlar su información, pudiendo éstos decidir cómo y cuándo puede ser utilizada por terceras partes. Existen sistemas tales como los navegadores web anónimos y servicios especiales de correo electrónico que le permiten comunicarse sin necesidad de revelar su verdadera identidad. Los sistemas para el manejo de la identidad potencialmente le permiten a los individuos acceder a los servicios y recursos sin tener que proveer información sobre ellos. Esto implica involucrar a una o varias organizaciones sobre las cuales se deba tener 27 27 cierto grado de "confianza", y que puedan verificar la identidad de los usuarios, y además puedan generar cierto tipo de certificación electrónica que no contenga información sobre la identidad, pero que permita acceder a los recursos y servicios ofrecidos por terceras partes. 28 28 … … 38 38 \subsection{Anonimato} 39 39 40 Para establecer un concepto simple de Anonimato es conveniente utilizar la configuración de un sistema general de comunicación tradicionalmente compuesto por un emisor, un receptor, quienes utilizan una red de comunicación para transmitir un mensaje. En la figura 2.1 se muestra el diagrama general de este modelo. 41 42 43 Figura 2.1: Configuración del Sistema General. 40 Para establecer un concepto simple de Anonimato es conveniente utilizar la configuración de un sistema general de comunicación tradicionalmente compuesto por un emisor, un receptor, quienes utilizan una red de comunicación para transmitir un mensaje. En la figura \ref{figura1} se muestra el diagrama general de este modelo. 41 42 \begin{figure} 43 \includegraphics[scale=0.3]{./img/cap3_img2.png} 44 \caption{Configuración del Sistema General} 45 \label{figura1} 46 \end{figure} 47 44 48 45 49 Este sistema está delimitado por los componentes antes mencionados, por lo cual los involucrados que se encuentren fuera de esta delimitación, en cada uno de los casos que se describen se consideran participantes externos. … … 53 57 Con respecto a las entidades que podrían generar una acción, el conjunto anónimo se conforma por los sujetos que pueden generar una acción en un instante de tiempo específico; desde el punto de vista de las direcciones o ubicaciones de las entidades, el conjunto anónimo está conformado por los sujetos que pueden estar relacionados a una ubicación o dirección. Lo anterior quiere decir que el anonimato se podría clasificar según las entidades involucradas o según la ubicación de las mismas. 54 58 55 De esta forma, para permitir el anonimato de un sujeto siempre tiene que existir un conjunto apropiado de sujetos que posean potencialmente los mismos atributos. Ser los emisores y los receptores de mensajes particulares son ejemplos de estos atributos. Un emisor de un mensaje puede ser anónimo sólo si constituye parte de un conjunto de emisores potenciales (con atributos similares), el cual es su conjunto anónimo, y puede ser un subconjunto de todos los sujetos a nivel global quienes pueden enviar un mensaje en un tiempo específico. Lo mismo aplica para los receptores de mensajes. Este esquema se representa en la figura 2.2. El conjunto anónimo es relativo al tiempo, es decir, puede variar según los cambios que se den en el sistema.59 De esta forma, para permitir el anonimato de un sujeto siempre tiene que existir un conjunto apropiado de sujetos que posean potencialmente los mismos atributos. Ser los emisores y los receptores de mensajes particulares son ejemplos de estos atributos. Un emisor de un mensaje puede ser anónimo sólo si constituye parte de un conjunto de emisores potenciales (con atributos similares), el cual es su conjunto anónimo, y puede ser un subconjunto de todos los sujetos a nivel global quienes pueden enviar un mensaje en un tiempo específico. Lo mismo aplica para los receptores de mensajes. Este esquema se representa en la figura \ref{figura2}. El conjunto anónimo es relativo al tiempo, es decir, puede variar según los cambios que se den en el sistema. 56 60 57 61 Con lo anterior se especifica que existe un conjunto anónimo para el emisor de un mensaje, existe otro conjunto anónimo para el receptor de ese mensaje, y estos conjuntos puedes ser disjuntos, pueden solaparse o pueden ser el mismo conjunto. 58 62 59 Figura 2.2: Conjuntos Anónimos. 63 \begin{figure} 64 \includegraphics[scale=0.3]{./img/cap3_img1.png} 65 \caption{Conjuntos Anónimos} 66 \label{figura2} 67 \end{figure} 60 68 61 69 Por otro lado el anonimato además de estar relacionado al conjunto anónimo y al tiempo en el que se está ejecutando la acción, también tiene relación al contexto donde se aplica, es decir, un sujeto puede ser anónimo en relación al contexto envío y recepción de correos electrónicos, pero puede no serlo en ese mismo instante de tiempo para el contexto interacción con una base de datos. Esto se debe a que según el contexto de estudio pueden existir distintos atributos que caractericen al conjunto anónimo, y por ende al anonimato del sujeto. … … 67 75 \subsubsection{Técnicas de Anonimato} 68 76 69 Tal como se mencionó en el apartado anterior el anonimato de un sujeto es el estado de no ser identificable dentro de un conjunto de sujetos, denominado el conjunto anónimo. También se ha mencionado, ver [1], que el emisor de un mensaje puede ser anónimo sólo dentro de un conjunto de potenciales emisores, lo que correspondería al conjunto anónimo del emisor, el cual a su vez puede ser un subconjunto de todos los sujetos a nivel mundial quienes podrían enviar mensajes en determinados instantes de tiempo. Este tipo de anonimato es llamado anonimato del emisor. Lo mimo ocurre para el receptor, quien puede ser anónimo sólo dentro de un conjunto de receptores posibles, llamado el conjunto anónimo del receptor, y a este tipo de anonimato es llamado anonimato del receptor. Además hay un tercer tipo de a 70 anonimato, el de relación, el cual consiste en tener la propiedad de no poder relacionar quién se comunica con quién. La no relacionabilidad significa que dentro del sistema las distintas entidades, aquí denominadas ítems de interés o IDI (mensajes, emisores, receptores, etc.) no están ni más ni menos relacionadas con respecto a la información que se tenía antes de que el adversario ejecute un ataque (información a priori). En otras palabras, el anonimato del emisor/receptor puede o ser definido como las propiedades de que un mensaje particular no sea relacionado a cualquier emisor/receptor, y que cualquier mensaje no sea relacionado a un emisor/receptor en particular, entonces el anonimato de relación es la propiedad de no poder relacionar o determinar quién se comunica con quién. 77 Tal como se mencionó en el apartado anterior el anonimato de un sujeto es el estado de no ser identificable dentro de un conjunto de sujetos, denominado el conjunto anónimo. También se ha mencionado, ver \cite{rlsm:terminology}, que el emisor de un mensaje puede ser anónimo sólo dentro de un conjunto de potenciales emisores, lo que correspondería al conjunto anónimo del emisor, el cual a su vez puede ser un subconjunto de todos los sujetos a nivel mundial quienes podrían enviar mensajes en determinados instantes de tiempo. Este tipo de anonimato es llamado anonimato del emisor. Lo mimo ocurre para el receptor, quien puede ser anónimo sólo dentro de un conjunto de receptores posibles, llamado el conjunto anónimo del receptor, y a este tipo de anonimato es llamado anonimato del receptor. Además hay un tercer tipo de a anonimato, el de relación, el cual consiste en tener la propiedad de no poder relacionar quién se comunica con quién. La no relacionabilidad significa que dentro del sistema las distintas entidades, aquí denominadas ítems de interés o IDI (mensajes, emisores, receptores, etc.) no están ni más ni menos relacionadas con respecto a la información que se tenía antes de que el adversario ejecute un ataque (información a priori). En otras palabras, el anonimato del emisor/receptor puede o ser definido como las propiedades de que un mensaje particular no sea relacionado a cualquier emisor/receptor, y que cualquier mensaje no sea relacionado a un emisor/receptor en particular, entonces el anonimato de relación es la propiedad de no poder relacionar o determinar quién se comunica con quién. 71 78 72 79 El anonimato se fortalece mientras más grande sea su conjunto anónimo, y mientras más uniforme sea la distribución de probabilidad de la ejecución de las acciones por parte de los sujetos dentro del conjunto, es decir, el nivel de anonimato no sólo depende del tamaño del conjunto sino también de la probabilidad de que un sujeto en particular pueda generar cierta acción. De esta forma se puede definir el entorno de acción que acota las técnicas de anonimato para las comunicaciones: Colectar un conjunto apropiado de usuarios para que un usuario en particular pueda ser anónimo cuando se comunica con los demás. … … 86 93 \paragraph{Redes de mezcla} 87 94 88 Esta idea se describe en [12]. El método utiliza criptografía de clave pública y fue diseñado para que los sistemas de envío de correo electrónico proveyeran anonimato del emisor, del receptor y de relación sin necesitar un servicio de confianza central (por ejemplo una autoridad certificadora). En general, los mezcladores o Mixes pueden ser entendidos como una cadena de proxies95 Esta idea se describe en \cite{rlsm:chaum-mix}. El método utiliza criptografía de clave pública y fue diseñado para que los sistemas de envío de correo electrónico proveyeran anonimato del emisor, del receptor y de relación sin necesitar un servicio de confianza central (por ejemplo una autoridad certificadora). En general, los mezcladores o Mixes pueden ser entendidos como una cadena de proxies 89 96 seguidos uno detrás del otro. Se considera que el atacante puede observar todas las comunicaciones y puede controlar todos los mixes a excepción de uno. 90 97 91 98 Topología Mix: Este concepto funciona aun cuando se dispone de un solo mix. Pero en este caso el usuario debe confiar en este mix. Típicamente hay más de un mix en la red organizados en forma de cadena. Existen diferente métodos para organizar la cooperación dentro de la red. Uno de ellos puede ser que cada mix existe independientemente en la red y los participantes libremente deciden a través de cuál de ellos enrutarán sus mensajes. Así cada nodo puede comunicarse con el resto conformando lo que se denomina una topología de red mix o red de mezcla. 92 99 93 Otra posibilidad es utilizar una cadena de mixes predefinida. A esta cadena se le denomina mix en cascada. Además de los dos extremos antes mencionados, se pueden utilizar variaciones que resulten en diseños híbridos. Un análisis y comparación de ambas ideas se presenta en [17, 9].100 Otra posibilidad es utilizar una cadena de mixes predefinida. A esta cadena se le denomina mix en cascada. Además de los dos extremos antes mencionados, se pueden utilizar variaciones que resulten en diseños híbridos. Un análisis y comparación de ambas ideas se presenta en \cite{rlsm:berthold,george-thesis}. 94 101 95 102 En una red mix, el usuario puede decidir con cuáles mixes desea interactuar, proveyendo de esta manera un buen nivel de escalabilidad y flexibilidad. Además, debido a que los usuarios escogen aleatoriamente los mixes, un atacante no podrá determinar cuáles de ellos debería controlar para poder observar un mensaje enviado, para esto debería controlar gran parte de la red. … … 97 104 Por otro lado, un atacante sabe con exactitud cuáles mixes debe controlar en una red en cascada (mix en cascada). Este diseño es vulnerable a los ataques de denegación de servicio, ya que al detener un solo mix en la red, lograr detener todo el sistema. 98 105 99 Por otro lado en [9]exponen que la red mix (pero no la red en cascada) es vulnerable a ciertos tipos de atacantes con altos niveles de control, es decir, que controlan a todos los mixes a excepción de uno. Mencionan que este tipo de red es vulnerable a los ataques $n-1$. Otra desventaja es que algunos mixes puede que no sean casi utilizados (se subutilizan) y otros se sobrecarguen. Los objetivos de protección que se logran son el de anonimato del emisor, y el de relación.106 Por otro lado en \cite{rlsm:berthold} exponen que la red mix (pero no la red en cascada) es vulnerable a ciertos tipos de atacantes con altos niveles de control, es decir, que controlan a todos los mixes a excepción de uno. Mencionan que este tipo de red es vulnerable a los ataques $n-1$. Otra desventaja es que algunos mixes puede que no sean casi utilizados (se subutilizan) y otros se sobrecarguen. Los objetivos de protección que se logran son el de anonimato del emisor, y el de relación. 100 107 101 108 Provee protección contra atacantes que pueden observar toda la red y que pueden controlar muchos mixes. Es susceptible a ataques de denegación de servicio y ataques $n-1$. Desde el punto de vista de la confianza, se debe confiar en al menos un mix de la ruta seleccionada. 102 109 103 Funcionalidad Básica: En este enfoque los usuarios o clientes no envían sus solicitudes directamente al servidor (o a otro destino), sino que las envía a nodos (enrutadores) intermedios denominados mix. Para poder ocultar la comunicación de los participantes, los mixes no envían instantáneamente los mensajes que reciben, en vez de esto, los mixes almacenan varios mensajes de diferentes clientes por un tiempo definido, los transforman, y luego si los reenvían simultáneamente a los servidores de destino o a otros mixes en la red. Un observador que puede ver todos los mensajes entrantes y salientes de un mismo mix no podrá determinar cuáles mensajes de entrada corresponden a cuáles mensajes de salida. Los fundamentos que consolidan la seguridad de los mixes se muestran en la figura 2.12 104 105 Figura 2.12: Fundamentos que sustentan las redes mix. 110 Funcionalidad Básica: En este enfoque los usuarios o clientes no envían sus solicitudes directamente al servidor (o a otro destino), sino que las envía a nodos (enrutadores) intermedios denominados mix. Para poder ocultar la comunicación de los participantes, los mixes no envían instantáneamente los mensajes que reciben, en vez de esto, los mixes almacenan varios mensajes de diferentes clientes por un tiempo definido, los transforman, y luego si los reenvían simultáneamente a los servidores de destino o a otros mixes en la red. Un observador que puede ver todos los mensajes entrantes y salientes de un mismo mix no podrá determinar cuáles mensajes de entrada corresponden a cuáles mensajes de salida. 106 111 107 112 Preprocesamiento: Transformación de los mensajes 108 113 109 El objetivo principal de la transformación de los mensajes es evitar que un atacante pueda trazar (descubrir su recorrido) un mensaje a través de la comparación de los patrones de bits correspondientes a los mensajes que entran y salen de un mix. Para poder enviar un mensaje, el cliente primero lo debe preparar. Para esto, el primer paso que debe dar es escoger el camino por el cual se transmitirá el mensaje, este camino estará compuesto por los mixes que haya escogido, y debe incluir el orden específico de reenvíos antes de que llegue a su destino final. Para mejorar la seguridad del sistema, se recomienda utilizar más de un mix en cada camino. El siguiente paso, es utilizar las claves públicas de los mixes escogidos para cifrar el mensaje, en el orden inverso en el que fueron escogidos, es decir, el mensaje se cifra primero con la clave pública del ultimo mix, luego con la del penúltimo, y así hasta cifrar por ultima vez con la clave pública del primer mix en el camino seleccionado. Cada vez que se cifra 110 se construye una capa, y se incluye la dirección del siguiente nodo (ya sea el destino final u otro mix). Así cuando el primer mix obtiene el mensaje preparado, lo descifra con su clave privada, y obtiene la dirección del siguiente nodo al que debe reenviarle el resto del contenido que quedó después de su descifrado. 114 El objetivo principal de la transformación de los mensajes es evitar que un atacante pueda trazar (descubrir su recorrido) un mensaje a través de la comparación de los patrones de bits correspondientes a los mensajes que entran y salen de un mix. Para poder enviar un mensaje, el cliente primero lo debe preparar. Para esto, el primer paso que debe dar es escoger el camino por el cual se transmitirá el mensaje, este camino estará compuesto por los mixes que haya escogido, y debe incluir el orden específico de reenvíos antes de que llegue a su destino final. Para mejorar la seguridad del sistema, se recomienda utilizar más de un mix en cada camino. El siguiente paso, es utilizar las claves públicas de los mixes escogidos para cifrar el mensaje, en el orden inverso en el que fueron escogidos, es decir, el mensaje se cifra primero con la clave pública del ultimo mix, luego con la del penúltimo, y así hasta cifrar por ultima vez con la clave pública del primer mix en el camino seleccionado. Cada vez que se cifra se construye una capa, y se incluye la dirección del siguiente nodo (ya sea el destino final u otro mix). Así cuando el primer mix obtiene el mensaje preparado, lo descifra con su clave privada, y obtiene la dirección del siguiente nodo al que debe reenviarle el resto del contenido que quedó después de su descifrado. 111 115 112 116 Este esquema puede ser descrito de la siguiente manera: … … 125 129 Reordenamiento: Mezclas por grupos (pool) o mezclas por cantidad (batch): Cuando un mix opera en modo "por cantidad" o "batch", éste recolecta un número fijo $n$ de mensajes, cifrándolos y reordenándolos antes de reenviarlos a todos en un solo envío. En contraste, un mix que opera en modo “por grupos” o “pool” tiene siempre un número $n$ de mensajes almacenados en su memoria temporal o “buffer” denominado “pool”. Si un nuevo mensaje llega al mix, entonces se escoge aleatoriamente y se reenvía uno de los mensajes almacenados. El número $n$ representa al tamaño del “pool”. 126 130 127 Prueba de reenvío: Uno de los tipos de ataques más frecuentes es el denominado ataque de reenvíos. Un atacante podrá copiar un mensaje que desea monitorear y enviarle una o varias copias de éste al mix. Estas copias del mensaje podrían tomar el mismo camino en la red que el mensaje original, dado que los algoritmos de envío y descifrado trabajan determinísticamente. Así puede ser encontrado un patrón característico del mensaje sólo con observar la red. Con el fin de evitar este tipo de ataque, las copias de los mensajes deben ser identificadas y eliminadas a través de un filtro. Una posibilidad para identificar los mensajes inválidos es a través del uso de estampas de tiempo. Cuando un mix obtiene un mensaje, también obtiene una etiqueta que le informa la franja de tiempo durante la cual el mensaje es válido. Si el mensaje llega muy tarde (después de lo que la franja de tiempo le indica), el mix niega el reenvío del mensaje. Otra posibilidad es que el mix almacene una copia de los mensajes que ya haya 128 enviado, y así los los mensajes nuevos que lleguen pueden ser comparados con esta base de datos. Por razones de seguridad y rendimiento, es conveniente restringir el tamaño de esta base de datos. Los mensajes deberían ser almacenados por un corto período de tiempo antes de que se borren. 129 130 Tráfico de relleno o dummy: Aun cuando ninguna información está siendo transmitida, es posible enviar información falsa en la red. Esto tendría el mismo efecto de no enviar ningún mensaje, pero un observador (atacante) no podría distinguir entre los mensajes reales de los que se envían como relleno. El envío de este tipo de mensajes de relleno es denominado tráfico dummy. Con respecto a la idea de los mixes, un mix podrá aleatoriamente enviar tráfico dummy a otro en la red. Este mecanismo también beneficiaría a los mix que trabajan en el modo batch, ya que normalmente estos mixes tienen que esperar hasta que un número predefinido de mensajes hayan llegado antes de que todos los mensajes sean reenviados simultáneamente, y evitaría los posibles retrasos que podrían ocurrir cuando no hayan envíos suficientes de mensajes al mix, y éste puede hacer su respectivo reenvío es decir, el tráfico dummy evitaría estos retrasos, ya que si no hay suficientes mensajes reales enviados, el número de mensajes necesarios para 131 hacer el reenvío se pudiese alcanzar con los mensajes de relleno. 131 Prueba de reenvío: Uno de los tipos de ataques más frecuentes es el denominado ataque de reenvíos. Un atacante podrá copiar un mensaje que desea monitorear y enviarle una o varias copias de éste al mix. Estas copias del mensaje podrían tomar el mismo camino en la red que el mensaje original, dado que los algoritmos de envío y descifrado trabajan determinísticamente. Así puede ser encontrado un patrón característico del mensaje sólo con observar la red. Con el fin de evitar este tipo de ataque, las copias de los mensajes deben ser identificadas y eliminadas a través de un filtro. Una posibilidad para identificar los mensajes inválidos es a través del uso de estampas de tiempo. Cuando un mix obtiene un mensaje, también obtiene una etiqueta que le informa la franja de tiempo durante la cual el mensaje es válido. Si el mensaje llega muy tarde (después de lo que la franja de tiempo le indica), el mix niega el reenvío del mensaje. Otra posibilidad es que el mix almacene una copia de los mensajes que ya haya enviado, y así los los mensajes nuevos que lleguen pueden ser comparados con esta base de datos. Por razones de seguridad y rendimiento, es conveniente restringir el tamaño de esta base de datos. Los mensajes deberían ser almacenados por un corto período de tiempo antes de que se borren. 132 133 Tráfico de relleno o dummy: Aun cuando ninguna información está siendo transmitida, es posible enviar información falsa en la red. Esto tendría el mismo efecto de no enviar ningún mensaje, pero un observador (atacante) no podría distinguir entre los mensajes reales de los que se envían como relleno. El envío de este tipo de mensajes de relleno es denominado tráfico dummy. Con respecto a la idea de los mixes, un mix podrá aleatoriamente enviar tráfico dummy a otro en la red. Este mecanismo también beneficiaría a los mix que trabajan en el modo batch, ya que normalmente estos mixes tienen que esperar hasta que un número predefinido de mensajes hayan llegado antes de que todos los mensajes sean reenviados simultáneamente, y evitaría los posibles retrasos que podrían ocurrir cuando no hayan envíos suficientes de mensajes al mix, y éste puede hacer su respectivo reenvío es decir, el tráfico dummy evitaría estos retrasos, ya que si no hay suficientes mensajes reales enviados, el número de mensajes necesarios para hacer el reenvío se pudiese alcanzar con los mensajes de relleno. 132 134 133 135 Anonimato del receptor (Direcciones de retorno no trazables): El hecho de permitir que un receptor pueda permanecer anónimo se le caracteriza por tener una dirección de retorno que no pueda ser registrada o trazada por un atacante. Esta dirección de retorno es un … … 136 138 codificación del mensaje cambia en cada uno de los mixes (debido al cifrado), el emisor no puede trazar el mensaje hacia el receptor. 137 139 138 Este esquema se explica de la siguiente forma: $A_1,...,A_m$ pueden ser la secuencia de las direcciones y $c_1,...,c_m$ pueden ser la secuencia de las claves públicas conocidas de la secuencia de mixes $Mix_1,...,Mix_m$ escogida por el receptor, donde $c_m$ puede ser una clave secreta de un sistema de cifrado simétrico. El mensaje añadido a la dirección de retorno pasará por estos mixes en orden ascendiente dependiendo de sus índices. $A_{m+1}$ puede ser la dirección del receptor llamado $Mix_{m+1}$. De forma similar, al emisor se le llama $Mix_0$. El receptor crea una dirección de retorno no trazable ($k_0,A_1,R_1$) donde $k_0$ es una clave de un sistema de cifrado simétrico generada para este propósito. $Mix_0$ se supone que utiliza esta clave para codificar el contenido del mensaje con el fin de garantizar que el $Mix_1$ no sea capaz de leer este mensaje. $R_1$ es parte de la dirección de retorno, la cual se transmite a través del $Mix_0$ y contiene el mensaje generado y que ha sido cifrado utilizando $k_ 139 0$. $R_1$ inicialmente se crea escogiendo aleatoriamente un único nombre de la dirección de retorno en un esquema recursivo como el que se muestra a continuación: 140 Este esquema se explica de la siguiente forma: $A_1,...,A_m$ pueden ser la secuencia de las direcciones y $c_1,...,c_m$ pueden ser la secuencia de las claves públicas conocidas de la secuencia de mixes $Mix_1,...,Mix_m$ escogida por el receptor, donde $c_m$ puede ser una clave secreta de un sistema de cifrado simétrico. El mensaje añadido a la dirección de retorno pasará por estos mixes en orden ascendiente dependiendo de sus índices. $A_{m+1}$ puede ser la dirección del receptor llamado $Mix_{m+1}$. De forma similar, al emisor se le llama $Mix_0$. El receptor crea una dirección de retorno no trazable ($k_0,A_1,R_1$) donde $k_0$ es una clave de un sistema de cifrado simétrico generada para este propósito. $Mix_0$ se supone que utiliza esta clave para codificar el contenido del mensaje con el fin de garantizar que el $Mix_1$ no sea capaz de leer este mensaje. $R_1$ es parte de la dirección de retorno, la cual se transmite a través del $Mix_0$ y contiene el mensaje generado y que ha sido cifrado utilizando $k_0$. $R_1$ inicialmente se crea escogiendo aleatoriamente un único nombre de la dirección de retorno en un esquema recursivo como el que se muestra a continuación: 140 141 141 142 \begin{itemize} … … 174 175 mismo, por ejemplo, el mix $Mix_1$ envía la cadena $k1(...km (N )...)$ codificada. Dado que el receptor conoce todas la claves públicas $k_i$, tiene la disponibilidad de descifrar $N$. Esto le permite al receptor recibir los mensajes anónimamente mientras que el emisor no es anónimo. 175 176 176 Para alcanzar ambos niveles de anonimato, en [54]sugieren la creación de canales Mix como enlaces de los canales de envío y recepción. El emisor establece un canal de envío que finaliza en el mix $Mix_m$ y el receptor establece un canal de recepción que inicia en el $Mix_m$. El mix $Mix_m$ traspasa las cadenas de información que llegan por el canal de envío hacia el canal de recepción. Los canales que están supuestamente enlazados, se etiquetan con una marca común que se recibe consistentemente en ambos canales que establecen los mensajes asociados al mix $Mix_m$. Los datos transferidos están coordinados con un mensaje de entrada al mix cifrado asimétricamente, el cual contiene la información del mix que conecta a los dos canales, y el usuario emisor del mensaje de entrada al mix actúa como un emisor o un receptor. Cada mix en la cadena puede descifrar este mensaje de entrada al mix y en el último paso, el texto plano se difunde a todos los suscriptores. Ahora, los canales pueden ser establecidos utilizando177 Para alcanzar ambos niveles de anonimato, en \cite{ISDN-mixes} sugieren la creación de canales Mix como enlaces de los canales de envío y recepción. El emisor establece un canal de envío que finaliza en el mix $Mix_m$ y el receptor establece un canal de recepción que inicia en el $Mix_m$. El mix $Mix_m$ traspasa las cadenas de información que llegan por el canal de envío hacia el canal de recepción. Los canales que están supuestamente enlazados, se etiquetan con una marca común que se recibe consistentemente en ambos canales que establecen los mensajes asociados al mix $Mix_m$. Los datos transferidos están coordinados con un mensaje de entrada al mix cifrado asimétricamente, el cual contiene la información del mix que conecta a los dos canales, y el usuario emisor del mensaje de entrada al mix actúa como un emisor o un receptor. Cada mix en la cadena puede descifrar este mensaje de entrada al mix y en el último paso, el texto plano se difunde a todos los suscriptores. Ahora, los canales pueden ser establecidos utilizando 177 178 los mensajes de establecimiento de ambos participantes. Estos escogen los mixes por el canal de transferencias de datos del mix $Mix_m$ y los mantienen en secreto. Así todos conocen sólo la mitad del camino y el mix $Mix_m$ reenvía los mensajes entrantes del canal de envío del mix al canal de recepción del mix. Cada emisor/receptor debe tener el mismo número de canales de envío/recepción, porque de lo contrario serían observables, por tal razón convendrá utilizar canales “dummy”. 178 179 … … 180 181 \paragraph{Enrutamiento cebolla} 181 182 182 Este mecanismo fue propuesto y estudiado en [46, 67, 68]. Es equivalente a una red de mixes, pero en el contexto de enrutamiento basado en circuitos. En vez de enrutar cada paquete separadamente, el primer mensaje lo que hace es abrir un circuito, etiquetando una ruta. Cada mensaje que tiene una etiqueta en particular se enruta por un camino predeterminado. Finalmente, un mensaje se envía para que cierre o clausure un camino. Con frecuencia se hace referencia a flujo anónimo como la información que viaja por estos circuitos. Su objetivo es dificultarle la tarea al análisis de tráfico, uno de los tipos de ataques más conocidos. Este sistema procura proteger la no relacionabilidad de dos participantes que se comunican a través de terceras partes, y procura proteger la identidad de las partes comunicantes. En vista de que las redes ISDN son difíciles de implementar en Internet, lo que procuró el enrutamiento cebolla es adaptar183 Este mecanismo fue propuesto y estudiado en \cite{esorics04-mauw, onion-discex00, onion-routing:pet2000}. Es equivalente a una red de mixes, pero en el contexto de enrutamiento basado en circuitos. En vez de enrutar cada paquete separadamente, el primer mensaje lo que hace es abrir un circuito, etiquetando una ruta. Cada mensaje que tiene una etiqueta en particular se enruta por un camino predeterminado. Finalmente, un mensaje se envía para que cierre o clausure un camino. Con frecuencia se hace referencia a flujo anónimo como la información que viaja por estos circuitos. Su objetivo es dificultarle la tarea al análisis de tráfico, uno de los tipos de ataques más conocidos. Este sistema procura proteger la no relacionabilidad de dos participantes que se comunican a través de terceras partes, y procura proteger la identidad de las partes comunicantes. En vista de que las redes ISDN son difíciles de implementar en Internet, lo que procuró el enrutamiento cebolla es adaptar 183 184 esta idea distribuyendo la red anónima y adaptándola para que se ejecute en el tope del modelo TCP/IP. El primer mensaje enviado en la red se cifra en capas, que pueden ser descifradas en una cadena de enrutadores cebolla (onion routers, OR) los cuales utilizan sus respectivas claves privadas. 184 185 … … 193 194 Tor: la segunda generación de OR 194 195 195 El proyecto OR fue retomado en el año 2004, con el diseño e implementación de lo que se denominó la “segunda generación del onion router” o TOR, por sus siglas en inglés, la propuesta se muestra en [31]. Su política es la del reenvío de flujo TCP sobre una red de reenvíos, y junto con la ayuda de otra herramienta, el Privoxy (http://www.privoxy.org), está especialmente diseñada para el tráfico web.196 197 Este sistema utiliza una arquitectura de red tradicional: una lista de servidores voluntarios se obtiene desde un servicio de directorio ofrecido por otro(s) servidor(es). De esta forma, los clientes crean caminos utilizando al menos tres nodos intermedios escogidos de forma aleatoria dentro de la lista, y sobre los cuales se hace la comunicación de la información. A diferencia de la arquitectura anterior, donde se enviaba y distribuía el material criptográfico, TOR utiliza un mecanismo interactivo: el cliente se conecta con el primer nodo, y le solicita a éste que se conecte con el segundo nodo, de esta forma un canal bidireccional se utiliza en cada paso para desarrollar un intercambio de claves autenticado DF (Diffie-Hellman). Este garantiza el reenvío en forma secreta y la resistencia a la compulsión, debido principalmente a que solo son necesarias claves de corta duración. Este mecanismo fue inicialmente propuesto en Cebolla (ver [10]), y no está cubierto en la patente de OR (ver [67]).198 199 Otra notable diferencia entre TOR y los intentos anteriores por anonimizar el tráfico de flujo, es que TOR no ofrece seguridad contra los atacantes que pueden observar la red entera, es decir, contra atacantes pasivos globales. Un conjunto de técnicas de Análisis de Tráfico (ver [18, 42, 61, 73, 69]) han sido desarrolladas a través de los años para trazar el flujo de tráfico continuo viajando por redes de baja latencia como TOR. En estos estudios se ha demostrado que este tipo de ataques son muy difícil de contrarrestar, a menos que se utilicen técnicas que implicarían latencias elevadas, o que requieran la inyección de grandes cantidades de tráfico cubierto (tráfico inservible o “dummy”), los cuales representan soluciones muy costosas. Por esta razón en TOR se opta por obtener un nivel de seguridad que se pueda alcanzar en un sistema altamente utilizable y muy económico de utilizar (ver [3, 45]). Como resultado si un adversario puede observar el flujo entre dos puntos de la red, pudiese de forma trivial196 El proyecto OR fue retomado en el año 2004, con el diseño e implementación de lo que se denominó la “segunda generación del onion router” o TOR, por sus siglas en inglés, la propuesta se muestra en \cite{rlsm:tor-design}. Su política es la del reenvío de flujo TCP sobre una red de reenvíos, y junto con la ayuda de otra herramienta, el Privoxy (http://www.privoxy.org), está especialmente diseñada para el tráfico web. 197 198 Este sistema utiliza una arquitectura de red tradicional: una lista de servidores voluntarios se obtiene desde un servicio de directorio ofrecido por otro(s) servidor(es). De esta forma, los clientes crean caminos utilizando al menos tres nodos intermedios escogidos de forma aleatoria dentro de la lista, y sobre los cuales se hace la comunicación de la información. A diferencia de la arquitectura anterior, donde se enviaba y distribuía el material criptográfico, TOR utiliza un mecanismo interactivo: el cliente se conecta con el primer nodo, y le solicita a éste que se conecte con el segundo nodo, de esta forma un canal bidireccional se utiliza en cada paso para desarrollar un intercambio de claves autenticado DF (Diffie-Hellman). Este garantiza el reenvío en forma secreta y la resistencia a la compulsión, debido principalmente a que solo son necesarias claves de corta duración. Este mecanismo fue inicialmente propuesto en Cebolla (ver [10]), y no está cubierto en la patente de OR (ver \cite{onion-discex00}). 199 200 Otra notable diferencia entre TOR y los intentos anteriores por anonimizar el tráfico de flujo, es que TOR no ofrece seguridad contra los atacantes que pueden observar la red entera, es decir, contra atacantes pasivos globales. Un conjunto de técnicas de Análisis de Tráfico (ver \cite{danezis:pet2004, timing-fc2004, SS03, flow-correlation04, WangCJ05}) han sido desarrolladas a través de los años para trazar el flujo de tráfico continuo viajando por redes de baja latencia como TOR. En estos estudios se ha demostrado que este tipo de ataques son muy difícil de contrarrestar, a menos que se utilicen técnicas que implicarían latencias elevadas, o que requieran la inyección de grandes cantidades de tráfico cubierto (tráfico inservible o “dummy”), los cuales representan soluciones muy costosas. Por esta razón en TOR se opta por obtener un nivel de seguridad que se pueda alcanzar en un sistema altamente utilizable y muy económico de utilizar (ver \cite{e2e-traffic, back01}). Como resultado si un adversario puede observar el flujo entre dos puntos de la red, pudiese de forma trivial 200 201 generar el mismo tráfico, y lograr ataques del tipo “tagging”. Sin embargo, dada esta vulnerabilidad, aun se necesita estimar la probabilidad de que un adversario pueda estar monitoreando la red en múltiples puntos sobre un camino o ruta establecida. 201 202 202 TOR también ofrece mecanismos para ocultar los servidores. Un servidor oculto abre una conexión anónima y la utiliza para publicar un punto de contacto. Si un cliente quiere contactar a un servidor, debe conectarse con un punto de contacto y negociar un canal anónimo separado del que se utiliza para el reenvío de la comunicación actual. Un ataque propuesto en [51] demuestra la vulnerabilidad de esta idea. La intuición detrás de este ataque está en el hecho de que un adversario puede abrir múltiples conexiones hacia un mismo servidor oculto, y secuencialmente o en paralelo podría controlar el flujo hacia ese servidor. Para esto, el atacante necesitaría controlar al menos un enrutador, y debe esperar a que el servidor escoja una de las conexiones de su enrutador como un primer nodo de un camino anónimo cualquiera. 203 204 205 206 207 208 209 210 211 212 213 En \cite{TONITO:14} ... 203 TOR también ofrece mecanismos para ocultar los servidores. Un servidor oculto abre una conexión anónima y la utiliza para publicar un punto de contacto. Si un cliente quiere contactar a un servidor, debe conectarse con un punto de contacto y negociar un canal anónimo separado del que se utiliza para el reenvío de la comunicación actual. Un ataque propuesto en \cite{hs-attack06} demuestra la vulnerabilidad de esta idea. La intuición detrás de este ataque está en el hecho de que un adversario puede abrir múltiples conexiones hacia un mismo servidor oculto, y secuencialmente o en paralelo podría controlar el flujo hacia ese servidor. Para esto, el atacante necesitaría controlar al menos un enrutador, y debe esperar a que el servidor escoja una de las conexiones de su enrutador como un primer nodo de un camino anónimo cualquiera. 214 204 215 205 % el siguiente comando establece la ubicación de las referencias
Note: See TracChangeset
for help on using the changeset viewer.