Ethereum is the second most valuable cryptocurrency, just after Bitcoin. The biggest di erencebetween Bitcoin and Ethereum is the ability to write smart contracts - small programs that siton the blockchain. As the contracts are on the blockchain, they become immutable making themattractive for various decentralised applications (or dApps) like e-governance, healthcare management and data provenance.However, the biggest advantage of smart contracts - their immutability also poses the biggest threatfrom a security standpoint. This is because any bug found in the smart contract after deploymentcannot be patched. Recent attacks like the DAO attack and the Parity attack have caused massivemonetary losses. In such a scenario it becomes imperative to develop and interact with smartcontracts that are secure.In this thesis we analyze the Ethereum Smart Contracts from a security viewpoint. We presenta study of the security vulnerabilities observed in Ethereum smart contracts and develop a noveltaxonomy for the same. We then analyse the di erent security tools available