Chainvet
Detectors

Storage & Memory

7 detectors (SM-01…SM-07) for assembly jumps, unsafe memory, msg.value-in-loop, and delegatecall-in-loop.

Storage-and-memory detectors (SM) catch low-level hazards — dangerous inline assembly, unsafe memory manipulation, and loops that misuse msg.value or delegatecall. 7 detectors.

IDSlugSeverityConfidenceWhat it detects
SM-01arbitrary-function-jumpHighHighAn assembly jump to an attacker-controllable destination.
SM-02bytes-variables-riskMediumLowRisky handling of bytes / string storage variables.
SM-03msg-value-in-loopHighHighmsg.value used inside a loop — the same value is counted on every iteration.
SM-04error-prone-assemblyLowLowInline assembly that is error-prone and hard to audit.
SM-05memory-manipulationHighLowUnsafe direct memory manipulation in assembly.
SM-06storage-array-by-valueMediumLowA storage array copied by value where a reference was intended.
SM-07delegatecall-in-loopHighHighdelegatecall inside a loop — repeated msg.value use and other dangerous effects.

Remediation

Minimize inline assembly and prefer high-level Solidity; never trust a jump destination or a msg.value accumulated across loop iterations; be explicit about storage vs. memory reference semantics.