Lucene search
+L
Code423n4Recent

10190 matches found

Code423n4
Code423n4
added 2023/10/26 12:0 a.m.14 views

OFAC sanctioned lender can frontrun nukeFromOrbit with a transfer of his funds

Lines of code Vulnerability details Impact In order to prevent a sanctioned lender for example by OFAC to poison an entire market, a function has been developed to block and transfer the sanctionned user's funds to an escrow contract. This escrow contract can be released if borrower decides so by...

7.2AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.12 views

Lack of access control on overrideSanction(), any user can override sanctioned address

Lines of code Vulnerability details Impact Without proper access control, any address can call the overrideSanction function and override the sanction status of an account. This can potentially be exploited by malicious actors to bypass sanctions and carry out unauthorized actions, putting the...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.13 views

potential griefing attack on deployMarket

Lines of code Vulnerability details Impact potential griefing attack on deployMarket by malicious borrowers Proof of Concept when borrwer try to deployMarket , malicious borrower see paramenters of the deploymarket in transaction pool, take those parameters and deploy market by front runnning...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.18 views

wrong implementation of bipDiv.

Lines of code Vulnerability details Impact Detailed description of the impact of this finding. Proof of Concept Provide direct links to all referenced code in GitHub. Add screenshots, logs, or any other relevant proof that illustrates the concept. Tools Used Recommended Mitigation Steps function...

7.2AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.13 views

Borrower escapes delinquency penalty if no intermittent action happens

Lines of code Vulnerability details Impact Once the market goes below required reserves, it is marked as delinquent only if an updateState action happens. Actions like market.updateState, executeWithdrawal, deposit, etc. have to happen else the protocol remains unaware of the market's delinquency...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.98 views

Solmate safetransfer and safeTransferFrom do not check the code size of the token address, which may lead to loss of funds

Lines of code Vulnerability details Impact WildcatMarketWithdrawals, WildcatMarketController, WildcatMarket contracts use Solmate safetransfer and safeTransferFrom functions. However, these functions don't check the existence of code at the token address. This is a known issue while using solmate...

7.4AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.14 views

DoS Any Escrow by Frontrunning Creation with a Codehash Change

Lines of code Vulnerability details Impact Any escrow contract can be DoSed by sending a 1 wei transaction to the escrow address that will be created for a user. When an account has no code and has never been interacted with, the codehash will be bytes320. This will result in escrow creation...

7.2AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.12 views

A borrower cannot redeploy a controller if their previous controller was removed

Lines of code Vulnerability details Impact A controller can be removed after it was initially deployed in cases where it was created with wrong parameters. However, in the case that a borrower's controller is removed they would be unable to redeploy another controller constraining them to use the...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.12 views

Usury from simple mistake

Lines of code Vulnerability details Impact A borrower making a simple mistake might be forced to pay an extortionate interest rate for en extended period of time. Severity rating I was hovering between Medium and High on this one. Medium because it is based on a user mistake. On the other hand, t...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.13 views

Borrower cannot change the maximum supply

Lines of code Vulnerability details Impact Maximum supply cannot be increased and by extension the max deposit limit too. Proof of Concept WildcatMarketConfig@setMaxTotalSupply is only callable by the WildcatMarketController but is not used anywhere there. WildcatMarketConfig.sol function...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.16 views

Sanctionned funds keep earning APR, and protocol earning fees on these funds

Lines of code Vulnerability details Impact When a user is sanctioned, if he has a scaledBalance not in the withdrawal queue, calling the nukeFromOrbit function will send sanctioned funds to an escrow contract, and these funds will keep earning APR. This is because when a deposit is executed, the...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.6 views

New approved lender can receive other peoples accrued interest fees

Lines of code Vulnerability details A new approved Lender by the borrower, getting into the market at the right time can make huge profits in the market due to activity in the market of others, and accruing interest, which make the lender withdraw immediately, without being in the market for a lo...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.10 views

Swapped parameters when calling createEscrow()

Lines of code Vulnerability details Impact getEscrowAddress returns the wrong WildcatSanctionsEscrow. Borrower can steal lender's escrowed funds. Proof of concept createEscrow and getEscrowAddress both take the parameters borrower, account, asset, in that order, as defined in...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.17 views

Uninitialized State Variables

Lines of code Vulnerability details Impact in The resetTmpMarketParameters function is an internal function, which means it can only be called from within the WildcatMarketController contract itself. If a child contract inherits from WildcatMarketController and calls resetTmpMarketParameters befo...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.12 views

Based on the functionality, if the releaseEscrow() function can be called by unauthorized entities, it can lead to potential misuse or unintended transfer of assets.

Lines of code Vulnerability details Impact The absence of access control on the releaseEscrow function presents a significant security risk. As it currently stands, any external actor or contract can invoke this function, which may result in the unintended release of escrowed funds. This opens up...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.14 views

Interest accumulation linked to state updates may leak value

Lines of code Vulnerability details Impact The protocol compounds interest on every call that updates the state. This is an intentional design choice. However, this does mean that the total return for the lender, and, conversely, the cost of debt for the borrower, can be influenced by the frequen...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.22 views

_blockAccount doesn’t transfer asset correctly getting portion of funds locked permanently

Lines of code Vulnerability details Description When blockAccount is called and the account that is getting blocked has balance in the market, escrow contract is created and balance of the user is transferred to this contract by updating accounts mapping. When the account is unsanctioned, the...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.19 views

DoS Any Market by Frontrunning Creation with a Codehash Change

Lines of code Vulnerability details Impact Any market contract can be DoSed by sending a 1 wei transaction to the market address that will be created for a user. When an account has no code and has never been interacted with, the codehash will be bytes320. This will result in market creation...

7.2AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.11 views

Malicious initial reserve ratio can be used to rug lenders collateral

Lines of code Vulnerability details Impact Wildcat protocol provides borrowers the ability to adjust annual interest BIPs after market deployment. In order to protect lenders the protocol increases the reserve ratio of ratio of the market to 90% for two weeks. The increased reserve ratio allows...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.13 views

Early market adopters can force delinquency to game borrowers

Lines of code Vulnerability details Impact When new markets are created, a lender can call WildcatMarket.updateState. This will trigger a call to WildcatMarketBase.writeState, the check on line 449 state.liquidityRequired totalAssets will return false since totalAssets starts as 0. This will...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.12 views

Incorrect Order of Operations in nukeFromOrbit Function

Lines of code Vulnerability details Impact the nukeFromOrbit function, the nonReentrant modifier is correctly applied. This means that the function cannot be reentered while it is already being executed the problem is that The blockAccountstate, accountAddress function is called before...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.28 views

Incompatibility with Rebase tokens

Lines of code Vulnerability details Impact Borrowers can choose whatever token they want to be the underlying token for a market. The problem comes when those tokens are Rebasing tokens such as Ampleforth. The balances of those tokens are changed rebased by a certain algorithm depending on the...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.22 views

potential DOS cause of rounding up at rayMul and rayDiv

Lines of code Vulnerability details Impact In rayMul and rayDiv , there is always rounding up ,cause of that , there will be potential DOS Proof of Concept function normalizeAmount MarketState memory state, uint256 amount internal pure returns uint256 return amount.rayMulstate.scaleFactor; functi...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.13 views

An underflow occurred during the token transfer.

Lines of code Vulnerability details Impact An underflow can occur during a token transfer when there is insufficient allowance. Proof of Concept function transferFrom address from, address to, uint256 amount external virtual nonReentrant returns bool uint256 allowed = allowancefrommsg.sender; //...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.20 views

DoS Any Controller by Frontrunning Creation with a Codehash Change

Lines of code Vulnerability details Impact Any controller contract can be DoSed by sending a 1 wei transaction to the controller address that will be created for a user. When an account has no code and has never been interacted with, the codehash will be bytes320. This will result in controller...

7.2AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.32 views

No Create2 Contract Deployment Check can prevent a borrower from deploying contracts from a factory if deployment fails

Lines of code Vulnerability details Descripion When a contract is deployed using Create2 the deployment can fail without causing a revert. The following conditions can cause it to not revert: 1. A contract already exists at the destination address. 2. Insufficient value to transfer. 3. Sub contex...

7.5AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.11 views

Borrower cannot close their market

Lines of code Vulnerability details The WildcatMarket::closeMarket cannot be executed by a borrower because the WildcatMarketController contract does not implement any function calling it. Proof of Concept The closeMarket is supposed to be called by a borrower to close their market, set the...

7.3AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/26 12:0 a.m.15 views

Permanent DoS on Market Creation Failure

Lines of code Vulnerability details Impact Permanent DoS of creating a market if anything fails in the market constructor. Within a create2 call, instead of failing when a revert occurs in the constructor being run, it just returns address0. If this occurs within a market that's being created the...

7.2AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.14 views

M-07 Unmitigated

Lines of code Vulnerability details Mitigation of M-07: Issue NOT fully mitigated with ERROR Mitigated issue M-07: Lack of access control and value validation in the reward flow exposes functions to public access The issue was that anyone can deposit rewards to AfEth, and that if AfEth or...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.10 views

Unauthorized Ownership Transfer and Asset Withdrawal Vulnerability in quitSystem Function

Lines of code Vulnerability details Impact The quitSystem function in the contract is vulnerable to unauthorized asset control. This vulnerability arises when an allowed user, rather than the owner, exploits their permissions to perform unauthorized actions. Specifically, the allowed user can...

7.2AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.17 views

During Safe Transfer, the Receiving User Loses Control of the Safe, Resulting in the Safe Being Lost

Lines of code Vulnerability details Impact Assuming a user wants to transfer their safe NFT to another user, post transfer Vault721::afterTokenTransfer is triggered. This function in turn calls the IODSafeManager::transferSAFEOwnership function to complete the transfer. The problem here is, that...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.8 views

afETH.withdrawTime() still returns an invalid withdrawTime.

See the markdown file with the details of this report here. --- The text was updated successfully, but these errors were encountered: All reactions...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.16 views

M-05 Unmitigated

Lines of code Vulnerability details Mitigation of M-05: Issue NOT mitigated Mitigated issue M-05: Reward sandwiching in VotiumStrategy The issue was that exposure to the benefits of the VotiumStrategy might be unfairly time-weighted. There were two aspects mentioned: voting power and rewards. I d...

6.8AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.10 views

[H-02] Mitigation error: Null Votium withdrawal requests are queued last

Lines of code Vulnerability details Description When a request to withdraw is placed such that VotiumStrategy.requestWithdraw0 is called, this queues it to the end of all previous withdrawal requests as if an infinitesimal amount is to be withdrawn, incurring an artificially prolonged withdrawal...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.14 views

When Creating a Safe Via ODSafeManager::openSAFE, the User Proxy Is Wrongly Set As the Safe Owner

Lines of code Vulnerability details Impact We can observe from Vault721::mint function that the input usr in ODSafeManager::openSAFE function needs to be a previously built proxy of the user address. function mintaddress proxy, uint256 safeId external requiremsg.sender == addresssafeManager, 'V72...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.9 views

M-01 Unmitigated

Lines of code Vulnerability details Mitigation of M-01: Issue not mitigated Link to Issue: code-423n4/2023-09-asymmetry-findings55 Comments The sponsor has acknowledged the issue but decided to not mitigate it. Acknowledged and did not fix, plan to upgrade a fix in the future Assessed type Other...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.20 views

[ADRIRO-NEW-H-01] VotiumStrategy withdrawal can still be executed with minimal delay

Lines of code Vulnerability details Summary Within the mitigation changes, the sponsor has introduced a minimum delay of one epoch for VotiumStrategy withdrawals, in order to mitigate different issues related to the exposure to CVX . The fix contains an edge case which could still be used to make...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.16 views

On repaying and taking collateral there is 2 times modifying tokenCollateral[cType][account/sourse]this lead to a problem

Lines of code Vulnerability details Impact when you are repaying your tokenCollateralcTypeaccount is modified 2 times, which leads to incorrect data Proof of Concept On calling repayAllDebtAndFreeTokenCollateral or repayDebtAndFreeTokenCollateral first you are calling modifySAFECollateralization...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.11 views

SafeID's ownership is not checked properly in BasicAction.generateDebt()

Lines of code Vulnerability details Impact the ownership of safe's id passed in BasicAction.generateDebt is never checked which can lead to unexpected results Proof of Concept BasicAction.generateDebt has the following code - function generateDebt address manager, address taxCollector, address...

7.3AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.17 views

repayAllDebt joins system tokens to the proxy not to the Safe contract

Lines of code Vulnerability details Impact repayAllDebt now calls joinSystemCoins with dest = addressthis, which in case a proxy makes a delegated call to this function will cause the user's tokens to be transferred to its proxy, then in CoinJoin.join it will transfer internal coins from CoinJoin...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.14 views

use of correct modifier

Lines of code Vulnerability details Impact Detailed description of the impact of this finding. Proof of Concept Provide direct links to all referenced code in GitHub. Add screenshots, logs, or any other relevant proof that illustrates the concept. Tools Used Recommended Mitigation Steps function...

7.2AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.9 views

[ADRIRO-NEW-M-05] Rewarder should not be allowed to apply rewards on CVX tokens

Lines of code Vulnerability details Summary The rewarder role should not be allowed to modify the balance of CVX tokens when applying rewards, otherwise the internal CVX balance tracking could get out of sync with major consequences for the protocol. Impact The introduction of internal CVX balanc...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.10 views

Wrong validation check for caller of some functions

Lines of code Vulnerability details Impact When an attacker call some functions which lacks validation check for msg.sender, it causes unexpected interactions. Proof of Concept The AccountingEngine.solsettleDebt function and AccountingEngine.solsettleDebtfuntion is as follows. function...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.19 views

Inherit a wrong contract - Authorizable.sol.

Lines of code Vulnerability details Risk rating high Title Inherit a wrong contract - Authorizable.sol. Vulnerability Details Impact By an untrust account, the system could be invaliable. Proof of Concept The Authorizable.soladdAuthorization and Authorizable.solremobeAuthorization functions as...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.11 views

M-09 Unmitigated

Lines of code Vulnerability details Mitigation of M-09: Issue not mitigated Link to Issue: code-423n4/2023-09-asymmetry-findings31 Comments The sponsor has acknowledged the issue but decided to not mitigate it. Acknowledged and did not fix, plan to upgrade a fix in the future --- The text was...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.13 views

M-08 Unmitigated

Lines of code Vulnerability details Lines of code Vulnerability details Mitigation of M-08: Issue mitigated with ERROR Mitigated issue M-08: Inflation attack in VotiumStrategy The issue was that the price of afEth and of vAfEth could be inflated by donating underlying assets. Mitigation review Al...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.11 views

Missing functionality required to allow others access to safe

Lines of code Vulnerability details Impact Missing functionality prevents ODProxy from granting other accounts access to the safe. In order to grant access to the particular safe for which specific instance of ODProxy is the owner, it is necessary to call allowSAFE on ODSafeManager. This method...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.9 views

Function _joinCollateral calculates variable wei incorrectly for collateral tokens that do not have 1e18 decimals

Lines of code Vulnerability details Impact Collateral tokens with decimals other than 1e18 will not work. Proof of Concept Function joinCollateral in CommonActions.sol, which is inherited by BasicActions.sol in scope calculates the collateral token amount wrongly for all non 1e18 decimal tokens...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.25 views

M-05 Unmitigated

Lines of code Vulnerability details Original Issue M-05: Reward sandwiching in VotiumStrategy Details The issue outlined above is about making instant profit by depositing before the boost happens and withdrawing right after the boost occurs. Those who locked their positions for 16+ weeks get the...

6.8AI score
SaveExploits0
Code423n4
Code423n4
added 2023/10/25 12:0 a.m.9 views

Wrong accounting used in auctionDebt in AccountingEngine contract

Lines of code Vulnerability details Impact As the title suggests, the accounting in auctionDebt function is incorrect. In this particular section of the code: uint256 coinBalance = safeEngine.coinBalanceaddressthis; uint256 debtBalance = safeEngine.debtBalanceaddressthis; if...

7AI score
SaveExploits0
Total number of security vulnerabilities10190