Security testing
Smart contracts are self-executable and self-enforcing programs; once deployed to a decentralized public blockchain, the smart contract becomes immutable and fully transparent. Everyone in the blockchain has access to it. A smart contract can be designed to transfer and manipulate funds in user accounts for payment purposes. For example, a token amount can be transferred from one account to another account in the ERC-20 token standard. Since it is public and decentralized in nature, it becomes much more sensitive from a security perspective. The potential cost of vulnerabilities and the bounty available is an incentive for hackers to spend time and resources to find and exploit security bugs and loopholes in smart contract code.
The most notable attack is the Decentralized Autonomous Organization (DAO) attack. The DAO is an organization that acts as a finance venture capital fund for the crypto and blockchain space. On June 17, 2016, a hacker found a security bug...