crytic / medusa

Parallelized, coverage-guided, mutational Solidity smart contract fuzzing, powered by go-ethereum
https://www.trailofbits.com/
GNU Affero General Public License v3.0
292 stars 37 forks source link

unconditionally apply shrinking instead of by chance #366

Open 0xalpharush opened 3 months ago

0xalpharush commented 3 months ago

It does not make sense to skip an opportunity to perform shrinking as it just wastes the round https://github.com/crytic/medusa/blob/6750032502ed64952435dc408be3d8a1a107eb5c/fuzzing/valuegeneration/mutator_shrinking.go#L25-L27 https://github.com/crytic/medusa/blob/6750032502ed64952435dc408be3d8a1a107eb5c/fuzzing/valuegeneration/mutator_shrinking.go#L94-L99

0xalpharush commented 3 months ago

Really we should do some sort of ensemble fuzzing in order to tune these https://github.com/trailofbits/medusa/blob/62b648c16053d87e3244dfd14a55371059be701c/fuzzing/fuzzer.go#L459-L504