Hechos clave:
-
El bug fue solventado y recomiendan actualizar inmediatamente a la versión más nueva del cliente.
-
El fallo fue descubierto y solventado por los propios desarrolladores de Bitcoin.
En días recientes se presentó una nueva actualización en la red Lightning de Bitcoin. Se trató de una corrección a lo que sería un fallo de seguridad que permitía una pérdida de BTC desde los canales de pago.
La actualización en cuestión se dio a conocer este 4 de octubre. El programador de Lightning Alex Bosworth publicó en su Twitter que las personas que estén utilizando LND (Cliente Lightning Network Daemon) deberían actualizar inmediatamente. No obstante, según lo publicado en la lista de correos Lightning-Dev Antoine Riard, la actualización en cuestión sería dirigida a LND, c-lightning (implementación ligera de LND y utilizada por muchas wallets Bitcoin) y la cartera Eclair, específicamente.
El fallo, o vulnerabilidad, se encontraba en la tarifa de comisión. Al momento de crear un canal de pago, se fija un monto mínimo en satoshis, cuyo valor es conocido como “dust_limit_satoshis”. Al crearse la transacción de compromiso, que es la que se propaga en la blockchain una vez el canal sea cerrado, este valor define lo que sería el promedio de comisión a pagar. Debido a un fallo, un atacante, podría “modificar” dicho valor y hacer que la contraparte perdiera los fondos dentro del canal, que irían a pagar por conceptos de tarifas de red.
Si bien no es un robo directo que podría aplicar sobre el canal de pago, dado que la pérdida iría a parar a los mineros, el atacante, según describe Antoine Riard, podría participar juntos con mineros maliciosos para hacerse con estos fondos en específicos. Claro está, el minero debería competir contra otros mineros honestos, que querrán minar dicha transacción. En cualquiera de los casos, esto significará la pérdida de los fondos a la víctima.
Según destaca la línea de tiempo sobre el seguimiento de esta falla, carteras como Muun Wallet y Electrum Wallet, habrían sido notificadas sobre la presente problemática.
La solución
Antoine Riard, entre las soluciones que destaca se encuentra en fijar un “dust_limit_satoshis” de ambas partes del canal, generando una especie de compromiso entre pares. En este sentido, también aplicar una nueva variable a la ecuación que sería el valor “dust_buffer_feerate” que definiría el valor a pagar por tarifa con base al consumo de energía eléctrica consumida por la creación de la transacción.
Estos valores, juntos con otras definiciones descritas en el mail, evitarán que la transacción no sea propagada en la red de no cumplir con estos requisitos. En tal caso, simplemente se mostrará un error sobre la transacción a enviar.
La actualización ya se encuentra disponible en los diferentes repositorios de los clientes de Lightning, para el caso de carteras como Eclair, que según describe Riard requiere actualización, se desconoce el estado actual. Umbrel SO, por ejemplo, del cual reportó CriptoNoticias el lanzamiento de un nodo Bitcoin+Lightning con este sistema operativo, anunció que ya la actualización se encontraba disponible en su tienda de aplicaciones.