Tinfoil Chat (TFC) es un sistema de mensajería punto a punto FOSS + FHD que se basa en una arquitectura de hardware de alta seguridad para proteger a los usuarios de la recolección pasiva , ataques MITM y, lo más importante, la exfiltración remota de claves . TFC está diseñado para personas con uno de los modelos de amenazas más complejos: grupos delictivos organizados y piratas informáticos de los estados nacionales que evitan el cifrado de extremo a extremo de las aplicaciones tradicionales de mensajería segura al piratear el punto final. Criptografía de vanguardia TFC utiliza XChaCha20 : cifrado de extremo a extremo Poly1305 con autenticación denegable
para proteger todos los mensajes y archivos enviados a destinatarios individuales y grupos. Las claves simétricas se comparten previamente o se intercambian usando X448 , cuyas huellas digitales de base 10 se verifican a través de un canal fuera de banda. TFC proporciona secreto de reenvío por mensaje con el trinquete hash basado en BLAKE2b . Todos los datos de usuario persistentes se cifran localmente utilizando XChaCha20-Poly1305, cuya clave se deriva de la contraseña y la sal con Argon2id , cuyos parámetros se ajustan automáticamente de acuerdo con las mejores prácticas. La generación clave de TFC se basa en getrandom () del kernel de Linux , un syscall para su ChaCha20 basado CSPRNG .
Anónimo por diseño
TFC enruta toda la comunicación exclusivamente a través de la red de anonimato Tor . Utiliza los servicios Tor Onion de última generación ( v3 ) para habilitar la comunicación P2P que nunca sale de la red Tor. Esto hace que sea difícil para los usuarios desanonimarse accidentalmente. También significa que, a diferencia de los mensajeros (des) centralizados, no hay un servidor de terceros con acceso a los metadatos del usuario, como quién habla con quién, cuándo y cuánto. La arquitectura de red significa que TFC se ejecuta exclusivamente en los dispositivos del usuario. No hay anuncios ni seguimiento, y no recopila ningún tipo de información sobre el usuario. Todos los datos siempre se cifran con claves que controla el usuario, y las bases de datos nunca salen del dispositivo del usuario.
El uso de los servicios de cebolla también significa que no es necesario registrar una cuenta. Durante el primer lanzamiento, TFC genera una cuenta aleatoria de TFC (una dirección de servicio de cebolla) para el usuario, por ejemplo
4sci35xrhp2d45gbm3qpta7ogfedonuw2mucmc36jxemucd7fmgzj3ad. Al conocer esta cuenta de TFC, cualquiera puede enviar una solicitud de contacto al usuario y hablar con él sin tener que conocer su identidad, dirección IP o geolocalización de la vida real. La geolocalización protegida hace que los ataques físicos sean muy difíciles porque el atacante no sabe dónde se encuentra el dispositivo en el planeta. Al mismo tiempo, hace que la comunicación sea resistente a la censura: bloquear TFC requiere bloquear Tor categóricamente, en todo el país.TFC también presenta un modo de enmascaramiento de tráfico que oculta el tipo, la cantidad y la programación de la comunicación, incluso si el dispositivo de red del usuario está pirateado. Para proporcionar aún más protección de metadatos contra los piratas informáticos, la parte de TFC orientada a Internet se puede ejecutar en Tails , un sistema operativo centrado en la privacidad y el anonimato que no contiene archivos personales del usuario (lo que dificulta deducir a quién pertenece el punto final ), y eso proporciona capas adicionales de protección para su anonimato.
Primer sistema de mensajería con seguridad de punto final
TFC está diseñado para usarse en la configuración de hardware que proporciona una sólida seguridad de punto final. Esta configuración utiliza tres computadoras por punto final: los procesos de cifrado y descifrado se separan entre sí en dos computadoras aisladas, la computadora de origen y la computadora de destino. Estos dos dispositivos están dedicados a TFC. Esta división TCB interactúa con la red a través de la computadora diaria del usuario, llamada Computadora en red.
En TFC, los datos se mueven de la computadora de origen a la computadora en red, y de la computadora en red a la computadora de destino, unidireccionalmente. La unidireccionalidad del flujo de datos se aplica, ya que los datos se pasan de un dispositivo a otro solo a través de un diodo de datos de diseño de hardware libre , que está conectado a las tres computadoras con un cable USB por dispositivo. Las computadoras de origen y de destino no están conectadas a Internet ni a ningún otro dispositivo que no sea el diodo de datos.
Diodo de datos TFC
El repetidor óptico dentro de los optoacopladores del diodo de datos impone la dirección de la transmisión de datos con las leyes fundamentales de la física. Esta protección es tan fuerte que las implementaciones certificadas de diodos de datos se encuentran típicamente en la protección de infraestructura crítica y en redes gubernamentales donde el nivel de clasificación de datos varía entre sistemas. Un diodo de datos podría, por ejemplo, permitir el acceso a las lecturas del sistema de seguridad de una planta de energía nuclear, al mismo tiempo que evitaría que los atacantes exploten estos sistemas críticos. Un caso de uso alternativo es permitir la importación de datos de sistemas menos seguros a los que contienen documentos clasificados que deben protegerse de la filtración.
En TFC, el diodo de datos de hardware garantiza que no se pueda acceder bidireccionalmente a ninguna de las mitades TCB. Dado que la protección se basa en limitaciones físicas de las capacidades del hardware, ninguna pieza de malware, ni siquiera un exploit de día cero puede eludir la seguridad proporcionada por el diodo de datos.
Cómo funciona
Con el hardware instalado, todo lo que les queda a los usuarios es iniciar el programa TFC específico del dispositivo en cada computadora.
Descripción general del sistema
En la ilustración de arriba, Alice ingresa mensajes y comandos al Programa Transmisor que se ejecuta en su computadora de origen. El programa transmisor encripta y firma datos de texto sin formato y transmite los textos cifrados desde la computadora de origen a su computadora en red a través del diodo de datos.
El programa de retransmisión en la computadora en red de Alice transmite comandos y copias de mensajes salientes a su computadora de destino a través del diodo de datos. El programa receptor en la computadora de destino de Alice autentica, descifra y procesa el mensaje / comando recibido.
El Programa de retransmisión de Alice comparte mensajes y archivos con Bob a través de un servicio Tor Onion. El cliente web del Programa de retransmisión de Bob obtiene el texto cifrado del Servicio de cebolla de Alice y lo reenvía a su computadora de destino a través de su diodo de datos. El programa receptor de Bob luego autentica, descifra y procesa el mensaje / archivo recibido.
Cuando Bob responda, escribirá su mensaje en el Programa transmisor en su computadora de origen, y después de un proceso reflejado, Alice lee el mensaje del programa receptor en su computadora de destino.
Por qué las claves y los textos simples no se pueden filtrar
La arquitectura descrita anteriormente utiliza simultáneamente los modelos de diodo de datos clásicos y alternativos para habilitar la comunicación bidireccional entre dos usuarios, al mismo tiempo que proporciona seguridad de punto final forzada por hardware:
- La computadora de destino utiliza el modelo clásico de diodo de datos. Esto significa que puede recibir datos de la computadora en red insegura, pero no puede enviar datos a la computadora en red. El programa receptor está diseñado para funcionar bajo estas restricciones. Sin embargo, aunque el programa autentica y valida todos los datos entrantes, no se descarta que el malware no pueda infiltrarse en el equipo de destino. Sin embargo, en el caso de que eso suceda, el malware no podrá filtrar claves sensibles o textos claros de regreso a la computadora en red, ya que el diodo de datos evita todo el tráfico saliente.
- La computadora fuente utiliza el modelo de diodo de datos alternativo. Esto significa que puede enviar datos cifrados a la computadora en red insegura sin tener que preocuparse por verse comprometida: el diodo de datos protege la computadora fuente de todos los ataques al evitar físicamente todo el tráfico entrante. El Programa Transmisor también está diseñado para trabajar bajo las restricciones de flujo de datos introducidas por el diodo de datos; Para permitir el intercambio de claves, el usuario ingresa manualmente las claves públicas de curva elíptica corta.
- La computadora en red está diseñada bajo el supuesto de que puede ser comprometida por un atacante remoto: todos los datos confidenciales que pasan a través del programa de retransmisión están encriptados y firmados sin excepciones. Dado que el atacante no puede filtrar las claves de descifrado de la computadora de origen o de destino, los textos cifrados no tienen ningún valor para el atacante.
Seguridad
intermedia de filtración Solución intermedia aislada de Qubes
Para algunos usuarios, las APT del mundo moderno no son parte del modelo de amenaza, y para otros, el requisito de tener que construir el diodo de datos por sí mismos es un factor decisivo. Sin embargo, para todos ellos, almacenar claves privadas en un dispositivo en red sigue siendo un riesgo de seguridad.
Para satisfacer las necesidades de estos usuarios, TFC también se puede ejecutar en tres máquinas virtuales dedicadas Qubes . Con la configuración de Qubes, el hipervisor Xen proporciona el aislamiento , y la unidireccionalidad del flujo de datos entre las máquinas virtuales se aplica con estrictas reglas de firewall. Este mecanismo de aislamiento intermedio se ejecuta en una sola computadora, lo que significa que no se necesita un diodo de datos de hardware.
Sistemas operativos compatibles Computadora de
origen / destino
- Debian 10
- PureOS 9.0
- * buntu 19.10
- LMDE 4
- Qubes 4 (Debian 10 VM)
Computadora en red
- Tails 4.0
- Debian 10
- PureOS 9.0
- * buntu 19.10
- LMDE 4
- Qubes 4 (Debian 10 VM)
Más información
Modelo de amenaza
Preguntas frecuentes
Diseño de seguridad
Hardware Diodo de datos
Versión de
placa de prueba (Fácil) Versión de placa de análisis (Intermedia)
Versión de PCB (Avanzada)
Cómo usar
Instalación
Configuración de contraseña maestra Configuración de
clave local Configuración de
servicio de cebolla
Intercambio de clave X448
Teclas precompartidas
Comandos
Registro de actualización




Comentarios
Publicar un comentario
Todos sus comentarios seran bienvenidos, no se admiten insultos todo con el debido respeto que se merece cada persona, o de lo contrario seran eliminado cada comentario inrespetuoso hacia los demas. y autores del blog tambien puedes seguirnos en:
Facebook: https://www.facebook.com/groups/HackingTeamCyber/
Grupo de Telegram: https://t.me/TheHackForceOfficial
Canal de Youtube: https://www.youtube.com/channel/UCXy8Lg28OuGuI5Z-2EWJaNA?view_as=subscriber
Canal Vimeo: https://vimeo.com/403136547?activityReferer=1
Red Social Twitter: https://twitter.com/TheHackForce