## bug hunting smart contracts
### tl; dr
#### initial questions * list `external` and `public` functions. * when and where external call happens and what changes. * check `payable` functions. * how functions are accessed (permissions by who). * follow the flow for transfers.
#### look for common vulnerabilities * reentrancy with flashloans, fallbacks, payables. * access control. * arithmetic errors.
#### create an environment for testing * static analysis * fuzzing and poc exploits (use foundry)
--- ### cool resources
* **[solidity bugs by version](https://00xsev.github.io/solidityBugsByVersion/)**
#### cool bug bounty platforms * **[immunefi](https://immunefi.com/)** * **[hackenproof](https://hackenproof.com/)** * **[bountycaster](https://www.bountycaster.xyz/)** * **[certik](https://www.certik.com/products/bug-bounty)** * **[remedy](https://r.xyz/)**
#### cool communities * **[eth rangers](https://ethrangers.com/)** * **[security alliance](https://securityalliance.org/)** * **[the red guild](https://theredguild.org/)**