Simon and Speck es un módulo desarrollado por la NSA en el 2013 que apunta a:
i. encriptar el nivel más bajo del sistema operativo en dispositivos vulnerables (el kernel en Android, o esa era la idea inicial)
ii. establecerse como un estándar para reforzar la seguridad del kernel por defecto en los dispositivos donde viene incluido
Desde que fue anunciado en el 2013 el módulo fue duramente criticado por su potencial como backdoor (el módulo fue lanzado en medio del escándalo por PRISM). Las críticas no han disminuido con el tiempo: recientemente un doctorado en criptografía informática escribió una carta pública al respecto¹, expresando su escepticismo ante la implementación del módulo en Linux y criticando a la NSA por negarse a responder ciertas preguntas sobre el módulo ante la ISO (Organización Internacional de Normalización).
Por alguna razón el módulo fue incluido como módulo opcional en el último commit del kernel vanilla de Linux. Como saben, sin embargo, muchos módulos se activan automáticamente al utilizar ciertas funcionalidades del sistema operativo, así que la opción más segura es no compilar el módulo en el kernel. Finalmente pasó, todos creímos que iba a ser Systemd el que lo iba a hacer primero, pero al final resultó ser Linux, vaya giro. Pero bueno, para qué llorar por la leche derramada.
1. ¿Cómo sabemos que no hay una funcionalidad malévola implementada en este módulo?
Por ahora, nada es seguro. La respuesta del circlejerk de Linux es "la NSA es muy mediocre como para implementar un backdoor sin que nos demos cuenta". Gringos siendo estúpidos, nada nuevo.
2. En caso de que haya una funcionalidad malévola...
Cuando compilen el kernel (si es que usan Gentoo, SMGL, etc) no incluyan el módulo. Si usan Arch o una distro basada en Pacman están jodidos porque el módulo viene activado por defecto en linux_4.17-1⁰. Si usan una distro basada en Debian, no estoy seguro, aunque me imagino que ya saben la respuesta.
3. Probablemente hay una funcionalidad malévola
La NSA ya influenció a la NIST en el pasado para estandarizar un PRNG (algoritmo de encriptación) que funcionaba como backdoor², y la NSA también pagó 10 millones de dólares en una ocasión para incluir un backdoor mediante RSA (un sistema de encriptación)³. En el 2014 también se supo que la NSA corrompió otro protocolo de intercambio cifrado (IPSEC)⁴. No hay absolutamente ningún motivo para confiar en la NSA.
Pese a que la ISO, la organización internacional de estándares, rechazó al módulo como un sistema de cifrado viable, pues cuando la agencia fue increpada por las falencias de seguridad en el módulo el representante de la NSA designado se negó a declarar, Linux decidió incluir el módulo en su último commit. Por añadidura, no hay absolutamente ningún motivo para confiar en Linux.
Quiero aprovechar el hilo para contarles que desde el año pasado, Parabola (una distro basada en Arch) ha hecho esfuerzos mancomunales para abrirse cada vez más a un público más amplio de usuarios. El mantenimiento de paquetes en el repo oficial es muy activo, y han desarrollado más de cinco alternativas para instalar el sistema, entre ellas ofrecen una versión CLI similar a Arch, ofrecen una instalación por LXDE, otra instalación por Calamares (un menú gráfico similar al de Ubuntu o Linux Mint), y además ofrecen todas las opciones anteriores pero con OpenRC en vez de Systemd como init por defecto:
https://wiki.parabola.nu/Get_ParabolaParabola, por supuesto, usa una variante completamente libre y abierta de Linux (Linux-libre).
__________________________________________
⁰
https://git.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/linux&id=19e67dc25af64dcdc15c365fba6378db45a23d2f (CTRL+F "CONFIG_CRYPTO_SPECK")
¹
https://www.spinics.net/lists/linux-crypto/msg33291.html²
https://projectbullrun.org/dual-ec/documents/dual-ec-20150731.pdf³
https://www.theverge.com/2013/12/20/5231006/nsa-paid-10-million-for-a-back-door-into-rsa-encryption-according-to⁴
https://www.forbes.com/sites/thomasbrewster/2016/08/19/cisco-nsa-vpn-hack-shadow-brokers-leak/#4bcfe4085277