code-423n4 / 2021-12-defiprotocol-findings

0 stars 0 forks source link

Missing error messages in require statements #93

Open code423n4 opened 2 years ago

code423n4 commented 2 years ago

Handle

WatchPug

Vulnerability details

https://github.com/code-423n4/2021-12-defiprotocol/blob/205d3766044171e325df6a8bf2e79b37856eece1/contracts/contracts/Basket.sol#L45-L46

require(address(factory) == address(0));
require(!initialized);

https://github.com/code-423n4/2021-12-defiprotocol/blob/205d3766044171e325df6a8bf2e79b37856eece1/contracts/contracts/Basket.sol#L68-L69

require(_tokens.length > 0);
require(_tokens.length == _weights.length);

https://github.com/code-423n4/2021-12-defiprotocol/blob/205d3766044171e325df6a8bf2e79b37856eece1/contracts/contracts/Basket.sol#L76-L77

require(_tokens[i] != address(0));
require(_weights[i] > 0);

https://github.com/code-423n4/2021-12-defiprotocol/blob/205d3766044171e325df6a8bf2e79b37856eece1/contracts/contracts/Basket.sol#L80-L80

require(_tokens[i] != tokenList[x]);

https://github.com/code-423n4/2021-12-defiprotocol/blob/205d3766044171e325df6a8bf2e79b37856eece1/contracts/contracts/Basket.sol#L92-L95

require(auction.auctionOngoing() == false);
require(amount > 0);
uint256 startSupply = totalSupply();
require(startSupply + amount <= maxSupply);

https://github.com/code-423n4/2021-12-defiprotocol/blob/205d3766044171e325df6a8bf2e79b37856eece1/contracts/contracts/Basket.sol#L103-L103

require(totalSupply() <= maxSupply);

https://github.com/code-423n4/2021-12-defiprotocol/blob/205d3766044171e325df6a8bf2e79b37856eece1/contracts/contracts/Basket.sol#L109-L110

require(auction.auctionOngoing() == false);
require(amount > 0);

https://github.com/code-423n4/2021-12-defiprotocol/blob/205d3766044171e325df6a8bf2e79b37856eece1/contracts/contracts/Basket.sol#L158-L158

require(newPublisher != address(0));

https://github.com/code-423n4/2021-12-defiprotocol/blob/205d3766044171e325df6a8bf2e79b37856eece1/contracts/contracts/Basket.sol#L161-L161

require(block.timestamp >= pendingPublisher.timestamp + TIMELOCK_DURATION);