本文作者分享了以太坊虚拟机(EVM)的局限性以及在进行智能合约安全审计时的一些技巧,内容涵盖合约bytecode大小限制、gas优化、setter检查、循环检查、时间戳/区块依赖以及汇编检查等方面,旨在帮助开发者编写更安全、更高效的智能合约,并避免潜在的安全漏洞。
本文探讨了智能合约审计中任意调用(Arbitrary Calls)的风险,指出合约若存在任意调用,则不应包含 transfer/transferFrom/approve 等操作,否则可能导致代币被盗。文章还列举了需要检查的要点、安全假设以及应对措施,强调了防范利用任意调用漏洞的重要性。