Reentrancy attack is where a function calls another untrusted contract before it functions is done computing its state
The Importance of Smart Contract Auditing in Blockchain Security
Smart contract auditing describes a process of compiling and reviewing of the contract code in order to search for its weaknesses.