A Bitcoin Core programming error opens the door for attackers to steal funds in transactions between the Lightning Network and the main chain. For this reason, Bitcoin Core developers urge Lightning node users or app users on other BTC transfer platforms to update their software to the latest versions of Bitcoin Core as soon as possible.
According to information provided by developer Eugene Siegel via Delving Bitcoin, “Although most of the network has been updated to at least version 22.0, There are still a few thousand wanderers, “So hopefully this disclosure will motivate those running Lightning nodes to upgrade to a more secure version.” This bug was responsibly disclosed about 3 years ago, during which time engineers and developers worked on fixing it without disclosing the information publicly to prevent anyone from using the information maliciously .
Specifically, the bug allows an attacker to find a Lightning Network relay node that connects to a Bitcoin relay node running a version of Bitcoin Core prior to v22. “The attacker opens several different connections to the victim’s Bitcoin node. The attacker then attempts to deliver the newly found block to the victim faster than any honest peer, resulting in the victim node automatically assigning attacker-controlled peers to all high-width compact block relay slots. Does. “Victim’s Bandwidth” Optech Team Tells Bitcoin.
After the attacker gains control over a large number of pairs of the victim’s Bitcoin slots, It uses channels it controls on both the main network and the victim’s Lightning Network to forward the payments it creates.
In one of the possible cases described, The attacker, together with a Bitcoin miner, creates a block that unilaterally closes the Lightning payment channel on the receiver’s side, Without retransmitting transactions in unconfirmed state (this miner aid is only needed when attacking Lightning implementations that monitor the mempool for transactions).
That transaction block, or another block created by a miner, claims payment by issuing an HTLC preimage (the temporary contract required to redeem the funds being exchanged into Lightning). What happens next is that the victim’s Bitcoin node sees the block and passes it to their Lightning node to extract the preimage, allowing them to claim the payment amount on behalf of the spender.
“However, in this case, the attacker uses this manifest block locking attack to prevent Bitcoin Core nodes from knowing the blocks containing the preimage,” the Bitcoin Optech team commented.
The deadlock attack takes advantage of previous versions of Bitcoin Core that were willing to wait up to 10 minutes for a peer to deliver an announced block before requesting that block from another peer. Given an average time of 10 minutes between blocks, this means that an attacker controlling If the resend payment must be claimed within 40 blocks, an attacker controlling 50 connections could have a reasonable chance of preventing a Bitcoin node from seeing the preimaged block until the spending node. May not receive refund of payment. If this happens, the attacker’s spending node is not paid anything and the attacker’s receiving node receives the amount taken from the victim node.
Bitcoin Optech, dissemination site on Bitcoin and Lightning development.
This is not the first time that the Bitcoin Core team has made a responsible disclosure about a programming error in the network’s main client, which has since been fixed. As CriptoNoticias recently reported, software errors in the wallet were found and fixed in version 24.