Skip to content

Incorrect call order of transferFrom() and rebase() in Olympus DAO forks

Description

The order of calling the transferFrom() and rebase() functions is incorrect in Olympus DAO forks, which can lead to security vulnerabilities.

Examples

Insecure Code

solidity
TOKEN.transferFrom(...); rebase();

Secure Code

solidity
rebase(); TOKEN.transferFrom(...);

Remediation

Reorder the function calls to ensure transferFrom() is called after rebase()

Rule Details

FieldValue
IDCODE-0211
CategoryCrypto
SeverityHIGH
CWECWE-841
ConfidenceMEDIUM
ImpactHIGH
LikelihoodLOW
ExploitabilityMODERATE
TagsOlympus DAO, rebase, transferFrom
OWASPN/A

References