|Project Name||Stars||Downloads||Repos Using This||Packages Using This||Most Recent Commit||Total Releases||Latest Release||Open Issues||License||Language|
|OpenZeppelin Contracts is a library for secure smart contract development.|
|Smart Contract Best Practices||6,529||3 months ago||22|
|A guide to smart contract security best practices|
|Capstone||6,264||2||4 hours ago||2||April 12, 2022||349||other||C|
|Capstone disassembly/disassembler framework: Core (Arm, Arm64, BPF, EVM, M68K, M680X, MOS65xx, Mips, PPC, RISCV, Sparc, SystemZ, TMS320C64x, Web Assembly, X86, X86_64, XCore) + bindings.|
|Awesome Solidity||5,801||3 days ago||7|
|⟠ A curated list of awesome Solidity resources, libraries, tools and more|
|Quorum||4,319||2||8 hours ago||200||March 14, 2022||27||lgpl-3.0||Go|
|A permissioned implementation of Ethereum supporting data privacy|
|Meshbird||3,446||2 months ago||January 30, 2016||12||apache-2.0||Go|
|Distributed private networking|
|Manticore||3,371||1||1||7 days ago||723||July 07, 2022||261||agpl-3.0||Python|
|Symbolic execution tool|
|Mythril||3,083||8||3||9 days ago||292||June 20, 2022||92||mit||Python|
|Security analysis tool for EVM bytecode. Supports smart contracts built for Ethereum, Hedera, Quorum, Vechain, Roostock, Tron and other EVM-compatible blockchains.|
|Lighthouse||2,269||6 hours ago||1||December 29, 2021||274||apache-2.0||Rust|
|Ethereum consensus client in Rust|
|Echidna||2,014||6 hours ago||129||agpl-3.0||Solidity|
|Ethereum smart contract fuzzer|
** Definition of a Reentrancy Attack**
Unsafe external call(s) that allow(s) malicious manipulation of the internal and/or associated external contract state(s).
** Types of Reentrancy Attacks**
** Reentrancy Attacks List**
A chronological and (hopefully) complete list of reentrancy attacks to date.
Some of the exploits carried out involve multiple separate transactions as well as multiple victim and exploit contracts. For each attack, I have listed the most affected victim contract, the most critical exploit contract, and the most devastating exploit transaction.
[^1]: We list the attacker's address here for the sake of completeness, but technically the attack was executed with a Near-specific transaction type called "Batch Transaction" and not with a specific exploit contract. [^2]: We list the victim contract, the exploit contract, and the exploit transaction on Arbitrum. However, the same exploit was carried out on Optimism with almost the same amount of loss: Victim contract, Exploit contract, Exploit transaction.