OasisSwap security record

As of 3 Nov 2026, OasisSwap has 1 audit report on Trustblock, by Quantstamp, dated 8 Aug 2023. That report lists no open critical findings.

Critical findings
No open critical findings
In 1 report.
Open the latest report
Your label, live
Get the label for your site

Record last updated . It holds audits, findings and contracts up to Nov 2026, and incidents up to Oct 2026. Trustblock does not review code.

Audits1

Newest first

AuditSecurity firmDateScopeCritical findingsReport
OasisSwapSecurity firm: QuantstampDate: Scope: Files named in the reportNo open critical findingsOpen · certificate.quantstamp.com

Findings15

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

SeverityOpenAcknowledgedFixed
Critical000
High000
Medium011
Low265
MediumRebate Incentivization Can Be Rendered ObsoleteOasisSwap · Quantstamp · 8 Aug 2023Acknowledged

The `swapCalculatingRebate` function within the `OasisSwapPair` contract creates an opportunity for third-party contracts to execute swaps on behalf of Oasis users, utilizing the rebate fee of the caller. This flexibility creates a scenario, where malicious users might abuse this system by leveraging the more favorable rebate rates of one user to conduct less expensive swaps for others. Consequently, they could potentially generate profit from such actions what will have a negative impact on the Oasis protocol. Moreover, this logic incentivizes any user with a lower fee rebate to participate in such a scheme, rendering the entire rebate incentivization strategy ineffective. One of the require checks in `OasisSwapPair.swapCalculatingRebate()` function verifies that controlled `feeController` function argument can be equal to `tx.origin`. This arrangement permits any contract to leverage the fee rebate of the transaction initiator, even under the following circumstances: - Funds don't belong to the `feeController` - Funds are not authorized to be spent by the `feeController` - Funds are not intended to be sent to the `feeController`. Similarly, if a contract can be granted a fee rebate, it can implement a service to enable other users or contracts to benefit from its rebate, not only through the usage of `OasisSwapPair.swapCalculatingRebate()`, but also `swapWithRebate.swapWithRebate()`.

Open the report
LowClone-and-OwnOasisSwap · Quantstamp · 8 Aug 2023Acknowledged

The clone-and-own approach involves copying and adjusting open source code at one's own discretion. From the development perspective, it is initially beneficial as it reduces the amount of effort. However, from the security perspective, it involves some risks as the code may not follow the best practices, may contain a security vulnerability, or may include intentionally or unintentionally modified upstream libraries.

Open the report
LowDouble Event EmissionOasisSwap · Quantstamp · 8 Aug 2023Acknowledged

When performing swaps through the `OasisSwapPair` contract, two events will always get emitted upon successful execution: `Swap` and `SwapWithFee`. This could lead to confusion and potential misinterpretation of the platform's events and operations, since both events reference the same swap.

Open the report
LowMigrator Liquidity Can Be Set to a Wrong ValueOasisSwap · Quantstamp · 8 Aug 2023Acknowledged

The `OasisSwapPair.mint()` function allows the migrator address (if set) to set the initial liquidity to any desired value. This value is obtained from the `migrator` contract by calling `migrator.desiredLiquidity()`. This represents a risk as the liquidity can be manipulated or mistakenly set, leading to precision loss calculations for future liquidity providers.

Open the report
LowMultiple Execution of Mev Control FunctionsOasisSwap · Quantstamp · 8 Aug 2023Acknowledged

The `mevControl` modifier is implemented and added to multiple functions in both the `OasisSwapPair` and `OasisSwapRouter` contracts. However, due to this duplication, the pre and post MEV control functions are executed twice in some cases.

Open the report
LowRenounceable OwnershipOasisSwap · Quantstamp · 8 Aug 2023Acknowledged

If the owner renounces their ownership, all ownable contracts will be left without an owner. Consequently, any function guarded by the `onlyOwner` modifier will no longer be able to be executed.

Open the report
LowUse of Old Solidity VersionOasisSwap · Quantstamp · 8 Aug 2023Acknowledged

As security standards develop, so does the Solidity language. In order to stay up to date with current practices, it's important to use a recent version of Solidity and recent conventions. As an example, one of the main advantages of newer solidity version is the integrated safe math arithmetics that do not require the use of the SafeMath library.

Open the report

Contracts

No deployed address is recorded for these audits.

The reports name a repository or files. Open a report to see its scope.

The repositories and files the reports name

Show this on your site

Is this your project? Show this record on your own website. The label states what the record holds, links to this page and updates by itself. It is free and needs no sign-in.

Content

Facts

Automatic: the three strongest facts of this project’s own record (its last audit and two more), highlighted. They update with the record. Picking a fact turns Automatic off.

Fixed as
Language

Style

Layout
Theme
Accent
Corners

Format

Size
Date
Embed as
HTML
<head>
<script src="https://widget.trustblock.run/project-widget.min.js" defer></script>
</head>
<body>
<div
data-tb-project-widget
data-tb-project-slug="oasisswap-1"
></div>
</body>

Paste the code where the label should appear. It uses no API credit and updates by itself.

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