How 3 Hours of Amazon Inaction Cost Cryptocurrency Holders $235,000

Amazon recently lost control of the IP addresses it uses to host cloud services and took more than three hours to regain control, a time frame that allowed hackers to steal $235,000 in cryptocurrency from users of one of the affected customers, according to an analysis.

Hackers took control of approximately 256 IP addresses through BGP hijacking, a form of attack that exploits known weaknesses in a core internet protocol. Short for Border Gateway Protocol, BGP is a technical specification that organizations that route traffic, known as Autonomous System Networks, use to interact with other ASNs. Despite its crucial function in moving large volumes of data around the world in real time, BGP still relies heavily on the Internet equivalent of word of mouth for organizations to know which IP addresses rightfully belong to which ASNs. .

A case of mistaken identity

Last month, Autonomous System 209243, which is owned by UK-based network operator, suddenly started announcing that its infrastructure was the right path for other ASNs to access what the a /24 block of IP addresses belonging to AS16509 is called one of at least three ASNs operated by Amazon. The hacked block included, an IP address hosting, a subdomain responsible for serving a critical smart contract user interface for the Celer Bridge cryptocurrency exchange.

On August 17, the attackers used the hijack to first obtain a TLS certificate for, as they were able to demonstrate to the GoGetSSL certificate authority in Latvia that they controlled the subdomain. In possession of the certificate, the hijackers then hosted their own smart contract on the same domain and waited for visits from people trying to access the real Celer Bridge page

In total, the malicious contract drained a total of $234,866.65 from 32 accounts, according to this write-up from Coinbase’s threat intelligence team.

Coinbase IT Analysis

Coinbase team members explained:

The phishing contract closely resembles the official Celer Bridge contract by mimicking many of its attributes. For any method not explicitly defined in the phishing contract, it implements a proxy structure that forwards calls to the legitimate Celer Bridge contract. The proxy contract is unique to each chain and is configured at initialization. The command below illustrates the contents of the storage location responsible for configuring the phishing contract proxy:

Phishing smart contract proxy storage
Enlarge / Phishing smart contract proxy storage

Coinbase IT Analysis

The phishing contract steals user funds using two approaches:

  • All tokens trusted by phishing victims are drained using a custom method with a 4-byte value 0x9c307de6()
  • The phishing contract overrides the following methods designed to immediately steal a victim’s tokens:
  • send() – used to steal tokens (e.g. USDC)
  • sendNative() – used to steal native assets (e.g. ETH)
  • addLiquidity() – used to steal tokens (e.g. USDC)
  • addNativeLiquidity() – used to steal native assets (e.g. ETH)

Below is an example of a reverse-engineered code snippet that redirects assets to the attacker’s wallet:

Phishing smart contract snippet
Enlarge / Phishing smart contract snippet

Coinbase IT Analysis

Leave a Reply