Incorrect interface
Last updated
Last updated
A contract interface defines functions with a different type signature than the implementation, causing two different method id's to be created. As a result, when the interface is called, the fallback method will be executed.
The vulnerability here is that the interface could be incorrectly defined.
let's see an example:
takes an uint in Bob.sol but
a int in Alice.sol.
The two interfaces will produce two differents method IDs. As a result, Bob will call the fallback function of Alice rather than the set function of Alice.