1. Reentrancy
  2. Code With No Effects
  3. Unencrypted Private Data On-Chain
  4. Integer Overflow and Underflow
  5. Floating Pragma
  6. Unchecked Call Return Value
  7. Unprotected SELFDESTRUCT Instruction
  8. State Variable Default Visibility
  9. Uninitialized Storage Pointer
  10. Use of Deprecated Solidity Functions
  11. DoS with Failed Call
  12. Authorization through tx.origin
  13. Signature Malleability
  14. Weak Sources of Randomness from Chain Attributes
  15. Lack of Proper Signature Verification
  16. Missing Protection against Signature Replay Attacks
  17. Insufficient Gas Griefing
  18. DoS With Block Gas Limit
  19. Hash Collisions With Multiple Variable Length Arguments
  20. Message call with hardcoded gas amount
  21. Price Oracle Manipulation
  22. Source: SWC Registry: Smart Contract Weakness Classification and Test Cases
  23. MindMap by Anugrah SR