Getwise

QuillAuditsFiles named in the report

Audit · firm’s term: audit report

QuillAudits reviewed Getwise on 23 Mar 2023: 6 findings, 0 critical; none marked fixed.

No open critical findings
Open the reportOpen Getwise’s security record

Report hosted on quillaudits.com.

Trustblock does not review code.

Findings6

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

SeverityOpenAcknowledgedFixed
Critical000
High200
Medium100
Low300
HighMalicious Owner Can Buy Tokens From Esketit User with Zero Amount or Price Less Than the Allocated Price Per ItemOpen

The esketitBuyBack function allows the owner to buy back tokens from esketit users who have given the marketplace an approval. This function allows for the owner to manually input the prices to pay from the esketitTreasury address. A malicious owner can exploit this function by providing zero value or amount less than the pricePerItem variable meant to serve as the cost of the tokens.

HighUsers are Unable to List Items Due to Invalid CheckOpen

The marketplace allows users to list nft tokens that are verified by the platform owner. This is ascertained with the <em>esketitLoanBasket</em> mapping that serves verified nft addresses to true. In the listItem function, instead of a check that verifies the provided _nftAddress variable, the check instead checks if the msg.sender address is true. This will cause the function call to revert and deny users the list item functionality.

MediumPossibility of Tokens Getting Stuck in Contract When Updating Marketplace AddressOpen

With the _setApprovalForAll function called at the constructor level, the esketitMarketplace contract becomes the only address that can transfer out tokens to buyers because these tokens are minted directly into the token contract itself. However, issue of stuck tokens arises when contract owner updates the esketitMarketplace variable to a new marketplace address, tokens in the token contract cannot be called by these new marketplace address because  approval was only set at the deployment time and  the approval won’t persist for new esketitMarketplace variables.

LowEsketit Token Contract Fails to Implement ERC721 Receiver Causing the Contract to RevertOpen

When a contract owner buys from Esketit Users via the esketitBuyBack function, the tokens are sent to an NFT address. If the contract address fails to implement the ERC721 receiver, the function will revert.

LowGas Cost Increase Due to Struct not Tightly PackedOpen

The current struct takes 3 slots and can be tight packed to help reduce gas consumption.

LowInput ValidationOpen

Zero addresses can be passed in without reverting, and any arbitrary amount can go in for platformFee as well. It is necessary to sanitize input to avoid breaks in code because of unexpected values.

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 (2)

  • Esketit.sol
  • EsketitMarketplace.sol

Part of Getwise’s security record

Getwise
Audits1 audit by 1 firmLast audit Mar 2023, by QuillAudits.
Critical findingsNo open critical findingsIn 1 report.
Open Getwise’s security record

Security firm

QuillAudits

350 projects reviewed · 459 reports · latest Apr 2025

See QuillAudits’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