Lightway, el protocolo open source de ExpressVPN
Hace algunos dias ExpressVPN dio a conocer la implementación de código abierto del protocolo Lightway, el cual está diseñado para lograr tiempos mínimos de configuración de conexión mientras se mantienen altos niveles de seguridad y confiabilidad. El código está escrito en C y se distribuye bajo la licencia GPLv2.
La implementación es muy compacta y encaja en dos mil líneas de código, además de que se ha declarado el soporte para Linux, Windows, macOS, iOS, plataformas Android, enrutadores (Asus, Netgear, Linksys) y navegadores.
Sobre Lightway
El código de Lightway utiliza funciones criptográficas validadas listas para usar proporcionadas por la biblioteca wolfSSL que ya se usa en las soluciones certificadas FIPS 140-2.
En modo normal, el protocolo utiliza UDP para la transmisión de datos y DTLS para crear un canal de comunicación cifrado. Como una opción para asegurar el funcionamiento en redes UDP no confiables o limitadas, el servidor proporciona un modo de transmisión más confiable, pero menos rápido, que permite la transferencia de datos a través de TCP y TLSv1.3.
Durante el año pasado, nuestros usuarios han podido experimentar cuán rápidas son sus conexiones con Lightway, cuán rápido pueden obtener una conexión VPN, a menudo en una fracción de segundo, y cuán confiables son sus conexiones, incluso cuando cambian. redes. Lightway es otra razón más, junto con la infraestructura avanzada de servidor y ancho de banda que hemos construido, podemos brindar el mejor servicio VPN para nuestros usuarios.
Y ahora, cualquiera puede ver por sí mismo lo que se incluye en el código central de Lightway, así como leer una auditoría independiente de la seguridad de Lightway realizada por la firma de ciberseguridad Cure53.
Las pruebas realizadas por ExpressVPN han demostrado que en comparación con el protocolo anterior (ExpressVPN admite L2TP/IPSec, OpenVPN, IKEv2, PPTP y SSTP, pero no detalla lo que se hizo en la comparación), la transición a Lightway permitió reducir el tiempo de configuración de la llamada en una media de 2,5 veces (en más de la mitad de los casos, el canal de comunicación se crea en menos de un segundo).
El nuevo protocolo también permitió reducir en un 40% el número de desconexiones en redes móviles poco fiables con problemas de calidad de comunicación.
Por la parte de la seguridad de la implementación podremos ver en el anuncio que se menciona que está confirmada por el resultado de una auditoría independiente realizada por Cure53, que en un momento realizó auditorías de NTPsec, SecureDrop, Cryptocat, F-Droid y Dovecot.
La auditoría implicó la verificación del código fuente e incluyó pruebas para identificar posibles vulnerabilidades (no se consideraron los problemas relacionados con la criptografía).
En general, la calidad del código se calificó como alta, pero, sin embargo, la auditoría reveló tres vulnerabilidades que pueden conducir a la denegación de servicio y una vulnerabilidad que permite que el protocolo se utilice como amplificador de tráfico durante los ataques DDoS.
Ya se han solucionado los problemas indicados y se han tenido en cuenta los comentarios sobre la mejora del código. La auditoría también se centró en vulnerabilidades conocidas y problemas en componentes de terceros involucrados, como libdnet, WolfSSL, Unity, Libuv y lua-crypt. La mayoría de los problemas son menores, con la excepción de MITM en WolfSSL (CVE-2021-3336).
El desarrollo de la implementación de referencia del protocolo se llevará a cabo en GitHub con la disposición de la oportunidad de participar en el desarrollo de los representantes de la comunidad (para la transferencia de los cambios, se requiere que firmen un CLA-acuerdo sobre la transferencia de la propiedad de derechos al código).
También se invita a otros proveedores de VPN a cooperar, ya que pueden utilizar el protocolo propuesto sin restricciones. El montaje requiere el uso de los sistemas de montaje Earthly y Ceedling. La implementación se enmarca como una biblioteca que puede utilizar para integrar la funcionalidad de servidor y cliente VPN en sus aplicaciones.
Finalmente, si estás interesado en poder conocer más al respecto de esta implementación, puedes consultar los detalles en el siguiente enlace.