OpenViSTAI · Agents · Blockchain · Crypto
Menu
Developer Tools

Ethereum Security

Ethereum Security is an open-source JavaScript repository of Mocha tests that demonstrate Ethereum smart-contract vulnerabilities alongside fixes, with Truffle instructions for running and debugging the examples.

Independent OpenViST project profile, based on linked sources.

Ethereum Security — OpenViST project profile in Developer Tools.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use it as a hands-on study reference when learning about the listed vulnerability patterns or exploring tests and transaction debugging with Truffle.

Who it is for

  • Developers learning how Ethereum smart-contract vulnerabilities and fixes are represented in tests.
  • Readers who want to run or inspect the examples using Truffle and a local test blockchain.

Documented uses

  • Study examples of common smart-contract bug classes and their fixes.
  • Run the documented test suite or an individual test with Truffle.
  • Follow the documented local-chain workflow to inspect RPC activity and debug a transaction.
Before you choose

Requirements & limits

The public repository lists a GPL-3.0 license.

  • The project is a developer test repository, not a scanner or deployed security service.
  • The README provides truffle test, an individual-test command, and a local-chain debugging workflow.
  • The README explicitly warns that the included contracts are vulnerable and must not be used.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Run the documented test suite

Run the repository's Mocha tests through Truffle to study its vulnerability and fix examples.

Before you start

  • A local copy of the repository
  • Truffle

Steps

  1. Open the repository in your development environment.

  2. Run truffle test from the project.

Expected outcome

Truffle runs the repository's test suite, which demonstrates security bugs and fixes.

Guide limitations

  • The README warns that the included contracts are vulnerable and must not be used.
  • This guide describes the README's instructions; it is not a report of an executed test.
Source-based practical guide

Configure a local test blockchain for debugging

Follow the README's setup instructions for running the test suite against a local development blockchain and inspecting transaction activity.

Before you start

  • Truffle
  • A local test blockchain
  • The repository's truffle.js configuration file

Steps

  1. Edit truffle.js with the README's development network configuration, including host localhost and port 8545.

  2. Run testrpc and truffle console, or use truffle develop, as described in the README.

  3. Use the console to inspect RPC activity and identify a transaction hash when a transaction was made.

  4. Use truffle debug to inspect a selected transaction.

Expected outcome

The README describes a local debugging workflow for observing RPC calls and examining a transaction.

Guide limitations

  • The instructions do not establish that every test produces a transaction.
  • The example contracts are explicitly marked as vulnerable and must not be used.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
15 October 2026
Original website title
fergarrui/ethereum-security · Official homepage title · retained in its source language