ethpwn


Nameethpwn JSON
Version 1.0.0 PyPI version JSON
download
home_page
SummaryA swiss army knife package to help with ethereum smart contract exploit interaction, designed with CTF challenges in mind. Some might call it a set of pwn tools for ethereum exploitation.
upload_time2024-01-19 06:55:09
maintainer
docs_urlNone
author
requires_python>=3.7
licenseMIT License
keywords ctf debugging ethereum exploits ipdb security smart-contracts testing
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # ethpwn 

[![PyPI](https://img.shields.io/pypi/v/ethpwn?style=flat)](https://pypi.org/project/ethpwn/)
[![License](https://img.shields.io/github/license/Ileriayo/markdown-badges?style=flat)]([https://pypi.org/project/ethpwn/](https://raw.githubusercontent.com/ethpwn/ethpwn/main/LICENSE))
[![Docs](https://img.shields.io/badge/Documentation-gh_pages)](https://ethpwn.github.io/ethpwn/)


<img align="left" width="160"  src="https://github.com/ethpwn/ethpwn/assets/4940271/365a9cc6-14d0-4ae9-8c01-0311ac443cd7">


`ethpwn` is a project inspired by the widely popular CTF exploitation framework pwntools, and the amazing enhanced GDB utility GEF. In other words, ethpwn is all you ever wanted for debugging and interacting with smart contracts on EVM-based blockchains.

More practically, this package includes a kick-ass command line debugger for simulating and re-playing Ethereum transactions (`ethdbg`), and a set of convenient wrappers for many `web3` functionalities that are useful for interacting with smart contracts.



![](./docs/docs/imgs/598565.gif)

## ⚡️ Quick Setup ##

#### Release Installation
```bash
pip install ethpwn
```

#### Developer Installation
Make sure your pip version is >= 23.1.2, then:
```bash
git clone git@github.com:ethpwn/ethpwn.git && cd ./ethpwn && pip install -e .
```

| ❗️ Note                                                              |
|----------------------------------------------------------------------|
| To start out, if you haven't created your global config before, you should run `ethpwn config create` to generate your initial configuration file. This command will interactively prompt you for the most important settings, including the Ethereum node URL to use and wallets you want to use. |

## ⚡️ Jump Start for ethdbg ##
```bash
ethdbg --txid 0x82a11757c3f34c2882e209c6e5ae96aff3e4db7f7984d54f92b02e1fed87e834 --node-url https://mainnet.infura.io/v3/38eb4be006004da4a89315232040e222
```

## 📖 Documentation ##
[![Docs](https://img.shields.io/badge/Documentation-gh_pages)](https://ethpwn.github.io/ethpwn/)


## ⚙️ Currently Supported EVM-based Chains ##

| Chain Name | Chain Id | Supported |
|-------------------|----------|----------|
| mainnet | 1 | ✅ |
| sepolia (testnet) | 11155111 | ✅ |


            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "ethpwn",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "ctf,debugging,ethereum,exploits,ipdb,security,smart-contracts,testing",
    "author": "",
    "author_email": "Lukas Dresel <Lukas-Dresel@noreply.github.com>, Fabio Gritti <degrigis@ucsb.edu>",
    "download_url": "https://files.pythonhosted.org/packages/98/c3/5105143b73360f6e77561a4aa6a1635481fa06a787ebec615c68d55a26d5/ethpwn-1.0.0.tar.gz",
    "platform": null,
    "description": "# ethpwn \n\n[![PyPI](https://img.shields.io/pypi/v/ethpwn?style=flat)](https://pypi.org/project/ethpwn/)\n[![License](https://img.shields.io/github/license/Ileriayo/markdown-badges?style=flat)]([https://pypi.org/project/ethpwn/](https://raw.githubusercontent.com/ethpwn/ethpwn/main/LICENSE))\n[![Docs](https://img.shields.io/badge/Documentation-gh_pages)](https://ethpwn.github.io/ethpwn/)\n\n\n<img align=\"left\" width=\"160\"  src=\"https://github.com/ethpwn/ethpwn/assets/4940271/365a9cc6-14d0-4ae9-8c01-0311ac443cd7\">\n\n\n`ethpwn` is a project inspired by the widely popular CTF exploitation framework pwntools, and the amazing enhanced GDB utility GEF. In other words, ethpwn is all you ever wanted for debugging and interacting with smart contracts on EVM-based blockchains.\n\nMore practically, this package includes a kick-ass command line debugger for simulating and re-playing Ethereum transactions (`ethdbg`), and a set of convenient wrappers for many `web3` functionalities that are useful for interacting with smart contracts.\n\n\n\n![](./docs/docs/imgs/598565.gif)\n\n## \u26a1\ufe0f Quick Setup ##\n\n#### Release Installation\n```bash\npip install ethpwn\n```\n\n#### Developer Installation\nMake sure your pip version is >= 23.1.2, then:\n```bash\ngit clone git@github.com:ethpwn/ethpwn.git && cd ./ethpwn && pip install -e .\n```\n\n| \u2757\ufe0f Note                                                              |\n|----------------------------------------------------------------------|\n| To start out, if you haven't created your global config before, you should run `ethpwn config create` to generate your initial configuration file. This command will interactively prompt you for the most important settings, including the Ethereum node URL to use and wallets you want to use. |\n\n## \u26a1\ufe0f Jump Start for ethdbg ##\n```bash\nethdbg --txid 0x82a11757c3f34c2882e209c6e5ae96aff3e4db7f7984d54f92b02e1fed87e834 --node-url https://mainnet.infura.io/v3/38eb4be006004da4a89315232040e222\n```\n\n## \ud83d\udcd6 Documentation ##\n[![Docs](https://img.shields.io/badge/Documentation-gh_pages)](https://ethpwn.github.io/ethpwn/)\n\n\n## \u2699\ufe0f Currently Supported EVM-based Chains ##\n\n| Chain Name | Chain Id | Supported |\n|-------------------|----------|----------|\n| mainnet | 1 | \u2705 |\n| sepolia (testnet) | 11155111 | \u2705 |\n\n",
    "bugtrack_url": null,
    "license": "MIT License",
    "summary": "A swiss army knife package to help with ethereum smart contract exploit interaction, designed with CTF challenges in mind. Some might call it a set of pwn tools for ethereum exploitation.",
    "version": "1.0.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/ethpwn/ethpwn/issues",
        "Homepage": "https://github.com/ethpwn/ethpwn"
    },
    "split_keywords": [
        "ctf",
        "debugging",
        "ethereum",
        "exploits",
        "ipdb",
        "security",
        "smart-contracts",
        "testing"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cf359f366b109a9be9d3553cb88beabcf0e8febbe0e60e331bb18898cf4ac4e0",
                "md5": "e08287e2dd119ac891ced94f58b22d53",
                "sha256": "8a95c60e211e11ece6da2190f253a2f34ece9f91e608041ca0b6321536fea185"
            },
            "downloads": -1,
            "filename": "ethpwn-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e08287e2dd119ac891ced94f58b22d53",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 113845,
            "upload_time": "2024-01-19T06:55:05",
            "upload_time_iso_8601": "2024-01-19T06:55:05.268335Z",
            "url": "https://files.pythonhosted.org/packages/cf/35/9f366b109a9be9d3553cb88beabcf0e8febbe0e60e331bb18898cf4ac4e0/ethpwn-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "98c35105143b73360f6e77561a4aa6a1635481fa06a787ebec615c68d55a26d5",
                "md5": "36bcc697d8b31597be5c2a0a06c45027",
                "sha256": "295209b70bbef480418d1a2800d0e82e8c03bd3aea402670b71b679cf0df4dc5"
            },
            "downloads": -1,
            "filename": "ethpwn-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "36bcc697d8b31597be5c2a0a06c45027",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 27629014,
            "upload_time": "2024-01-19T06:55:09",
            "upload_time_iso_8601": "2024-01-19T06:55:09.150572Z",
            "url": "https://files.pythonhosted.org/packages/98/c3/5105143b73360f6e77561a4aa6a1635481fa06a787ebec615c68d55a26d5/ethpwn-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-19 06:55:09",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ethpwn",
    "github_project": "ethpwn",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "ethpwn"
}
        
Elapsed time: 0.17360s