Hechos clave:
-
El desarrollador Antoine Riard descubrió un posible ataque de bloqueo de transacciones en Lightning.
-
Las principales implementaciones de Lightning implementaron medidas de mitigación en 2023.
Un desarrollador de redes Bitcoin y Lightning, Antoine Riard, publicó un descubrimiento que afecta a la red de segunda capa centrada en pagos instantáneos con bitcoin (BTC). La vulnerabilidad, descubierta en diciembre de 2022, ya ha sido abordada por los principales clientes que conectan la red Lightning a los nodos.
El vulnerabilidad Lo que Riard explica en su mensaje al correo electrónico de Bitcoin-Dev y Lightning-Dev se relaciona con un tipo de ataque de bloqueo de transacciones, conocido como “reemplazo cíclico”. Este tipo de ataque afecta directamente la seguridad de los canales Lightning, que se utilizan para realizar transacciones fuera de la cadena principal de Bitcoin de forma rápida y económica.
Como detalla el desarrollador, El ataque de reemplazo cíclico expone nodos Enrutamiento relámpago a riesgos de seguridad e incluso es capaz de generar pérdidas de fondos. Esto afecta tanto a los canales heredados como a los canales con salidas ancladas, afirma Riard. Lo preocupante es que este ataque “es práctico y puede ser explotado incluso si no hay congestión en el mempool de la red Bitcoin”. Además, el atacante no necesita tener una alta capacidad de hashrate en la red principal.
El texto asegura que la vulnerabilidad nunca fue ejecutada en el periodo de 10 mesesen el que existía la posibilidad de hacerlo en la red principal de bitcóin. El autor del correo electrónico aclara que “un ataque de reemplazo cíclico no requiere capacidades privilegiadas por parte de un atacante” y añade que “sólo se necesita acceso al software básico de Bitcoin y Lightning”. “Sin embargo, sigo creyendo que llevar a cabo con éxito un ataque de este tipo requiere conocimientos técnicos sólidos de Bitcoin y una preparación adecuada”, afirma Riard.
¿Cómo funciona un ataque de reemplazo cíclico?
Como uno explica publicación por Antoine Riard sobre los ataques de reemplazo cíclico, en estos casos Un atacante envía una transacción con una tarifa más alta que una transacción legítima en curso. Incluso se podría presumir que tanto la transacción legítima como la transacción de reemplazo podrían ser coordinadas por el mismo atacante que controla varios nodos, y tiene la capacidad de crear canales de pago con el nodo víctima.
La explicación técnica para este tipo de ataque es la posibilidad de que un atacante transmita su transacción HTLC de preimagen (contrato con hash y bloqueo de tiempo) con tarifas más altas que una transacción HTLC aparentemente honesta desde un nodo Lightning. . Esto desencadena un reemplazo y hace que la transacción anterior se elimine del mempool (búfer para transacciones no aprobadas en Bitcoin), exponiendo a los nodos de reenvío a la pérdida de fondos. El reemplazo de transacciones es un mecanismo legítimo de mempool para nodos completosque un atacante puede aprovechar para su beneficio si la función está habilitada de forma predeterminada en todos los nodos involucrados.
En términos más simples, estos ataques son comparables al caso de una persona que hace cola en una tienda, consigue lo que otra persona quería comprar y la deja con las manos vacías. Esta es una forma de “engañar al sistema” anteponiendo una transacción a otras para moverlas del mempool y así obtener el pago que les correspondía.
El especialista explica que “la red Lightning resuelve el problema de escalabilidad de Bitcoin a través de canales de pago fuera de la cadena” y que “la seguridad de esta capa depende de la capacidad de los participantes para confirmar las transacciones en la cadena principal de Bitcoin en cualquier momento”. momento”.
“Esta capacidad es fundamental, especialmente cuando los saldos fuera de la cadena están en juego durante un período de tiempo limitado, regulados por bloqueos de tiempo de Bitcoin Script. Sin embargo, existe una vulnerabilidad relacionada con interferencias maliciosas en la propagación de transacciones en la red base Bitcoin, que puede conducir al bloqueo de ataques”, continúa en su argumento.
Según una investigación de Riard y otros programadores, “actualmente es posible robar toda la capacidad del canal de enrutamiento de la red Lightning si la capacidad se puede enrutar por completo como HTLC pendientes”.
Mitigaciones en implementaciones Lightning
Para hacer frente a esta amenaza, Principales implementaciones de Lightning diseñadas e implementadas medidas de mitigación.. Estas medidas se encuentran en las últimas versiones de los clientes LDK (v0.0.118), Eclair (v0.9.0), LND (v.0.17.0-beta) y Core-Lightning (v.23.08.01), que permiten que los nodos conectarse a la red.
Entre las estrategias adoptadas se encuentra la “retransmisión agresiva”, que Riard explica de la siguiente manera: “Dado que el ciclo de reemplazo, el atacante aprovecha el hecho de que el tiempo de espera de HTLC generalmente se transmite a través de los nodos Lightning solo una vez en cada bloque, o incluso menos, el malicioso Las transacciones del ciclo de reemplazo solo pagan un monto igual a la suma de las tarifas absolutas pagadas por el HTLC, ajustadas con la penalización de reemplazo. La retransmisión aleatoria y varias veces antes del siguiente bloque aumenta el coste absoluto de la tarifa para el atacante”.
A pesar de las medidas de mitigación implementadas, Antoine Riard destaca que Los ataques de reemplazo cíclico siguen siendo una amenaza para los atacantes avanzados y plantea dudas sobre la seguridad a largo plazo de las transacciones fuera de la cadena. El desarrollador cree que “aún no se ha determinado si las medidas de mitigación implementadas son lo suficientemente sólidas contra los atacantes avanzados de reemplazo cíclico, especialmente aquellos que pueden combinar diferentes clases de bloqueos de transacciones”.
Hasta el día de hoy, no estoy seguro de si la red Lightning no se ve afectada por un problema de seguridad crítico de maleabilidad de paquetes a largo plazo según las reglas de consenso actuales, y si algún otro protocolo multipartito urgente, diseñado o implementado, no se ve afectado. facto (pérdida de fondos o denegación de servicio).
Antoine Riard, desarrollador de la red Lightning.
El descubrimiento de Antoine Riard también genera preocupación sobre posibles vulnerabilidades en otras aplicaciones de Bitcoin. Se han identificado varias aplicaciones, como contratos de diferencia de Bitcoin (DLC), coinjoins, billeteras con rutas sensibles al tiempo, intercambios entre pares y transacciones aceleradas, que podrían verse afectadas bajo ciertas condiciones de congestión de mempool.
