Giter Club home page Giter Club logo

bricks's Introduction

Bricks

Bricks is a sandbox and instruction manual collection for building smart contract exploits for Ethereum blockchains, designed to help developers think like hackers in a safe, fun environment. Use Bricks to:

  • Build malicious blockchain-based ERC-20 assets
  • Test Re-entry Attacks on Example Exchanges
  • Perform Oracle Manipulation and Race Condition Exploits using example Flash Loan providers and margin platforms.

Requirements

  • Node.js & npm (If you don't have them, don't know, and/or npm command doesn't work in your terminal, install here)
  • Truffle (npm install -g truffle)
  • Ganache (If you don't have it, install here)
  • Basic understanding of how all of these work.

Installation

git clone https://github.com/mikedeshazer/bricks

Bricks requires Node.js v13+ to run properly

Open Your Ganache application and open a workspace, keeping the default settings and using your bricks directory's truffle-config.js file to start the project from within Ganache. This will create a personal blockchain which responds to this particular project.

Run truffle migrate to deploy the smart contracts in the repo and start playing around.

The /contracts/kits/ folder contains all the projects you can work on. Select a project and start in the /before folder to see the code pre-exploits. Look for BrickHint keywords to find hints to add the exploits and make the whole thing come alive in each of the files. You can refer to the /after folder, to see the answers and test, too.

Navigate to the /manuals folder, and select a .md file tied to a particular exploit you would like to build. The /contracts/kits folder contains all the different kits connected to manuals (same name).

Development

Want to contribute? Great! Please send any pull requests to the develop branch.

Todos

  • Add more manuals and kits for users to build stuff

License

MIT

bricks's People

Contributors

kerstentw avatar mikedeshazer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

bricks's Issues

Instruction Manual Markdown Conversion

Appropriate markdown is needed for converting a blog post to a .md file for Github. Essentially:
This file: https://github.com/mikedeshazer/bricks/blob/master/manuals/TrojanCoinAndExchangeManipulation.md

Would look like this:

https://medium.com/@mikedeshazer/flash-loan-reentry-attack-and-dex-oracle-manipulation-exploit-on-ethereum-trojan-coin-bricks-7969820589d7

Images would be added to a media/images folder in the guthub repo, and reference from the readme to show the screenshots.

Code and terminal samples would have appropriate markdown. The lines about how Medium doesnt render -- would be removed and the -- would appear in the examples instead of the long dashes they convert them to.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.