BypassContractCheck
有时候合约通过查看地址的字节码大小来“检查”地址是否是智能合约。外部拥有的帐户(常规钱包)没有任何字节码,比如:
有时候合约通过查看地址的字节码大小来“检查”地址是否是智能合约。外部拥有的帐户(常规钱包)没有任何字节码,比如:
现实世界的智能合约经常对其他智能合约进行外部调用。智能合约审计员或攻击者必须始终检查这些外部调用,以查看是否存在允许他们在交易中重新输入目标合约并利用。
调用外部智能合约有两种方式:1)通过接口定义调用函数; 2)使用.call方法。如下图所示