Kaspersky Lab and INTERPOL recently presented research on how blockchain-based cryptocurrencies could be abused through the pollution of public decentralized databases with arbitrary data. During our presentation at the BlackHat Asia conference in Singapore, we demonstrated the proof-of-concept using the Bitcoin network, but it’s important to understand that any cryptocurrency that relies on blockchain technology can be abused in this way.
Blockchain-based cryptocurrencies could be abused through the pollution of p2p databases with arbitrary dataTweet
Some believe that security researchers, especially those from the anti-malware industry, generally only publish threat reports after the discovery of a threat in the wild. However, this is not always true. Our current research focuses on potential future threats that could be prevented before cryptocurrencies are fully adopted and standardized. While we generally support the idea of blockchain-based innovations, we think that, as part of the security community, it is our duty to help developers make such technologies fit-for-purpose and sustainable.
Blockchainware, short for blockchain-based software, stores some of its executable code in the decentralized databases of cryptocurrency transactions. It is based on the idea of establishing a connection to the P2P networks of cryptocurrency enthusiasts, fetching information from transaction records and running it as code. Depending on the payload fetched from the network, it can be either benign or malicious.
The proof-of-concept code we demonstrated was a benign piece of softwareTweet
To ensure the accurate interpretation of our research, we would like to point out that in the anti-malware industry, there is a clear definition of what constitutes malware, and there are extremely strict policies in place that forbid any attempts to create or distribute malware. The proof-of-concept code we demonstrated was a benign piece of software that opened the Notepad application after getting a confirmation from the user.
So, what exactly did we demonstrate at BlackHat Asia? See for yourself at: https://www.youtube.com/watch?v=FNsqXHbeMco
As we pointed out during our presentation, possible solutions can be introduced at different layers. From the perspective of a company developing endpoint security solutions, we don’t believe it’s too much trouble to denylist applications that load unpredictable external payload from a P2P network.
We believe that the value of solution development lies in its neutrality and decentralized decision-makingTweet
However, from the perspective of the cryptocurrency network, it’s still an open question. We are not the experts in this field, and are therefore not best placed to propose effective solutions. We also don’t want to promote any specific solution as we believe that the value of solution development (as in the case of Bitcoin) lies in its neutrality and decentralized decision-making.
That’s why we suggest this is a project for the cryptocurrency community.
We don’t promote any specific solution. We suggest this is a project for the cryptocurrency communityTweet
As a starting point for opening a discussion in the community, we suggest looking for an opportunity to implement a network consensus/negotiation algorithm that will sustain the clean state of the blockchain.
I would like to credit my co-speaker, Christian Karam (@ck4r4m), Cyber Threat Researcher from Interpol for coming up with idea for this research and going all the way to the stage at Blackhat and beyond.
Blockchain technology abuse: time to think about fixes
With all due respect, this is bullshit. There is no exploit, there is no vulnerability, there is only a demonstration of the obvious. The blockchain is a distributed database. So, you can store there stuff. Like executable code. So what? Do you know how much crap is ALREADY stored there? Satoshi’s original paper, ASCII cartoons, encrypted messages, URLs to porn sites, Bible verses….
Yes, you can store malware there too. So what? It is not executable. No Bitcoin software would ever execute it. There is no vulnerability, no exploit. In order to execute it, you need ANOTHER piece of malware to extract it from there first – but that is pointless. If you could get your malware on the target computer, could get any other malware there too – no need to use the Blockchain. It’s much slower and less efficient to use the Blockchain. The only advantage is that the information stored there cannot be removed – but that’s not a big deal.
Malware can also use the Blockchain to communicate with its C&C server – but that’s also slow, inefficient and unnecessary. It’s much better to just use a hidden Tor service.