LooksRare Aggregator contest - Hashlock's results

An NFT aggregator protocol.

General Information

Platform: Code4rena

Start Date: 08/11/2022

Pot Size: $60,500 USDC

Total HM: 6

Participants: 72

Period: 5 days

Judge: Picodes

Total Solo HM: 2

Id: 178

League: ETH

LooksRare

Findings Distribution

Researcher Performance

Rank: 70/72

Findings: 1

Award: $36.34

QA:
grade-b

🌟 Selected for report: 0

🚀 Solo Findings: 0

Low: Payable functions in ERC20EnabledLooksRareAggregator.sol This contract shouldnt have payable functions as it shouldnt receive ether. Location: ERC20EnabledLooksRareAggregator.sol Line 33. Impact: Funds (ether) potentially being directed to the wrong place. Recommendation: This function does not need to be payable.

Low: Lack of address (0x0) best practice check, and lack of check that the input is the correct address, with inability to edit the address. Location: Line 120 of LooksRareAggregator.sol. Impact: The owner could put in a typo, setting the address to the wrong one or address 0. Is it possible to make this an internal function only called from ERC20EnabledLooksRareAggregator.sol with its own address? Mistakes could result in DOS and need to re-deploy. The contract also does not allow for such mistakes to be changed as it can only be called once if the input was not address(0). Recommendation: after the if statement, require address != 0. Create an onlyowner function to update the address later, unless this can be set directly by the _erc20EnabledLooksRareAggregator.sol contract with its own address.

Low: ERC20EnabledLooksRareAggregator.sol can be forced to accept eth via selfdestruct() Impact: Funds (ether) potentially being directed to the wrong place. This contract shouldnt receive ether.

Low: No address check on constructor Location: Line 21 of ERC20EnabledLooksRareAggregator.sol Impact: Potential for initial address of aggregator to be incorrect. There is no way or function to change it after the constructor.

Low: Unused receive function Should call something else or revert. In LooksRareAggregator.sol and Seaport proxy. Impact: Funds (ether) potentially being directed to the wrong place.

#0 - Picodes

2022-11-21T19:39:48Z

Please include links and a better formatting of your submission for clarity

#1 - c4-judge

2022-11-21T19:40:10Z

Picodes marked the issue as grade-b

#2 - 0xhiroshi

2022-11-24T12:28:29Z

Low: Payable functions in ERC20EnabledLooksRareAggregator.sol - invalid, it can an order with both ERC20 and ETH Low: Lack of address (0x0) best practice check, and lack of check that the input is the correct address, with inability to edit the address. - invalid Low: ERC20EnabledLooksRareAggregator.sol can be forced to accept eth via selfdestruct() - invalid Low: No address check on constructor - invalid Low: Unused receive function - only valid for SeaportProxy

#3 - c4-sponsor

2022-11-24T12:28:39Z

0xhiroshi requested judge review

#4 - 0xhiroshi

2022-12-12T23:58:52Z

@Picodes what is the edict of this report?

AuditHub

A portfolio for auditors, a security profile for protocols, a hub for web3 security.

Built bymalatrax © 2024

Auditors

Browse

Contests

Browse

Get in touch

ContactTwitter