What do we look for?
Common problem areas depend on the chain, but several appear again and again.
- Reentrancy and call ordering: external calls that let an attacker re-enter before state is updated.
- Access control: functions that anyone can call, or admin keys with more power than needed.
- Math and rounding: overflow, precision loss and rounding that can be farmed in small steps.
- Oracle and price risk: prices that can be moved inside a single transaction.
- Account validation on Solana: missing owner, signer or account checks in Rust programs.
- Upgrade and pause logic: who can change the contract, and how fast.
