From 5d26b5c84243600f1eaee467870c2834e90286c0 Mon Sep 17 00:00:00 2001 From: bt3gl <1130416+bt3gl@users.noreply.github.com> Date: Tue, 21 Jun 2022 17:08:54 -0700 Subject: [PATCH] Add notes on reentrancy --- Smart-Contract-Security/reentrancy-notes.md | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/Smart-Contract-Security/reentrancy-notes.md b/Smart-Contract-Security/reentrancy-notes.md index fcbc2f4..3f356e4 100644 --- a/Smart-Contract-Security/reentrancy-notes.md +++ b/Smart-Contract-Security/reentrancy-notes.md @@ -1 +1,18 @@ -## Notes on Reentrancy +## Reentrancy + + +
+ +* When a contract calls an external function, that external function may itself call the calling function. +* To prevent this attack, a contract can implement a lock in storage that prevents re-entrant calls. + +
+ +### References to learn about reentrancy + +
+ +* [Solidity docs](https://docs.soliditylang.org/en/latest/security-considerations.html#re-entrancy) +* [DASP](https://www.dasp.co/#item-1) +* [SWC](https://swcregistry.io/docs/SWC-107) +* [Not so smart contract](https://github.com/crytic/not-so-smart-contracts/tree/master/reentrancy)