NFJLabs security record

BNB Chain, Ethereum, Polygon (POS)nfjlabs.ioGitHub

As of 3 Nov 2026, NFJLabs has 1 audit report on Trustblock, by QuillAudits, dated 6 Mar 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
NFJLabsSecurity firm: QuillAuditsDate: Scope: Files named in the reportNo open critical findingsOpen · quillaudits.com

Findings8

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

SeverityOpenAcknowledgedFixed
Critical000
High002
Medium102
Low201
HighBidders Lose Funds On Bidding for Auctioned NFTsNFJLabs · QuillAudits · 6 Mar 2023Fixed

The bid function takes two parameters; the nft token id and the amount a bidder is willing to bid. While this function does proper checks that encompasses knowing if a bidder had made a bid before, reverts when seller attempts to bid on their own auctioned nfts, check when an auction has started and the auction time interval. However, there are three parameters to pay attention to, to understand how funds are lost in contract. These parameters are _payAmount, totalAmountUserPay, and itemActualPrice - amount being sent into the contract by the bidder, amount derived from the getNFTFinalRate() function, and amount derived from dividing the result of _payAmount multiply by the max basis point (MAX_BPS)  by the result of the addition of the MAX_BPS and platformFee. While the value of itemActualPrice aids in ensuring that the new bidder makes a bid greater than the last bidder, other values ensure that _payAmount exceeds totalAmountUserPay.

Open the report
HighPlatform owner can steal any owner’s NFTs: POCNFJLabs · QuillAudits · 6 Mar 2023Fixed

Tokens put up for auction can only be cancelled at any time, even when the auction timer is over. The token owner would not be the recipient of the NFT if the platformOwner calls cancelAuction() before they can. The platformOwner can take ownership of tokens this way.

Open the report
MediumImproper Use of beforeTokenTransfer Hook with PausableUpgradable.sol WhenNotPaused ModifierNFJLabs · QuillAudits · 6 Mar 2023Fixed

During compilation, the codebase breaks at the level of the _beforeTokenTransfer hook and this makes it impossible to deploy the contract. Moreso, it was discovered that the hook was not implemented the proper way. The primary motive of the hook is to allow developers to make additional code implementation on what could happen before the move of the tokens from one address to another.Although the override feature was added to the function and the whenNotPaused modifier from PausableUpgradable.sol, the override was not effective as the compiler throws an error of “function has override specified, it does not override anything”. This implies that the modification on the beforeTokenTransfer function can be effective when it is implemented within it. Also, parameters being passed to the super._beforeTokenTransfer expected four parameters but got three.

Open the report
MediumNFT Item Put On Sale Cannot Be Removed Unless Purchased: POC1 / POC2NFJLabs · QuillAudits · 6 Mar 2023Fixed

The marketplace contract allows nfts holders to put nft items for auctioning and for sales. When any nft item is put on sale by the token holder, it is not possible for the token owner to remove these nfts again even with the removeFromSale function unless purchased. The removeFromSale function has a line of code that disallows removal from contract after putting on sale.

Open the report
LowUnnecessary Check In mintNFT FunctionNFJLabs · QuillAudits · 6 Mar 2023Fixed

The require check on L98 is unnecessary because the zero address can’t be used to sign transactions.

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="nfjlabs"
></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