saviswap

CertiKFiles named in the report

CertiK reviewed SaviSwap on 11 Aug 2022: 19 findings, 0 critical; 8 marked fixed, 11 open.

No open critical findings
Open SaviSwap’s security record

The original report was removed from its address (seen 19 Oct 2026).

Trustblock does not review code.

Findings19

Statuses are the security firm’s own, from its report.

SeverityOpenAcknowledgedFixed
Critical000
High600
Medium204
Low304
MediumDiscussion For `MultiSig`Fixed

Some functions in the contract `MultiSig` can be called by anyone, for example `setPerformBySigs()`, which allows anyone to call it and update `perform` as long as someone has a sufficient number of signatures.

MediumDiscussion For Function `_checkSigsByteTypedDataHFixed

Line 239 of the code only checks if two adjacent addresses in the array are different, if the variable `sigsMin` is greater than 2, the array will pass the check as long as there are two different addresses in the array.

MediumLack of Access ControlFixed

The function `setSwap()` is `external` and can be called by anyone as long as the contract is deployed.

MediumLogical Issue in Function `swap()`Fixed

If the `swap()` function modified by `whenNotPaused` has been suspended, the user can still swap the tokens by calling the function `perform()` of `performer`.

LowLack of reasonable boundaryFixed

The variable `feeRate` does not have reasonable boundaries, so they can be given arbitrary values after deploying.

LowLack of Zero Address ValidationFixed

The given input is missing the check for the non-zero address.

LowMissing Emit EventsFixed

There should always be events emitted in the sensitive functions that are controlled by centralization roles.

LowPotential Reentrancy AttackFixed

A reentrancy attack can occur when the contract creates a function that makes an external call to another untrusted contract before resolving any effects. If the attacker can control the untrusted contract, they can make a recursive call back to the original function, repeating interactions that would have otherwise not run after the external call resolved the effects.

Contracts in scope

No deployed address is recorded for this audit.

The report names a repository or files. Open the report to see its scope.

Repository and files the report names (17)

  • SaviProxy.sol
  • Interface/IWeth.sol
  • Committee.sol
  • Libraries/TransferHelper.sol
  • Interface/AdapterManageInterface.sol
  • Performer.sol
  • Libraries/AdapterSet.sol
  • Interface/FeeToInterface.sol
  • Interface/PerformerInterface.sol
  • Swap.sol
  • Libraries/CommitteeSet.sol
  • Interface/OwnerInterface.sol
  • FeeTo.sol
  • Interface/SwapInterface.sol
  • Interface/CommitteeInterface.sol
  • AdapterManage.sol
  • Libraries/Constants.sol

Part of SaviSwap’s security record

SaviSwap
Audits1 audit by 1 firmLast audit Aug 2022, by CertiK.
Critical findingsNo open critical findingsIn 1 report.
Open SaviSwap’s security record

Security firm

CertiK

1,044 projects reviewed · 1,375 reports · latest May 2025

See CertiK’s audits

Something wrong on this page? A missing report, a wrong date, a finding that was fixed since. Tell us and we check it against its source.

Tell us