Hechos clave:
-
Ledger analiza los diferentes sistemas de protección que tienen este tipo de billeteras.
-
Las carteras de software son todas aquellas que se instalan en ordenadores o dispositivos móviles.
Este artículo contiene enlaces de referencia. Saber más.
Carteras Bitcoin, su función es almacenar y gestionar las claves que se utilizan para recibir y firmar transacciones. Quien tenga acceso a las claves que almacena, tiene acceso a bitcoins (BTC).
Recientemente, Ledger, empresa especializada en la fabricación de carteras hardware, analizó la sistemas de seguridad utilizados por las diferentes carteras de software, y determinó cuán confiables y seguros podrían ser.
El estudio fue publicado en el sitio web oficial de Libro mayor de Donjon, el nombre con el que se nombra al equipo de investigación de seguridad y criptografía de Ledger.
¿Qué protege un monedero o billetera de bitcoins y criptomonedas?
Las carteras no almacenan criptomonedas. Un punto esencial es comprender qué protegen, tanto software como hardware. Los monederos guardar y asegurar el claves privadas con el que se firman las transacciones para transferir los fondos.
Estas claves privadas, los detalles del estudio, se generan a partir de una función matemática conocida como curva elíptica. En Bitcoin y Ethereum, por ejemplo, se utilizan curvas del tipo secp256k1. Monero, por otro lado, usa una variación llamada Ed25519, y en el caso de Ethereum 2.0, usará curvas del tipo BLS12-381.
Dentro de la forma en que se generan las claves privadas, existen dos modelos conocidos entre las carteras de Bitcoin: carteras deterministas jerárquicas (HD) y carteras no deterministas. HD permite crear claves a partir de un único secreto, conocida como semilla de recuperación, compuesta de 12, 18 o hasta 24 palabras.
Por otro lado, para el caso de los no deterministas, se genera una clave para cada secreto, es decir, cada par de claves (privada y pública) se genera a partir de un secreto individual. Esto hace que sea mucho más difícil realizar copias de seguridad.
En base a todo esto, las billeteras se encargan de proteger tanto las claves privadas como la semilla o secretos de recuperación, que permiten la generación de dichas claves. Esto se aplica tanto a las carteras de hardware como a las de software.
¿De qué protege una billetera de bitcoins y criptomonedas?
El enfoque principal de una billetera de criptomonedas en su estructura de seguridad es la protección contra agentes externos. Personas que no sean su legítimo propietario o que él autorice, aunque puedan tener acceso al dispositivo, no deberían poder acceder a los fondos.
El tipo de ataques, donde el atacante tiene acceso al dispositivo, se conoce como “Sirvienta malvada.” El nombre hace referencia al hipotético caso en el que, al salir de la habitación del hotel, una criada malintencionada accede a nuestra computadora o teléfono dejado en la habitación. Nuestra billetera debe estar protegida contra este acceso ilegítimo.
Esto se logra mediante sistemas de protección como la autenticación de dos factores o un PIN de seguridad. Otras protecciones se basan en la creación de un material criptográfico seguro. Es decir, los secretos (excluyendo la semilla) no se pueden generar mediante sistemas predictivos (fuerza bruta). También está la creación de ecosistemas seguros dentro del software o hardware que permiten que el uso normal de la billetera no signifique que las claves estén expuestas.
Cómo funciona la seguridad en las carteras de software
La premisa de protección a la que están sujetas las carteras de hardware de Bitcoin, expuesta en el apartado anterior, también es aplicable a las carteras de software. Su misión es ofrecer un ecosistema seguro a través de las diferentes herramientas que brindan los sistemas operativos como Windows, macOS, Android o iOS.
La seguridad de una cartera de software depende, casi en su totalidad, de los sistemas de protección que tenga el sistema operativo. Sin embargo, algunos fabricantes han desarrollado herramientas de seguridad de hardware especializadas, que se detallará más adelante.
Carteras de software de computadora
Una de las primeras secciones destacadas por el estudio de Ledger son las carteras de software para computadoras, específicamente para los sistemas operativos Windows y Mac. Entre ellos se encuentran Exodus, Coinomi y Electrum, que tienen versiones para PC.
El informe de Ledger comenta que la seguridad de las carteras utilizadas en los sistemas operativos informáticos se basa en lo segura que es la contraseña y que, dentro de la ejecución del propio sistema operativo, no se encuentra ningún tipo de actividad. malware (software maligno). Estos podrían ser, por ejemplo, keyloggers o keyloggers. Son programas que llevan un registro de toda la actividad que realiza el usuario en sus periféricos, como el teclado y el mouse.
La semilla, o secreto, en las carteras de software de PC se almacena de forma cifrada en el disco duro. El cifrado de archivos se basa en la contraseña que utiliza el usuario..
Como resultado de este modelo de cifrado, en el que se basan todos los sistemas operativos, las carteras de Bitcoin podrían presentar problemas de seguridad debido al tipo de contraseña utilizada.
El archivo cifrado está protegido siempre que la contraseña utilizada sea segura. Así, si el atacante tiene acceso al archivo, no podrá descifrarlo debido a un ataque de fuerza bruta, que consiste en probar distintas combinaciones de contraseñas hasta encontrar la correcta. Por otro lado, con un Keylogger instalado en la computadora de la víctima, el atacante podría acceder a la información que ingresa el usuario al abrir su billetera.
Para demostrar cómo funciona, el equipo de investigación realizó un video en el que se puede ver cómo funciona el malware que roba las contraseñas de los usuarios de la PC.
¿Son seguras las carteras de software de computadora?
El estudio de Ledger evalúa la seguridad de una billetera de acuerdo con tres tipos de protecciones: en reposo, durante el uso del secreto y la seguridad del material criptográfico. Por lo demás, la seguridad de la mayoría de las carteras de PC depende de la contraseña, como se explicó anteriormente. En cuanto al acceso y cuidado de los secretos y la semilla de recuperación, depende de la seguridad de la computadora y de quién puede acceder a ella, siendo generalmente inseguro para las billeteras de software. Por último, el material criptográfico dependerá de la implementación. El estudio concluye que Las carteras de software para PC no son muy seguras para proteger bitcoins, ya que son bastante vulnerables a los ataques.
Carteras de software para teléfonos inteligentes
Este tipo de billeteras ofrecen capas de seguridad más altas que las billeteras para computadoras, debido a la construcción de sus sistemas operativos (Android e iOS), los cuales cuentan con secciones de seguridad especializadas para la protección de los datos de los usuarios.
En comparación, según el estudio realizado, los Keyloggers pueden no ser tan efectivos en este tipo de sistema operativo ya que una aplicación, sin los permisos necesarios, no puedo leer datos de otra aplicación. Por supuesto, existe la posibilidad de que el usuario pueda otorgar permisos al no leer lo que está aceptando. Sin embargo, también existen vulnerabilidades dentro de las mismas aplicaciones de billetera que los atacantes pueden aprovechar.
Una aplicación de billetera también puede ser atacada accediendo al raíz o raíz del dispositivo, como se conoce al usuario maestro, que le permite modificar y acceder a toda la información dentro del dispositivo.
El estudio mostró que si bien los ataques son un poco más difíciles de realizar, no son imposibles. Algunos especialistas en seguridad como Ian Beer, demostraron que es posible hackear dispositivos móviles con equipos especializados. Sin embargo, este tipo de ataque requiere hardware y conocimientos avanzados en hackear.
Al igual que las carteras de software de escritorio, las carteras móviles dependen de la seguridad tanto del sistema operativo como de su propio software. En este último caso, se encuentra ofreciendo sistemas de protección por contraseña y verificación biométrica, entre otros..
Sin embargo, a pesar de estas medidas de seguridad y de la propia protección que ofrece el sistema operativo, puede verse comprometido. Un ejemplo de esto es una aplicación maliciosa que funciona como una aplicación dedicada a mostrar el precio de BTC. Sin embargo, al abrir una billetera de criptomonedas desde un dispositivo Android, como es el caso de Metamask, puede robar la contraseña de la billetera y, en consecuencia, tener acceso a la semilla de recuperación de forma remota. Para mostrar el ejemplo, el equipo de investigación de Ledger publicó un video de cómo se vería el ataque.
Cabe señalar que la vulnerabilidad no solo se aplica a Metamask, ya que el estudio también mostró que un malware puede obtener las contraseñas para billeteras como Coinbase, de las cuales los investigadores también realizaron una demostración en video.
Sistemas de seguridad especializados para teléfonos inteligentes
El procesamiento de datos en un dispositivo móvil ocurre dentro de la memoria de almacenamiento. Esto significa que tanto las billeteras (junto con las claves privadas) como el software malicioso se almacenan en el mismo lugar. Aunque el sistema operativo es responsable de proteger la información, el aplicación malicioso, con los permisos necesarios podrá acceder a los fondos.
Para contrarrestar estas situaciones, las compañías telefónicas han comenzado a desarrollar hardware especializado para almacenar datos confidenciales, como claves privadas. Entre estos sistemas, analizados por el estudio Ledger, se encuentran los KeyStores, desarrollados por la empresa Samsung, que se integran en sus dispositivos de gama alta como la serie Galaxy S y la serie Note.
Un KeyStore es un chip especial que almacena datos de manera diferente a como lo haría el almacenamiento interno. Este tipo de almacenamiento ofrece una capa extra de seguridad, en los casos en que el atacante tiene privilegios de acceso al raíz.
Aunque el sistema brinda mayor seguridad a las claves privadas, el KeyStore no firma las transacciones internamente. Esto significa que, para enviar bitcoins, debe extraer las claves privadas del KeyStore y luego firmar la transacción dentro del aplicación cartera, que podría representar una vulnerabilidad de seguridad.
Como concluye el estudio, este mecanismo sí ofrece una mayor seguridad, pero no en su totalidad, ya que los usuarios con acceso a las contraseñas de los dispositivos pueden utilizarlo para vaciar los fondos.
Conclusiones: ¿son seguras las carteras de software?
El estudio de Ledger concluye que la seguridad de las carteras depende, en gran medida, de la sistemas operativos en los que se utilizan. Entre los cuales, su seguridad depende de la contraseña utilizada.
Una buena contraseña que incluya una combinación de mayúsculas, …