Integer overflow/underflows are surprisingly common in smart contracts, because blockchain applications often compute math over financial data. For many developers, it may be a misconception that Rust is memory-safe so it is free of arithmetic overflow/underflows. This article explains why Rust programs still suffer from arithmetic errors, how these issues affect blockchain security, and how to deal with them in smart contracts.