Community Trust ScoreVerified
Electrum developers published a security advisory on Saturday detailing a vulnerability that allowed malicious servers to insert fake pending payments into user transaction histories, a flaw that led to at least one confirmed loss of funds.
The wallet, one of Bitcoin’s oldest software clients, released version 4.8.3 on October 24 to address the issue. The update adds signature checks for unconfirmed transactions that spend coins from the user’s own wallet, closing the gap that allowed attackers to manipulate transaction data before confirmation.
How the Server-Based Attack Worked
Unlike a full Bitcoin node, Electrum relies on external servers to supply transaction histories and relay payments. Prior to the patch, the software accepted these servers’ reports about pending transactions without verifying their cryptographic signatures. This dependency created an opening for attackers controlling those servers to intercept payments before they reached the Bitcoin network.
According to the advisory, an attacker could swap a legitimate payment in the wallet’s history for a counterfeit transaction sending the user’s coins to an attacker-controlled address. These counterfeit transactions carried invalid signatures, which the vulnerable version of Electrum failed to detect. The wallet displayed the fake transaction as a pending payment, leaving the user unaware that the original payment had been replaced.
The theft mechanism relied on the Replace-by-Fee (RBF) feature, which allows senders to replace an unconfirmed payment with a higher-fee version to speed up processing. When a user attempted to use RBF to speed up the stuck, fake transaction, Electrum signed a valid replacement transaction. This action effectively delivered the user’s coins to the thief’s address, completing the fraud.
Timeline of Reports and User Impact
Developers received two reports regarding the vulnerability during October. The first report arrived on October 11 from a user operating a two-of-three multisignature wallet secured by two Trezor hardware devices. This user had verified the genuine payment on both devices but later discovered an unfamiliar outgoing transaction in their wallet history. No financial loss was reported in this initial case.
A second user reported on October 18 that they had raised the fee on a substituted transaction and subsequently lost funds. The developers have not disclosed the amount stolen nor identified the specific servers involved in the attacks. The fix in version 4.8.3 landed six days after this second report involving stolen funds.
Details from the reports suggest a deliberate operation by the attackers. In one case, the planted transaction included no fee, making it appear stuck to nudge the user toward a fee bump. Additionally, attackers generated receiving addresses whose final four characters matched the legitimate destination, making the swap difficult to spot during a quick visual check.
Users who connected only to trusted servers, including servers they operated themselves, were not exposed to the attack. Older versions of the software remain vulnerable whenever connected to a malicious server. Developers advise all users to upgrade to the latest version and to verify the full receiving address and amount before signing any payment, including fee increases, to mitigate the risk of lookalike addresses.
Frequently Asked Questions
Which Electrum version fixes the server-based transaction swap flaw?
Electrum version 4.8.3, released on October 24, fixes the vulnerability by adding signature checks for unconfirmed transactions spending coins from the user’s wallet.
Were users connected to their own servers affected by the Electrum flaw?
No, users who connected only to trusted servers, including servers they ran themselves, were not exposed to the attack described in the advisory.
