At midnight ET last night, MyEtherWallet users started noticing something odd. Connecting to the service, users were faced with an unsigned SSL certificate, a broken link in the site’s verification. It was unusual, but it’s the kind of thing web users routinely click through without thinking.
But anyone who clicked through this certificate warning was redirected to a server in Russia, which proceeded to empty the user’s wallet. Judging by wallet activity, the attackers appear to have taken at least $13,000 in Ethereum during two hours before the attack was shut down. The attackers’ wallet already contains more than $17 million in Ethereum.
MyEtherWallet confirmed the attack in a statement on Reddit. “We are currently in the process of verifying which servers were targeted to help resolve this issue as soon possible,” the company told users. “We advise users to run a local (offline) copy of the MyEtherWallet.”
The bad certificate that was shown to MyEtherWallet users.
The attackers don’t seem to have compromised MyEtherWallet itself. Instead, they attacked the infrastructure of the internet, intercepting DNS requests for myetherwallet.com to make the Russian server seem like the rightful owner of the address. Most of the affected users were employing Google’s 18.104.22.168 DNS service. However, because Google’s service is recursive, the bad listing was likely obtained through an forged communication with Amazon’s “Route 53” system.
In a statement, an Amazon Web Services Representative emphasized that the service’s own DNS system was never compromised. “Neither AWS nor Amazon Route 53 were hacked or compromised,” the statement reads. “An upstream Internet Service Provider was compromised by a malicious actor who then used that provider to announce a subset of Route 53 IP addresses to other networks with whom this ISP was peered.”
To intercept those requests, the hackers used a technique known as BGP hijacking, which spreads bad routing information as a way of intercepting traffic in transit. Typically, pulling off such a hijack requires hacking into the BGP servers operated by an ISP or other internet infrastructure provider. In this case, the hijack occurred in the vicinity of an internet exchange in Chicago, although the root of the compromise is still unknown.
Thus far, MyEtherWallet is the only confirmed service to have been attacked, although a number of other services were likely also affected by the redirect.
BGP hijacking has long been known as a fundamental weakness in the internet, which was designed to accept routing without verification. DNS attacks are also common, and they were used by the Syrian Electronic Army for a string of website defacements in 2013.
Still, it’s highly unusual for both BGP and DNS vulnerabilities to be used in concert, particularly in such a high-profile theft. “This is the largest scale attack I have seen which combines both,” said researcher Kevin Beaumont in a post running down the attack, “and it underscores the fragility of internet security.”
Update 8:49PM ET: Updated with statement from Amazon Web Services.