Attack Surface Analysis of Permissioned Blockchain Platforms for Smart Cities
Total Page:16
File Type:pdf, Size:1020Kb
Attack Surface Analysis of Permissioned Blockchain Platforms for Smart Cities Amanda Davenport Sachin Shetty Xueping Liang University of Minnesota Old Dominion University Old Dominion University [email protected] [email protected] [email protected] Abstract—In this paper, we explore the attack surfaces in to a blockchain, the concept of a permissioned blockchain has open source permissioned blockchain project Hyperledger Fabric caught the attention and favor of many. For smart cities, the that can be exploited and compromised through cryptographic adoption of the permissioned blockchain helps with the data tactics. Attacks such as insider threats, DNS attacks, private key attacks, and certificate authority (CA) attacks are proposed and security and trust establishment. For one thing, the consensus discussed. Points in transaction flow where the proposed attacks scheme ensures the data integrity so that each peer in the are threats to the permissioned blockchain are specified and network maintains a consistent view and thus the architecture analyzed. Key management systems are discussed, and a deep achieves the data security by preserving the integrity of analysis of Hierarchical Deterministic wallets is conducted. The the system state. For the other, the trust among nodes can Membership Service Provider (MSP) proves to be a centralizing aspect of an otherwise decentralized system and proves to be a be established if there are several pre-established certificate weakness of the permissioned blockchain network. authorities responsible for the identity management. In smart Index Terms—Blockchain, Permissioned blockchain, Crypto- cities, there are still critical infrastructures that require pre- graphic attack, Membership Service Provider established central authorities to rely on such as the power grid or financial institutes. In such case, permissioned blockchains I. INTRODUCTION are needed to build a distributed network with inherent trust Blockchain, while most well known from the cryptocur- and the necessary resilience. rency Bitcoin, is quickly becoming a household term. Ex- The rise of permissioned blockchain is accompanied by ploding in the finance sector, the advantages and payoffs of many unexplored security risks and concerns. One of the a secure, decentralized, trust-less, and immutable ledger have revolutionary aspects of public blockchain lies in the de- caught the interest of businesses and groups far beyond the centralization of a trust-less peer-to-peer network and the realm of finance and into the realm of smart cities. Due to permissioned blockchain is found to infringe on just that. What the sharing economy that accompanies urban developments, a network gains in exclusivity it loses in decentralization. The blockchain as a peer-to-peer network becomes a viable and centralizing aspect rests in the Membership Service Provider natural solution to shared resources [1]. Beyond that, systems (MSP) and accompanying Certificate Authority (CA) system. such as city wide sensor networks and the Internet of Things In controlling and dolling out access to the network, the MSP (IoT) can implement blockchains in areas such as supply chain becomes a point of centralization that every actor must go or in detection of points of failure and fraud [2] [3]. With through to interact with the network, such as the application an increase in interest, the newest development emerging is scenarios in healthcare domain [4] and IoT domain [5]. that of a permissioned blockchain: a blockchain network with Every sensor in a city wide system is managed by the same the ability to control administrative permissions such as read, administrative persons and while the network itself remains write, and channel access. decentralized in a peer to peer fashion, there exists a funnel With the permissions granted by some certificate authorities system in the way read, write, and channel permissions are pre-established, the identity can be controlled and managed. distributed. Condensed, the security of the sensor network lies Instead of the fully decentralized architecture in permissionless completely in the hands of administration through the MSP. As blockchains, permissioned blockchain minimizes the possi- a point of centralization, the MSP becomes a target for attacks. bility of an adversarial pretending to behave normally with There are also attack surfaces that can be easily targeted at, anonymous state. This provides the payoffs of a blockchain such as the interface between the sensors in the smart cities network with the luxury of exclusivity in peer-to-peer net- and the blockchain systems including the key management working. The concept of a permissioned blockchain is also sector, the data storage sector and the communication sector. thought to mitigate the threat of many well known blockchain Key management security relies on the cryptographic materials attacks. The 51% attack, sybil attack, and selfish mining are generated for identity establishment and for confidential data all perceived as lesser threats due to limited access to the handling. The data channel security relies on the proper network and trust in those granted access to the blockchain. transmitting and receiving of data objects by the distributed Between the ability to control administrative duties and the sensors. perceived lesser threats of some of the most detrimental attacks Contributions. The contributions of this paper seek to expand the understanding of the security risks that accompany public key cryptography. Each participant on the network is permissioned blockchains at the cryptographic level. The first assigned a digital certificate that assures they are who they contribution offers an attack surface for the MSP and the ways say they are and defines the levels of access and permissions in which access to the blockchain can be compromised are they have. These permissions are set by the afore mentioned explored. The second contribution proposed is an analysis of administrator. Along with a digital certificate, each participate where the MSP attack surface effects transaction flow and is assigned what Fabric labels a digital signature, or the private specific points of weakness. Lastly, we offer an analysis of key half of a public/private key pair. This is used to sign key storage devices in reference to permissioned blockchains, off on transactions and endorsements to ensure and retain the as private keys are seen to be a defining aspect and potentially integrity of the blockchain. detrimental weakness to permissioned blockchain networks. There is no one required CA system for Hyperledger Fabric Hierarchical Deterministic wallets are discussed in terms of and organizations are left to decide how they want to set up and usability pertaining to permissioned blockchains. run a CA system. Fabric does provide Fabric CA, a CA system Organization. In section II the MSP construct is reviewed, by the Linux Foundation and Hyperledger Fabric, however it including an overview of identities, how they work, and how is completely optional and organizations can instead choose to they are implemented in permissioned blockchain as well as use any CA of their liking [7]. Another recommendation by an explanation of the CA systems available. These materials the Linux Foundation is to use the Cryptogen tool. The only are necessary to understand the attack surface of the MSP and limitations in options for CAs is whatever implementation is how the attacks are possible and applicable. In section III we chosen must utilize ECDSA cryptography as RSA cryptogra- delve into the attack surface and each specific attack, outlining phy is not currently supported by Hyperledger Fabric. More the threat it raises and how they are possible. In section IV information on the Fabric CA and the Cryptogen tool can be we outline the transaction flow of permissioned blockchain and found from [8] [9]. Hyperledger Fabric implements root and specify where in the process the attacks labeled in III present intermediate CAs. In order to mitigate the usage of root CAs weaknesses in transaction flow construct. In section V we as to not be backed up in creation of identities, intermediate present an analysis on key management systems, specifically CAs can be ”validated” by a root CA as a trustworthy and Hierarchical Deterministic (HD) wallets. Finally, in section VI, usable CA. The certificate for the intermediate CA is signed we conclude the paper and provide grounds for future works. by the root CA, and the intermediate CA is then allowed to The leading permissioned blockchain at the moment is sign off in the creation of identities. for all intermediate CAs, Hyperledger Fabric, an open source project hosted by the there exists a trail back to it’s root CA. Linux Foundation. For the sake of this report and research III. THE ATTACK SURFACE OF THE MSP study, Hyperledger Fabric will be used to model crypt attack strategies and analysis on permissioned blockchains. Note that, A. Insider Threat though this paper is not meant to overlook or overshadow the As recorded in section II, the current design of the organiza- many attack surfaces not pertaining to the MSP or CA, we tional wide MSPs has no documented limitations in adminis- focus attention and scope of this paper on attacks implemented trator number and the all local MSPS allow allows for a single cryptographically and thus pertaining specifically to the cen- administrative certificate, which means that MSP is controlled tralized aspects of an otherwise decentralized system. by a single administrator