Tres cosas que todo el mundo puede hacer ahora:

  1. Por favor considere ejecutar un repetidor para ayudar a crecer a la red Tor.
  2. ¡Dígaselo a sus amigos! Consiga que ejecuten repetidores. Consiga que ejecuten servicios ocultos. Consiga que se lo digan a sus amigos.
  3. Estamos buscando financiación y esponsors. Si le gustan los fines de Tor, por favor tomese un momento para donar para apoyar el nuevo desarrollo de Tor. Además, si conoce compañías, NGOs, agencias, u otras organizaciones que quieran seguridad en las comunicaciones, hágales saber de nosotros.

Soporte de Aplicaciones

  1. Necesitamos buenas maneras de interceptar peticiones DNS para que no se filtre su petición a un observador local mientras intentamos ser anónimos. (Esto pasa porque la aplicación hace la resolución DNS antes de ir al proxy SOCKS.)
  2. Asuntos de Tsocks/dsocks:
    • Necesitamos aplicar todos nuestros parches de tsocks y mantener un nuevo fork. Nosotros lo hospedaremos si quiere.
    • Deberíamos parchear el programa "dsocks" de Dug Song para que use las órdenes mapaddress de Tor desde el interfaz de control, para que no desperdiciemos un viaje de ida y vuelta dentro de Tor haciendo la resolución antes de conectar.
    • Necesitamos hacer que nuestro script torify detecte cuál de tsocks o dsocks está instalado, y llamarlos apropiadamente. Esto probablemente significa unificar sus interfaces, y podria suponer compartir código entre ellos o descartar uno enteramente.
  3. La gente que ejecuta repetidores nos dice que quieren tener un BandwidthRate durante una parte del día, y un BandwidthRate diferente en otras partes del día. Mejor que codificar esto dentro de Tor, deberíamos tener un pequeño script que hable via el Interfaz de Control de Tor, y que use setconf para cambiar el ancho de banda usado. Hay uno ya para Unix y Mac (usa bash y cron), pero los usuarios de Windows todavía necesitan una solución.
  4. Tor puede salir de la red Tor desde un nodo de salida particular, pero deberiamos poder especificar simplemente un país y que se elija uno automáticamente. Lo mejor es obtener el directorio de Blossom también, y ejecutar un cliente Blossom local que obtenga este directorio de forma segura (via Tor y comprobando la firma), que intercepte hostnames .country.blossom, y que haga lo correcto.
  5. A propósito de datos de geolocalización, alguien debería dibujar un mapa de la tierra con una marca para cada repetidor Tor. Bonus si se actualiza conforme la red crece y cambia. Desafortunadamente, las formas fáciles de hacer esto es enviar todos los datos a Google y hacer que te dibuje el mapa. ¿Cuánto impacto tiene esto en la privacidad, y tenemos alguna otra opción buena?

Documentación

  1. Hemos oído que los usuarios de Tor pueden ser víctimas de ataques que rompen el anonimato desde javascript, java, activex, flash, etc, si no los desactivan. ¿Existen plugins (como NoScript para Firefox) que hagan más fácil a los usuarios controlar este riesgo? ¿Cuál es el riesgo exactamente?
  2. ¿Hay un conjunto completo de plugins que reemplacen toda la funcionalidad de Privoxy para Firefox 1.5+? Hemos oído que Tor es mucho más rápido cuando sacas a Privoxy del conjunto.
  3. Por favor ayude a Matt Edman con la documentación y howtos de su controlador Tor, Vidalia.
  4. Evalúe y documente nuestra lista de programas que pueden ser configurados para usar Tor.
  5. Necesitamos mejor documentación para interceptar dinámicamente conexiones y enviarlas a través de Tor. tsocks (Linux), dsocks (BSD), y freecap (Windows) parecen buenos candidatos, y también lo sería usar mejor nuestra nueva característica de TransPort.
  6. Tenemos una lista enorme de programas potentialmente útiles que son interfaz con Tor. ¿Cuáles son útiles en cada situación? Por favor ayudenos a probarlos y documentar sus resultados.
  7. Ayudenos a traducir la página web y la documentación a otros idiomas. Vea las guías de traducción si quiere ayudar. Necesitamos especialmente traducciones al árabe o al farsi, para los muchos usuarios de Tor en áreas con censura.

Codificación y Diseño

  1. Los repetidores Tor no funcionan bien en Windows XP. En Windows, Tor usa la llamada al sistema estandar select(), que usa espacio en la zona no paginada. Esto significa que un repetidor Tor de tamaño medio vaciará la zona no paginada, causando el caos y colgando el sistema. Probablemente deberíamos estar usando E/S solapada en su lugar. Una solución sería enseñarle a libevent a usar E/S solapada en lugar de select() en Windows, y luego adaptar Tor a la nueva interfaz de libevent.
  2. Como los repetidores Tor tienen que almacenar-y-reenviar cada célula que manejan, los repetidores Tor de gran ancho de banda terminan usando docenas de megabytes de memoria sólo para buffers. Necesitamos mejores heurísticas para cuándo encojer/expandir los buffers. ¿Quizás esto debería de modelarse siguiendo el diseño de buffers del kernel de Linux, en donde tenemos muchos buffers pequeños enlazados entre sí, en lugar de buffers monolíticos?
  3. Necesitamos un sitio central oficial que responda preguntas del tipo "¿Es esta dirección IP un repetidor Tor de salida?". Debería dar varias interfaces, incluyendo una interfaz web y una interfaz de estilo DNSBL. Puede dar las respuestas más actualizadas guardando un mirror local de la información del directorio Tor. Lo más lioso es que ser un repetidor de salida no es un valor lógico: así que la pregunta es en realidad "¿Es esta dirección IP un repetidor Tor de salida que puede salir a mi dirección:puerto IP?" El interfaz DNSBL recibirá probablemente cientos de peticiones por minuto, así que se necesitan algoritmos inteligentes. Puntos de bonus si hace testing activo a cada nodo de salida para averigura de qué direcciones IP está realmente saliendo. Lea más aquí.
  4. Algunas veces los repetidores Tor se cuelgan, o a los ordenadores en los que están se les cae la red, u otros accidentes pasan. Algunos operadores Tor han expresado un interes en inscribirse en un servidio "de notificación" que compruebe periódicamente si sus repetidores Tor están saludables y les envíe un correo de recuerdo si no lo están. ¿Alguien quiere escribir unos cuantos scripts cgi, unas cuantas páginas web, y configurar algún tipo de hack con wget y/o algo más complejo como Nagios para hacer la monitorización? La primera versión podría comprobar sólo el puerto de directorio, e.g. mirar la página de stado de la red cacheada para la dirección IP y el puerto correctos y luego pedir la página "/tor/server/authority".
  5. Sería estupendo tener un LiveCD que incluya las últimas versiones de Tor, Polipo o Privoxy, Firefox, Gaim+OTR, etc. Hay dos retos aquí: primero documentar el sistema y las elecciones lo suficientemente bien para que la gente de seguridad pueda formarse una opinión sobre si debería ser seguro, y la segunda es averiguar cómo hacerlo fácilmente mantenible, para que no se quede obsoleto rápidamente como AnonymOS. Puntos de Bonus si la imagen de CD cabe en uno de esos CDs de tamaño pequeño.
  6. Relacionado con la imagen de LiveCD, deberíamos trabajar en una imagen USB que sea intuitivamente segura y bien documentada para Tor y las aplicaciones de soporte. Bastante de la parte difícil es decidir qué configuraciones son seguras, documentar esas decisiones, y hacer algo que sea fácil de mantener en el futuro.
  7. Nuestro interfaz gráfico preferido para Tor, llamado Vidalia, necesita todo tipo de trabajo de desarrollo.
  8. Necesitamos constuir realmente nuestro diseño de resistencia al bloqueo. Esto incluye rellenar el diseño, modificar muchas partes distintas de Tor, adaptar Vidalia para que soporte las nuevas características, y planificar la implantación.
  9. Necesitamos un entorno de simulación flexible para estudiar los ataques de confirmación de tráfico de punta a punta. Muchos investigadores han creado rápidamente simuladores ad-hoc para dar soporte a sus intuiciones o bien de que los ataques funcionan muy bien o de que alguna defensa funciona bien. ¿Podemos construir un simulador que esté documentado claramente y lo suficientemente abierto para que todo el mundo sepa que está dando una respuesta razonable? Esto generará mucha investigación nueva. Vea la entrada debajo sobre ataques de confirmación para detalles sobre el aspecto de investigación de esta tarea — quién sabe, cuando esté hecho quizás usted pueda escribir un artículo o varios también.
  10. Necesitamos un estudio que mida Polipo contra Privoxy. ¿Es Polipo en realidad significativamente más rápido, una vez que se tiene en cuenta la ralentización debida a Tor? ¿Son los resultados los mismos tanto en Linux como en Windows? Relacionado, ¿maneja Polipo más sitios web correctamente que Privoxy, o vice versa? ¿Hay problemas de estabilidad en alguna plataforma común, e.g. Windows?
  11. Relacionado con lo dicho arriba, ¿querría ayudar a portar Polipo para que se ejecute de forma estable y eficiente en Windows?
  12. Necesitamos un entorno de test distribuido. Tenemos test de unidad, pero sería excelente tener un script que arranque una red Tor, la use durante un rato, y verifique que al menos parted de ella funcionan.
  13. Ayude a Mike Perry en su biblioteca TorFlow (TODO): Es una biblioteca python que usa el protocolo de control de Tor para indicar a Tor que construya circuitos de formas variadas, y luego mide el rendimiento e intenta detectar anomalías.
  14. Tor 0.1.1.x y posteriores incluyen soporte para aceleradores criptográficos hardware via OpenSSL. Sin embargo, nunca nadie los ha probado. ¿Alguien quiere conseguir una tarjeta y decirnos cómo va?
  15. Perform a security analysis of Tor with "fuzz". Determine if there are good fuzzing libraries out there for what we want. Win fame by getting credit when we put out a new release because of you!
  16. Tor usa TCP para el transporte y TLS para encriptación del enlace. Esto es bonito y simple, pero significa que todas las celdas de un enlace se retrasan cuando se pierde un solo paquete, y significa que sólo podemos permitir flujos TCP. Tenemos una lista de razones por las que no hemos cambiado a transporte UDP, pero sería excelente ver que esa lista se hace maś corta. También tenemos una propuesta de especificación para Tor y UDP — por favor díganos qué problemas tiene.
  17. No estamos tan lejos de tener soporte IPv6 para las direcciones de destino (en los nodos de salida). Si le importa mucho IPv6, ése es probablemente el primer sitio para empezar.
  18. ¿No le gusta ninguna de éstas? Mire el plan de desarrollo Tor para más ideas.
  19. ¿No ve su idea aquí? ¡Probablemente la necesitemos de todas formas! Contáctenos y averígüelo.

Investigación

  1. El "ataque de fingerprint de sitios web": hacer una lista de unos cuantos cientos de sitios web populares, descargar sus páginas, y hacer una serie de "firmas" para cada sitio. Entonces observar el tráfico de un cliente Tor. Conforme lo observa recibiendo datos, rápidamente se puede adivinar cuál de esos sitios está visitando (si los visita). Primero, cómo de efectivo es este ataque en el código Tor? Después empezar a explorar defensas: por ejemplo, podríamos cambiar el tamaño de celda de Tor desde 512 bytes a 1024, podríamos usar técnicas de relleno como descarte defensivo, o podríamos añadir retrasos al tráfico. ¿Cuánto impacto tienen éstos, y cuánto impacto en la usabilidad (usando alguna métrica adecuada) tiene una defensa exitosa en cada caso?
  2. El "ataque de confirmación de tráfico de punta a punta": mirando el tráfico de Alicia y de Bob, podemoscomparar las firmas de tráfico y convencernos de que estamos mirando el mismo flujo. Por ahora Tor acepta esto como un hecho consumado y asume que este ataque es trivial en todos los casos. Lo primero de todo, ¿es eso realmente cierto? ¿Cuánto tráfico de qué tipo de distribución se necesita para que el adversario tenga confianza en que ha ganado? ¿Hay escenarios (e.g. no transmitir mucho) que enlentecen el ataque? ¿Algunos esquemas de relleno de tráfico o control de tráfico funcionan mejor que otros?
  3. El "ataque de las zonas de enrutado": la mayoría de la literatura piensa en el camino en la red entre Alice y su nodo de entrada (y entre el nodo de salida y Bob) como un enlace simple en algun grafo. En la práctica, sin embargo, el camino atraviesa muchos sistemas autónomos (ASes), y es común que el mismo AS aparezca tanto en el camino de entrada como en el de salida. Desafortunadamente, para predecir con precisión si un cuádruple Alice, entrada, salida, Bob será peligrosos, necesitamos descargar una zona de enrutado de Internet entera y hacer operaciones caras en ella. ¿Hay aproximaciones prácticas, como evitar direcciones IP en la misma red /8?
  4. Otras preguntas de investigación sobre la diversidad geográfica consideran la compensación entre elegir un circuito eficiente y elegir un circuito aleatorio. Mire el artículo de posición de Stephen Rollyson sobre cómo descartar elecciones particularmente lentas sin dañar el anonimato "demasiado". Esta línea de razonamiento necesita más trabajo y más ideas, pero parece muy prometedora.
  5. Tor no funciona muy bien cuando los repetidores tienen ancho de banda asimétrico (e.g. cable o DSL). Como Tor tiene conexiones TCP separadas para cada salto, si los bytes de entrada llegan bien y los bits de salida se están descartando todos, los mecanismos de ralentización de TCP no transmiten realmente esta información de vuelta a los flujos de entrada. ¿Quizás Tor debería detectar cuándo está descartando muchos paquetes de salida, y limitar la velocidad de los flujos de entrada para regular esto él mismo? Puedo imaginar un esquema de subida y bajada de la velocidad en el que elegimos un límite conservativo, lo incrementamos despacio hasta que se pierdan paquetes, lo bajamos y repetimos. Necesitamos alguien que sea bueno con las redes para simular esto y ayudar a diseñar soluciones; y/o necesitamos entender la extensión de la degradación del rendimiento, y usar esto como motivación para reconsiderar el transporte UDP.
  6. Un tema relacionado es el control de congestión. ¿Es nuestro diseño actual suficiente una vez que tengamos un gran uso? Quizá deberíamos experimentar con ventanas de tamaño variable en lugar de ventanas de tamaño fijo? Eso pareció ir bien en un experimento de rendimiento de ssh. Necesitaremos medir y hacer cambios, y quizás reestructurar si los resultados son buenos.
  7. Para permitir a disidentes de paises remotos usar Tor sin ser bloqueados en el cortafuegos del país, necesitamos una forma de conseguir cientos de miles de relays, no sólo unos cuantos cientos. Podemos imaginar un GUI del cliente Tor que tenga un botón de "Tor para la Libertad" arriba que abra un puerto y reenvie unos cuantos KB/s de tráfico a la red Tor. (Unos cuantos KB/s no deberían ser mucha molestia, y hay pocos casos de abuso ya que no son nodos de salida.) ¿Pero cómo distribuimos una lista de estos clientes voluntarios a los disidentes buenos de un modo automático que no deje a los cortafuegos a nivel de país interceptarlos y enumerarlos? Probablemente necesite funcionar en el nivel de confianza entre humanos. Vea nuestro documento de diseño inicial de resistencia al bloqueo y nuestra entrada de la FAQ sobre esto, y luego lea la sección de restencia a la censura de anonbib.
  8. Los circuitos Tor se construyen un salto cada vez, así que en teoría tenemos la habilidad de hacer que algunos flujos salgan del segundo salto, algunos del tercero, y así sucesivamente. Esto parece bueno porque rompe el conjunto de flujos de salida que un repetidor dado puede ver. Pero si queremos que cada flujo esté seguro, el camino "más corto" debería ser al menos de 3 saltos de acuerdo con nuestra lógica actual, así que el resto serán aún más largos. Necesitamos examinar este intercambio forzado entre rendimiento y seguridad.
  9. No es tan difícil hacer DoS a repetidores Tor o autoridades de directorio. ¿Son los puzzles a los clientes la respuesta correcta? ¿Qué otros enfoques prácticos hay? Bonus si son compatibles hacia atrás con el protocolo Tor actual.
¡Háganoslo saber si ha hecho progreso en algo de esto!

Webmaster - Última modificación: Fri Dec 7 09:44:07 2007 - Última compilación: Thu Nov 20 20:07:39 2008

"Tor" y el "Logo de la Cebolla" son marcas registradas de El Proyecto Tor, S.A.

Aviso: Esta traducción podría estar obsoleta. La revisión original en inglés es la 17175 mientras que esta revisión está basada en la 12228.

Esta página también está disponible en los siguientes idiomas: Deutsch, English, suomi, français, Italiano, 日本語 (Nihongo), Nederlands, polski, 中文(简) (Simplified Chinese).
Cómo establecer el idioma por defecto del documento.

Los desarrolladores de Tor no han revisado esta traduccion en cuanto a exactitud o correcciones. Puede ser obsoleta o erronea. La pagina oficial de Tor es la version en Ingles, disponible en https://www.torproject.org/.