Skip to content

Latest commit

 

History

History
28 lines (23 loc) · 1.19 KB

Assimilators’ balance functions return raw values.md

File metadata and controls

28 lines (23 loc) · 1.19 KB

The system converts raw values to numeraire values for its internal arithmetic.

However, in one instance it uses raw values alongside numeraire values.

Interchanging raw and numeraire values will produce unwanted results and may result in loss of funds for liquidity provider.

Recommendation: Short term, change the semantics of the three functions listed above in the CADC, XSGD, and EURS assimilators to return the numeraire balance. Long term, use unit tests and fuzzing to ensure that all calculations return the expected values. Additionally, ensure that changes to the Shell Protocol do not introduce bugs such as this one.


Slide Screenshot

056.jpg


Slide Text

  • ToB Audit DFX Finding 12
  • Undefined Behavior
  • High Severity
  • Raw vs Numeraire
  • Missed Conversion
  • Consistent Values
  • Unit Tests & Fuzzing

References


Tags