Lucene search
K
Code423n4Most viewed

10190 matches found

Code423n4
Code423n4
•added 2022/08/15 12:0 a.m.•9 views

User cannot withdraw locked fund at all after unlock time has passed if delegated to someone else. Result in huge economics loss.

Lines of code Vulnerability details Impact User cannot withdraw locked fund at all after unlock time has passed if delegated to someone else. Result in huge economics loss as user can't get their underlying token delegated to back. In the document it is said that locks need to be undelegated firs...

6.9AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/15 12:0 a.m.•9 views

A delegatee can frontrun the delegator's call to increaseUnlockTime to prevent the delegator to withdraw or quitlock

Lines of code Vulnerability details Impact Charlie and Alice both create a lock, with Alice's lock being longer than Charlie's. Charlie then delegates to Alice. At this point, if Charlie wants to unlock his tokens he can call withdraw or quitLock, but not with a delegation in place see 1, 2, so h...

6.7AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/15 12:0 a.m.•9 views

Inconsistent logic of increase unlock time to the expired locks

Lines of code Vulnerability details 2022-08-fiatdao Inconsistent logic of increase unlock time to the expired locks Impact Can not prevent expired locks being extended. Proof of Concept Call function function increaseUnlockTime with an expired lock lockedmsg.sender.end block.timestamp Case 1: if...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/15 12:0 a.m.•9 views

VotingEscrow: Anyone can call the collectPenalty function

Lines of code Vulnerability details Impact In the VotingEscrow contract, anyone can call the collectPenalty function to send penalty tokens to the penaltyRecipient address. However, if the private key of the penaltyRecipient address is compromised, the attacker can immediately call the...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/15 12:0 a.m.•9 views

Bad access control in AdminRole.sol can lead to griefing DoS by front-running when trying to withdraw treasury funds

Lines of code Vulnerability details Proof of concept FoundationTreasury.sol inherits CollateralManagement.sol which has the method function withdrawFundsaddress payable to, uint256 amount external onlyAdmin that can withdraw the whole balance of the treasury to the to address. It can be called on...

7.1AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/15 12:0 a.m.•9 views

Expired locks can still increaseUnlockTime when the locked_.end != msg.sender

Lines of code Vulnerability details Impact Expired locks can still increase their unlock time and the new unlocktime does not factor in the duration the lock was inactive Proof of Concept Users can increase their unlock time via the increaseUnlockTime function. In the increaseUnlockTime function ...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/15 12:0 a.m.•9 views

Wrong logic in increaseUnlockTime() function in case undelegated lock and call _checkpoint()

Lines of code Vulnerability details Impact In increaseUnlockTime function, in case it’s undelegated lock, it calls checkpoint for msg.sender with oldLocked and locked. But actually, these 2 locks oldLocked and locked are the same. It makes the logic in checkpoint function works incorrectly. Proof...

6.9AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/15 12:0 a.m.•9 views

Unsafe casting from int128 can cause wrong accounting of locked amounts

Lines of code Vulnerability details Impact The unsafe casting to int128 variable can cause its value to be different from the correct value. For example in the createLock function, the addition to the locked amount variable is done by locked.amount += int128int256value. In that case, if value is...

6.9AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/15 12:0 a.m.•9 views

_safeMint() should be used rather than _mint() wherever possible

Lines of code Vulnerability details safeMint should be used rather than mint wherever possible Impact In NFTCollections.sol and NFTDropCollection, eventually it is called ERC721 mint. Calling mint this way does not ensure that the receiver of the NFT is able to accept them, making possible to los...

6.7AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/13 12:0 a.m.•9 views

Upgraded Q -> H from 275 [1660349121925]

Judge has assessed an item in Issue 275 as High risk. The relevant finding follows: --- The text was updated successfully, but these errors were encountered: All reactions...

7AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/07 12:0 a.m.•9 views

Incorrect implementation of access control in MIMOProxy:execute

Lines of code Vulnerability details Description There is a function execute in MIMOProxy smart contract. The function performs a delegate call to the user-specified address with the specified data. As an access control, the function checks that either it was called by the owner or the owner has...

7.1AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/07 12:0 a.m.•9 views

vaultOwner Can Front-Run rebalance() With setAutomation() To Lower Incentives

Lines of code Vulnerability details Impact A vaultOwner who is "not confident enough in ourselves to stay up-to-date with market conditions to know when we should move to less volatile collateral to avoid liquidations." They can open their vault to other users who pay attention to the markets and...

6.7AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/07 12:0 a.m.•9 views

The lazy update of _currentProxies results in non-owners being able to execute functions that require owner privileges

Lines of code Vulnerability details Impact In the MIMOProxyRegistry contract, the getCurrentProxy function returns the address of the mimoProxy contract corresponding to the owner's address in currentProxies. function getCurrentProxyaddress owner external view override returns IMIMOProxy proxy...

6.9AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/06 12:0 a.m.•9 views

Community can lose interest because interest was calculated by days instead of seconds

Lines of code Vulnerability details Impact Community's owner lose amount of interest from project up to half of total interest Proof of concept When builder repay any loan amount by function repayLender or community call function lendToProject, function claimInterest in contract Community will be...

6.7AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/06 12:0 a.m.•9 views

Divide before multiply may create unexpected values on interests

Lines of code Vulnerability details Divide before multiply may create unexpected values on interests Impact Solidity integer division might truncate. As a result, performing divide before multiply can sometimes create loss of precision. Details If for example we have an operation: 2/33 The expect...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/06 12:0 a.m.•9 views

Unexpected use of array indexes in HomeFi.sol

Lines of code Vulnerability details Unexpected use of array indexes in HomeFi.sol Impact Elements in array are expected to start from 0 when regular indexes are used, however, cause of the order of operations in the HomeFi.createProject function, the element 0 will never be used as index in...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/06 12:0 a.m.•9 views

Missing upper limit definition in replaceLenderFee() of HomeFi.sol

Lines of code Vulnerability details Missing upper limit definition in replaceLenderFee of HomeFi.sol Impact The admin of the HomeFi contract can set lenderFee to greater than 100%, forcing calls to lendToProject to all projects created in the future to revert. Proof of Concept Using the function...

6.9AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/06 12:0 a.m.•9 views

Project.raiseDispute() doesn't use approvedHashes - meaning users who use contracts can't raise disputes

Lines of code Vulnerability details Impact In case users are using a contract like a multisig wallet to interact with a project, they can't raise a dispute. The sponsors have added the approveHash function to support users who wish to use contracts as builder/GC/SC. However, the...

6.9AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/06 12:0 a.m.•9 views

Project.raiseDispute() might work with the already completed task.

Lines of code Vulnerability details Impact Project.raiseDispute might work with the already completed task. Already completed tasks can't be changed in any cases and it might bring some unexpected outcome when the dispute is approved by fault. Proof of Concept It's impossible to change anything...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/06 12:0 a.m.•9 views

It should never be possible to change the status of a completed task

Lines of code Vulnerability details High Risk Finding Impact In Project.sol, once a task is set as completed by calling function setComplete, the contract pays the subcontractor. Once in this state, in should not be possible to change the task state back to ACTIVE/INACTIVE, because then the same...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/03 12:0 a.m.•9 views

AxelarAuthWeighted - Can set operators to same values to override OLD_KEY_RETENTION

Lines of code Vulnerability details Impact It is possible to transfer operatorship to the same operators by simply doubling the values of the newWeights array and newThreshold value. This could be used by newly appointed operators to invalidate all previous operators and thus invalidate the...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/03 12:0 a.m.•9 views

Anyone can receive tokens

Lines of code Vulnerability details Impact As long as there is token balance or WETH in ReceiverImplementation contract, anybody can receive tokens or weth by making a call to AxelarDepositService.nativeUnwrap with their address as recipient Tools Used Manual review Recommended Mitigation Steps...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/02 12:0 a.m.•9 views

Attacker can empty vaults

Lines of code Vulnerability details Impact Both MIMOEmptyVault and MIMOLeverage contracts share same signature/definition, an attacker can gain control of EmptyVault contract, issue a flash loan, and empty the vaults. Proof of Concept See the test below. In below test, EmptyVault contract is...

7.1AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/01 12:0 a.m.•9 views

The function _transferFrom doesn't work

Lines of code Vulnerability details In VoteEscrowDelegation.sol L242, the function removeDelegation is called externally with the syntax this., but that external call changes the msg.sender. So in the function removeDelegation, msg.sender will be the contract itself, not the user. But this functi...

6.9AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/01 12:0 a.m.•9 views

_writeCheckpoint not working correctly if oldCheckpoint.fromBlock == block.number

Lines of code Vulnerability details Impact function writeCheckpoint uint256 toTokenId, uint256 nCheckpoints, uint256 memory delegatedTokenIds internal requiredelegatedTokenIds.length 0 && oldCheckpoint.fromBlock == block.number oldCheckpoint.delegatedTokenIds = delegatedTokenIds; else...

6.9AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/01 12:0 a.m.•9 views

Malicious user can cause complete loss of function in AxelarAuthWeighted.sol by matching validators and weights to a previous epoch

Lines of code Vulnerability details Impact Complete loss of function for both AxelarAuthWeighted.sol and AxelarGateway.sol Proof of Concept if epochForHashnewOperatorsHash 0 revert SameOperators; AxelarAuthWeighted.soltransferOperatorship reverts in L76 if epochForHashnewOperatorHash != 0. This...

6.5AI score
Exploits0
Code423n4
Code423n4
•added 2022/08/01 12:0 a.m.•9 views

Wrong arithmetic operation upon filling a bid order, lead to lost amount of ether on user funds

Lines of code Vulnerability details Functions GolomTrader.solfillBid... and GolomTrader.solfillCriteriaBid... used to fill a signed order Golom order.orderType = 1 or = 2 by the buyer after he approved GolomTrader contract some wETH. However, in case that the signed order is of type ERC1155 where...

6.7AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/19 12:0 a.m.•9 views

[PNM-004] An additional domain can be registered for free

Lines of code Vulnerability details Description The ETHRegistrarController added new functionality to support set multiple records while registering a ETH 2LD. It uses the following code to support this functionality. function setRecords address resolver, bytes32 label, bytes calldata data intern...

7AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/19 12:0 a.m.•9 views

Users can skirt fuses on subnodes

Lines of code Vulnerability details Impact If users are granted subnode ownership through setSubnodeRecord or setSubnodeOwner in NameWrapper.sol, and that node is owned by the NameWrapper contract in the ENS registry and the unwrap fuse is not set, then attackers can reset flags and do whatever...

6.7AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/19 12:0 a.m.•9 views

[PNM-002] The expiry of the parent node can be smaller than the one of a child node, violating the guarantee policy

Lines of code Vulnerability details Description By design, the child node's expiry can only be extended up to the parent's current one. Adding these restrictions means that the ENS users only have to look at the name itself's fuses and expiry without traversing the hierarchy to understand what...

7AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/19 12:0 a.m.•9 views

Unchecked Return Value for transfer & transferFrom call

Lines of code Vulnerability details Impact It is good to add a require statement that checks the return value of token transfers or to use something like OpenZeppelin’s safeTransfer/safeTransferFrom unless one is sure the given token reverts in case of a failure. Failure to do so will cause silen...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/18 12:0 a.m.•9 views

It is possible to create fake ERC1155 NameWrapper token for subdomain, which is not owned by NameWrapper

Lines of code Vulnerability details Impact Due to re-entrancy possibility in NameWrapper.transferAndBurnFuses called from setSubnodeOwner and setSubnodeRecord, it is possible to do some stuff in onERC1155Received right after transfer but before new owner and new fuses are set. This makes it...

7.1AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/17 12:0 a.m.•9 views

Reduce the incentive of self liquidation

Lines of code Vulnerability details Reduce the incentive of self liquidation Impact In some situations the borrower may have incentive to self liquidate. For example: May pay less interest Redeem early and reduce the loss or the fee React to abrupt market volitility Other cases to circumvent some...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/17 12:0 a.m.•9 views

Vault blacklisting is required

Lines of code Vulnerability details Impact Add a way to blacklist vault from going in Auction. There may be cases where owner does not want a particular Vault to be Auctioned even if it is undercollateralized as shown in POC. Due to lack of any blacklisting all Vault are treated equally and can g...

6.7AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/16 12:0 a.m.•9 views

User can set auctioneer to address(0) to prevent vault from being liquidated

Lines of code Vulnerability details Impact Vault cannot be liquidated Proof of Concept auction can be called with any address as the 'to' address. A majority of ERC20 tokens will revert if a transfer is initiated to address0, notably, including USDC. Since the auctioneer is paid each time a payme...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/16 12:0 a.m.•9 views

Upgraded Q -> M from 153 [1657934352278]

Judge has assessed an item in Issue 153 as Medium risk. The relevant finding follows: --- The text was updated successfully, but these errors were encountered: All reactions...

7AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/16 12:0 a.m.•9 views

Upgraded Q -> M from 306 [1657954489063]

Judge has assessed an item in Issue 306 as Medium risk. The relevant finding follows: --- The text was updated successfully, but these errors were encountered: All reactions...

7AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/16 12:0 a.m.•9 views

Attacker Can Front-run auction() To Modify Auctioneer Reward Receiver Address

Lines of code Vulnerability details Impact An attacker can front-run the auctioneer’s call to auction with another address to to receive the auctioneer reward instead of the original caller. Proof of Concept 1. Alice wants to liquidate a specific vault. 2. Mallory observes Alice's auction...

6.7AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/15 12:0 a.m.•9 views

IF A SINGLE ORDER FAILS, THE WHOLE FUNCTION REVERTS

Lines of code Vulnerability details Impact If a single order of the orders array fails, the whole function initiate or exit reverts with no information about which was the vulnerable order, the only information given is an Exception with a code of 5 Proof of Concept Tools Used editor Recommended...

6.9AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/15 12:0 a.m.•9 views

Upgraded Q -> M from 417 [1657853118593]

Judge has assessed an item in Issue 417 as Medium risk. The relevant finding follows: --- The text was updated successfully, but these errors were encountered: All reactions...

7AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/15 12:0 a.m.•9 views

Implementation does not exist

Lines of code fd36ce96b46943026cb2dfcb76dfa3f884f51c18/Marketplace/MarketPlace.solL156 Vulnerability details Impact ZcToken.withdraw and ZcToken.redeem will be reverted. Proof of Concept In ZcToken.withdraw and ZcToken.redeem, it calls redeemer.authRedeem. redeemer can be MarketPlace here. But...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/15 12:0 a.m.•9 views

Upgraded Q -> M from 340 [1657877639047]

Judge has assessed an item in Issue 340 as Medium risk. The relevant finding follows: --- The text was updated successfully, but these errors were encountered: All reactions...

7AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/15 12:0 a.m.•9 views

Allowance should always larger or equal to the transferred amount

Lines of code Vulnerability details Impact Detailed description of the impact of this finding. Wrong operators are set. Proof of Concept Provide direct links to all referenced code in GitHub. Add screenshots, logs, or any other relevant proof that illustrates the concept. Line 111 - 115 if allowe...

7AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/15 12:0 a.m.•9 views

Accidentally cancel order

Lines of code Vulnerability details Accidentally cancel order Impact Some market maker's limit order might be accidentally cancelled, and has to be resubmitted again. If the user did not do this on purpose, without knowing the fact that the order has been cancelled, it may lead to unexpected...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/14 12:0 a.m.•9 views

Proposal commitment takes all fractional balance in Migration contract

Lines of code Vulnerability details Impact The Migration contract holds all fractional token balance of all proposals. Let's suppose a single vault has multiple proposals going on, and one gets committed. If the target price is satisfied, then a buyout starts // Checks if the current price is...

6.9AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/14 12:0 a.m.•9 views

fractionPrice precision can be lost if fractional tokens supply is high enough

Lines of code Vulnerability details Buyout's start now determine fractional token price by dividing native tokens amount by total supply number. Whenever the supply is high enough the precision can be lost, leading to severe losses to buyout proposer as his staked fractional tokens can be valued ...

6.7AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/14 12:0 a.m.•9 views

# an attacker can block stuff from the users from being able to do a buyout or sell fractoins or just main functions ,causing grief of users money and time

Lines of code Vulnerability details details uint256 endTime = startTime + PROPOSALPERIOD; if block.timestamp endTime 1.end time is almost block.timestamp so when an user calls this function 2. an attacker can blockstuff and cause the main functions not to happen maybe causing the...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/14 12:0 a.m.•9 views

It is possible to burn someone's vault tokens

Lines of code Vulnerability details Impact It is possible to burn someone's vault tokens. Exploit Scenario Let's say Alice and Bob have some vault tokens. For some reason, Bob didn't grab an ice-cream for Alice, therefore Alice wanted to revenge for that. So she decided to burn Bob's vault tokens...

6.9AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/14 12:0 a.m.•9 views

Buyout Module: ethBalance is not properly updated

Lines of code Vulnerability details Impact HIGH - Assets can be stolen directly. An attacker can steal eth from buyout module Proof of Concept proof of concept1: testCashSharepoc proof of concept2: testCashRepeatpoc The proof of concept1 shows that the same amount of fractions will result in...

6.8AI score
Exploits0
Code423n4
Code423n4
•added 2022/07/14 12:0 a.m.•9 views

User can block migration actions by starting buyout process

Lines of code Vulnerability details Impact All migration actions such as propose, join, leave, and commit require that the pool's buyout state is INACTIVE. At any point, a user can call buyout.Start to start the buyout process which will change the buyout state to LIVE. Proof of Concept...

6.8AI score
Exploits0
Total number of security vulnerabilities5000