Investigadores descubren una falla en las billeteras de Bitcoin que podría ser explotada para el doble gasto
Una forma estándar de realizar transacciones con Bitcoin podría usarse incorrectamente para permitir una especie de doble gasto, según un nuevo estudio.
Una forma estándar de realizar transacciones BitcoinPodría utilizarse indebidamente para permitir una especie de doble gasto, según un nuevo estudio.
Los detectives de blockchain de ZenGo, una startup de billeteras, han encontrado una vulnerabilidad que afectó al menos a tres importantes billeteras de Cripto competidoras: Ledger Live, Edge y Breadwallet (BRD), y potencialmente a más.
El fallo, que la empresa con sede en Tel Aviv denomina BigSpender, permite a un hacker gastar dos veces los fondos de un usuario y posiblemente impedirle volver a usar su billetera. Funciona explotando la forma en que ciertas billeteras gestionan...Bitcoin función de reemplazo por tarifa (RBF), un mecanismo de seguridad que permite a los usuarios intercambiar una transacción no confirmada por una que tenga una tarifa más alta.
“[BigSpender] puede provocar pérdidas financieras sustanciales y, en algunos casos, dejar la billetera de la víctima totalmente inutilizable, sin posibilidad de protección para esta”.ZenGoEl director ejecutivo Ouriel Ohayon dijo en un correo electrónico: "Así que esto puede verse como unataque de alta gravedad."
Al igual que otras características opcionales de Bitcoin con vulnerabilidades asociadas, comotransacciones bloqueadas por tiempoLa función RBF se ha convertido en un método estándar para que los usuarios FORTH valores. Fue propuesta y aceptada por la comunidad de desarrolladores como una forma de que los usuarios de Bitcoin eviten los tiempos de confirmación lentos pagando más comisiones.
Véase también: Raphael Auer -El trilema de la seguridad y el futuro de Bitcoin
Desde el principio, hubo temores de que la función RBF fuera...no muy bien soportado Por las billeteras de Bitcoin , a pesar de estar integradas en la capa de protocolo del sistema Bitcoin , afirmó el investigador de Bitcoin seudónimo 0xB10C. «ZenGo demuestra que se puede engañar a un usuario haciéndole creer que está recibiendo Bitcoin cuando no es así. Creo que esto es novedoso. Al menos no lo había oído antes», afirmó.
La empresa probó nueve billeteras diferentes, entre ellas Ledger Live, Trust Wallet, Exodus, Edge, Bread, Coinbase, Blockstream Green, Blockchain y Atomic Wallet. De las analizadas, tres resultaron vulnerables al exploit teórico.
"No hemos probado todas las billeteras, pero podría ser que si tres de las más grandes están implicadas, también lo estén otras", dijo Ohayon. ZenGo alertó a las empresas sobre sus hallazgos y les dio 90 días para reparar la vulnerabilidad.
Ledger y BRD han publicado cambios de código para evitar que ocurra el ataque y han pagado recompensas por errores no reveladas a ZenGo, mientras que Edge está pasando por una "refactorización significativa" que abordará el problema, dijo el CEO de Edge, Paul Puey, en un correo electrónico.
El ataque aprovecha una vulnerabilidad conocida en la forma en que ciertas billeteras tratan las transacciones no confirmadas, incluidas, entre otras, las RBF, dijo Peter Todd, ex desarrollador de Bitcoin yEl arquitecto de RBF.
Cómo funciona: Los atacantes envían fondos a su víctima y establecen comisiones lo suficientemente bajas como para garantizar prácticamente que la transacción no reciba confirmación. En las billeteras vulnerables, esta transacción pendiente se reflejará como un aumento en el saldo de la cuenta del destinatario, lo que podría llevar a algunas víctimas a creer erróneamente que la transacción pendiente ya se ha confirmado. El atacante entonces "cancela" la transacción pendiente, en la terminología de ZenGo, usando RBF para cambiar la dirección del destinatario a una que controlan. Para cuando la víctima se dé cuenta de que la transacción se ha cancelado, habrá cumplido su promesa.
Para ser claros: ataques similares eran posibles antes de RBF, pero en ausencia de precauciones adecuadas por parte de los proveedores de billeteras, la opción de pago ha resaltado el riesgo.
Esta discrepancia entre el saldo declarado y el real de la víctima podría ser explotada por actores maliciosos que engañan a las personas para que proporcionen bienes o servicios sin pagarlos, excepto por la mínima comisión. En este sentido, la falla radica en el diseño de la experiencia de usuario (UX) y la interfaz de usuario (UI) del monedero.
¿Doble problema?
Si un hacker puede engañar a una persona haciéndole creer que recibió un pago, mientras que al mismo tiempo mantiene el control del Bitcoin, esto es undoble gastoSegún los investigadores de ZenGo. Otros cuestionan este uso del término.
Hay que definir qué es un doble gasto. La mayoría de quienes no son trolls dirían que un doble gasto es cuando una transacción confirmada se invalida y se gasta con otra transacción confirmada, dijo Jameson Lopp, director de tecnología de la startup de custodia Casa.
Este ataque, por su naturaleza, se aprovecha de la forma en que las billeteras muestran las transacciones no confirmadas. En este sentido, el ataque, aunque fraudulento, no altera el funcionamiento del código de Bitcoin .
“El objetivo de la cadena de bloques es evitar el problema del doble gasto”, dijo Lopp. “Se remonta al Satoshi originallibro blanco, que dice que la solución al doble gasto es tener un libro de contabilidad distribuido que muchas personas revisen”.
Lo único en lo que puedes confiar son las transacciones que han sido extraídas.
Una regla general al realizar transacciones con Bitcoin es no confiar nunca en una transacción con menos de seis confirmaciones, afirmó 0xB10C. Este punto fue repetido por varios desarrolladores, incluyendo a Todd, Lopp y Samuel Sutch, director de tecnología de BRD. Si este exploit se ejecuta, al menos parte de la responsabilidad recae en la víctima.
“Lo único en lo que se puede confiar es en las transacciones que han sido minadas”, dijo Todd.
En este sentido, Sutch calificó a BigSpender de "error menor" y "algo artificial", pero también de algo que vale la pena corregir y por lo que vale la pena pagar una recompensa. BRD superó recientemente los 5 millones de usuarios, afirmó Sutch.
“Más desarrolladores de billeteras necesitan saber que sus usuarios T las distinciones internas”, dijo Lopp. Muchos T siquiera conocen la diferencia entre confirmado y no confirmado desde el punto de vista de la seguridad. Por lo tanto, la responsabilidad recae en los desarrolladores para crear una mejor experiencia de usuario para que no se confundan ni se defrauden con este tipo de cosas”.
Para ello, Ledger actualizó la forma en que la billetera muestra las transacciones pendientes. Si los usuarios no están seguros, pueden consultar el estado de una transacción mediante un explorador de bloques. "Hoy en día, esta verificación no es posible con su banco", declaró por correo electrónico Charles Guillemet, director de tecnología de Ledger.
Visión doble
Actualizar las billeteras para mostrar claramente lo que sucede durante una transacción RBF es beneficioso para todos los involucrados. Sin embargo, los investigadores de ZenGo descubrieron que existe un ataque de segundo orden, que sigue el mismo esquema descrito anteriormente y podría inhabilitar permanentemente una billetera, con o sin el conocimiento de la transacción por parte de la víctima.
En este caso, el atacante infla artificialmente el saldo de la víctima enviando transacciones repetidas a su billetera. Esto puede hacerse sin el consentimiento de la víctima. Al redirigir las transacciones antes de que se confirmen, el saldo declarado de la billetera de la víctima y los fondos reales se vuelven a separar, inutilizando su billetera. Peor aún, el ataque puede afectar a varias billeteras simultáneamente.
Ver también:Un error de larga data en las Dapps DeFi aún no ha sido solucionado por la industria (actualizado)
En esencia, es unadenegación de servicioAtaque (DoS) que impide que las personas utilicen sus billeteras.
“Esto también deshabilita otros intentos de envío si el algoritmo de selección de monedas de la billetera elige fondos de esta transacción inexistente”, dijo Ohayon. Estas billeteras están “bloqueadas”, como dijo Sutch. “Es un gran inconveniente”.
Sutch afirmó que BRD priorizó la vulnerabilidad tras recibir la alerta. Curiosamente, logró corregir el error mientras trabajaba en un problema no relacionado, añadió.
El problema que ZenGo plantea con su investigación de seguridad no está restringido a las billeteras que el equipo probó.gran mayoría de las billeteras Bitcoin son capaces de recibir transacciones RBF, y muchas de las compañías detrás de ellas tienen “recursos limitados”, dijo Sutch, y no pueden brindar una solución de inmediato.
Al habilitar la función RBF en Casa, Lopp configuró el sistema para que no mostrara este tipo de transacciones hasta que se confirmaran, lo cual no es habitual en la industria. "Los parámetros predeterminados mostrarían estas transacciones", explicó.
Actualización (2 de julio, 20:15 UTC): Se modificó un pasaje que parafrasea a Peter Todd para aclarar que se refería al problema de cómo algunas billeteras Bitcoin muestran las transacciones no confirmadas de forma generalizada, no solo las transacciones RBF. También se revisaron otros pasajes para mayor claridad.
Daniel Kuhn
Daniel Kuhn fue subdirector editorial de la Consensus Magazine, donde colaboró en la producción de los paquetes editoriales mensuales y la sección de Opinión . También escribió un resumen diario de noticias y una columna quincenal para el boletín informativo The Node. Su primera publicación fue en Financial Planning, una revista especializada. Antes de dedicarse al periodismo, estudió filosofía en la licenciatura, literatura inglesa en el posgrado y periodismo económico y empresarial en un programa profesional de la Universidad de Nueva York. Puedes contactarlo en Twitter y Telegram @danielgkuhn o encontrarlo en Urbit como ~dorrys-lonreb.
