Solidity Steps
  • Learning Solidity
  • Step 1
    • 1: Introduction
    • 2: Data Types
    • 3: Functions
    • 4: Control Structures
    • 5: State Variable
    • 6: Local Variables
    • 7: Global Variables
    • 8: View Keyword
    • 9: Pure Keyword
  • STEP 2
    • 10: Immunable Keyword
    • 11: Events
    • 12: Condition
    • 13: While Loop
    • 14: Do While Loop
    • 15: For Loop
    • 16: Required
    • 17: Assert
    • 18: Revert
    • 19: Modifier
  • STEP 3
    • 20: Constructor
    • 21: Mapping
    • 22: Array
    • 23: Enum
    • 24: Structs
    • 25: Data Location
    • 26: Inheritance
    • 27: The Shadowing Effect
    • 28: Super Keyword
    • 29: Visibility
  • STEP 4
    • 30: Interface
    • 31: Abstract Contract
    • 32: Payable
    • 33: Using type()
    • 34: Sending Ether
    • 35: Receive
    • 36: Fallback
    • 37: Call
    • 38: DelegateCall
    • 39: Calling Other Contracts
  • STEP 5
    • 40: Factory Contract
    • 41: Proxy Contract
    • 42: Create2
    • 43: Try and Catch
    • 44: Solidity Library
    • 45: ABI Encoded
    • 46: ABI Decoded
    • 47: Keccak256
    • 48: Function Signature Hash
  • TIPS
    • Tips: Solidity by "Immunable"
    • Tips: Truffle Tutorial
    • Tips: Microblog Dapp
    • Tips: Reentrancy
    • Tips: Slither Tutorial
    • Tips: Remix Tutorial
    • Tips: Hardhat Tutorial
  • CAREER
    • 💲Cover Letter
    • 💲Resume
  • ABOUT
    • Contact me
Powered by GitBook
On this page
  • Slither Tutorial
  • Conclusion
  1. TIPS

Tips: Slither Tutorial

Slither Tutorial

This tutorial will guide you through using Slither, a Solidity static analysis tool, to analyze smart contracts.

Getting Started

Install Slither with pip install slither-analyzer. Run Slither on your Solidity file with the command slither filename.sol.

Analyzing the Code

Once you have Slither running, you will be able to analyze the code. The following commands are helpful when using Slither:

slither file name.sol --tokens - This command will show you all the tokens represented in the code. slither file name.sol --variables - This command will show you all the variables used in the code. slither file name.sol --functions - This command will show you all the functions defined in the code. slither file name.sol --contracts - This command will show you all the contracts defined in the code. slither file name.sol --dependencies - This command will show you all the dependencies the code has.

Common Issues

Slither can detect a variety of issues in the code. The following are some of the most common issues it will flag:

  • Unused Variables

  • Unchecked Return Values

  • Unchecked Sender

  • Unchecked Call Data

  • Unchecked Math Operations

  • Unchecked External Calls

  • Unchecked Time Dependencies

  • Reentrancy Vulnerabilities

Conclusion

Slither is a powerful tool for analyzing Solidity code. By using the commands listed above, you can quickly and easily identify issues in your code.

PreviousTips: ReentrancyNextTips: Remix Tutorial

Last updated 2 years ago