在审计智能合约的过程中,我发现一个很普遍的误区:很多开发者看到合约加了 nonReentrant,就认为重入问题已经解决了。本文通过两个真实案例,讲解两种 nonReentrant 失效的场景——Balance Diff 模式下的外部调用注入,以及跨合约只读重入。