Una vulnerabilidad en algunas carteras de bitcoin conduce a ataques de doble gasto y saldo inflado

Una vulnerabilidad en algunas carteras de bitcoin conduce a ataques de doble gasto y saldo inflado

ZenGo, una startup que está construyendo una billetera de criptomonedas móvil, ha descubierto una vulnerabilidad en algunas de las billeteras de criptomonedas más populares, como la billetera de hardware Libro mayor, BRD y Borde.

Llamado BigSpender, la vulnerabilidad podría provocar un saldo incorrecto en su billetera, ya que las transacciones no confirmadas se tienen en cuenta en su saldo total. El atacante podría revocar la transacción antes de que se confirme, lo que podría generar cierta confusión.

Incluso si no está familiarizado con las criptomonedas, ese tipo de ataque es bastante popular en los mercados de igual a igual, como Craigslist.

Digamos que está intentando vender un teléfono. Alguien podría decirle que quiere comprar su dispositivo y enviarle un correo electrónico de transacción de PayPal falso. Si solo mira el correo electrónico, podría pensar que el comprador ya le envió el dinero. Pero si carga su cuenta de PayPal, es posible que observe que el comprador nunca le envió nada: era un correo electrónico de notificación de pago falso.

BigSpender podría usarse de la misma manera, pero con criptomonedas. El atacante potencial aprovecha una característica del protocolo bitcoin llamada Reemplazar por tarifa. Esta función le permite enviar algunos bitcoins con una tarifa de transacción baja y luego enviar los mismos activos criptográficos pero con una tarifa de transacción más alta.

La transacción original se cancela y se reemplaza por la nueva. De esta manera, la nueva transacción debe confirmarse más rápidamente ya que los mineros procesan primero las transacciones con tarifas de transacción más altas.

Pero algunas carteras de criptomonedas dan por sentadas las transacciones no confirmadas demasiado rápido. Cuando verifica su saldo, parece que ha recibido algunos bitcoins, pero es posible que el remitente lo haya cancelado para reemplazar esa transacción con otra en otra billetera, una billetera que ellos controlan. Aunque la transacción ha sido cancelada, el saldo aún refleja esas transacciones falsas.

Si el atacante está intentando comprar algo realmente caro, puede usar el ataque BigSpender varias veces incluso si no tiene mucho dinero. Por ejemplo, podrían iniciar 10 transacciones cada una con un valor de 0.1 BTC, el destinatario vería un saldo de 1 BTC a pesar de que recibió 0 BTC.

Debido a que la billetera calculó mal el saldo, los atacantes también podrían aprovechar la vulnerabilidad BigSpender para congelar sus activos criptográficos mediante un ataque de denegación de servicio. Cuando la víctima intenta enviar algunos bitcoins después de recibir una tonelada de transacciones falsas, la billetera puede intentar enviar criptoactivos que nunca llegaron. La transacción falla.

Para ser claros, sus bitcoins existentes permanecen seguros. Por lo general, borrar el caché de la aplicación y resincronizar su billetera con la cadena de bloques de bitcoin resuelve ese problema. Pero es posible que no comprenda por qué no puede usar sus activos criptográficos.

BigSpender no es una vulnerabilidad en el protocolo bitcoin, no le permite robar bitcoins. Pero puede usarse para confundir a los usuarios. En el futuro, las billeteras deben marcar claramente las transacciones no confirmadas con una gran etiqueta de “pendiente” sin aumentar el saldo de la billetera. Las transacciones que se han reemplazado mediante Reemplazar por tarifa también deben identificarse como fallidas.

ZenGo reveló la vulnerabilidad con Ledger, Edge y BRD hace 90 días. Ledger y BRD han otorgado recompensas por errores a ZenGo. BRD ya ha lanzado una solución mientras Edge y Ledger están trabajando en soluciones. ZenGo también liberado una herramienta de código abierto para probar su billetera contra BigSpender para ver el comportamiento.

Actualización: Ledger ha publicado un entrada en el blog minimizando el impacto de BigSpender. La empresa no lo considera una vulnerabilidad, sino más bien un defecto de diseño: sus fondos permanecen seguros. “Todo se ha solucionado en la actualización más reciente que se lanzó hace dos días”, me dijo el vicepresidente de marketing Benoît Pellevoizin. Las transacciones no confirmadas están resaltadas, hay un mensaje junto a su saldo si hay transacciones no confirmadas y Ledger Live no usa fondos de transacciones no confirmadas cuando envía fondos de forma predeterminada.

Créditos de imagen: Zengo


Source link