Upgradeable ERC20 tokens may open up attack vectors. They may appear inert initially
Vulnerability Detail
However when upgraded they can become ERC777 or become fee on transfer or activate a fee, become rebasing, flash mintable, enact multiple addresses etc after upgrade leading to potential incompatibility with router and opening various attack vectors
Impact
Liquidity pool can be stolen in some ERC777 tokens when expectation was not callback tokens
Router may be incompatible with token with fees on transfer
May be recommended to whitelist tokens and avoid upgradeable tokens
May be recommended to monitor upgradeable tokens and preempt or proactive or react to changes that may introduce fees, callbacks etc
Consider introducing logic that will freeze interactions with the token in question if an upgrade is detected.
MatricksDeCoder
medium
Protocol may not work with upgradeable tokens
Summary
Upgradeable ERC20 tokens may open up attack vectors. They may appear inert initially
Vulnerability Detail
However when upgraded they can become ERC777 or become fee on transfer or activate a fee, become rebasing, flash mintable, enact multiple addresses etc after upgrade leading to potential incompatibility with router and opening various attack vectors
Impact
Liquidity pool can be stolen in some ERC777 tokens when expectation was not callback tokens Router may be incompatible with token with fees on transfer
Code Snippet
Tool used
Manual Review
Recommendation
May be recommended to whitelist tokens and avoid upgradeable tokens May be recommended to monitor upgradeable tokens and preempt or proactive or react to changes that may introduce fees, callbacks etc Consider introducing logic that will freeze interactions with the token in question if an upgrade is detected.
Duplicate of #117