Skip to main content

🚀 GTFOBins CLI

Python License Stars

Overview

GTFOBins CLI is a command-line interface for GTFOBins, providing instant access to Unix binary exploitation techniques. This tool helps security professionals and system administrators identify and understand how legitimate Unix binaries can be misused to bypass security restrictions.

Key Features

  • 🔍 Quick Binary Lookup: Search exploitation techniques for any Unix binary
  • 🔎 Fuzzy Search: Find binaries with partial name matching
  • 🏷️ Filter by Type: Filter binaries by exploitation type (shell, suid, sudo, etc.)
  • 🖥️ Interactive Mode: fzf-style autocomplete for quick navigation
  • 🎨 Syntax Highlighting: Color-coded output for better readability
  • 📦 Offline Database: No internet connection required
  • 🚀 Instant Access: Fast, local searches with zero latency
  • 💻 Cross-Platform: Works on Linux, macOS, and Windows

Installation

pipx install git+https://github.com/kasem545/gtfobins-cli

From Source

git clone https://github.com/kasem545/gtfobins-cli
cd gtfobins-cli
pip install -e .

Usage

Basic Usage

gtfo <binary>

Examples

# Search for sudo exploitation techniques
gtfo sudo

# Search for python exploitation techniques
gtfo python

# Fuzzy search binaries by name
gtfo -s pyth

# Filter binaries by exploitation type
gtfo -f shell
gtfo -f suid
gtfo -f sudo

# Show only specific technique for a binary
gtfo python -f sudo

# Interactive mode with autocomplete
gtfo -i

# List all available binaries
gtfo -l

# Check version
gtfo --version

Command Line Options

Option Description
binary Unix binary to search for exploitation techniques
-s, --search TERM Fuzzy search binaries by name
-f, --filter TYPE Filter binaries by exploitation type
-i, --interactive Interactive mode with autocomplete
-l, --list List all available binaries
-v, --version Show version
-h, --help Show help message

Exploitation Categories

The tool provides information about various exploitation techniques:

  • Shell: Spawn an interactive shell
  • Command: Execute system commands
  • Reverse Shell: Establish a reverse shell connection
  • Non-interactive Reverse Shell: Create a non-interactive reverse shell
  • Bind Shell: Set up a bind shell
  • Non-interactive Bind Shell: Create a non-interactive bind shell
  • File Upload: Transfer files to the target system
  • File Download: Extract files from the target system
  • File Write: Write data to files
  • File Read: Read file contents
  • Library Load: Load shared libraries
  • SUID: Exploit SUID permissions
  • Sudo: Exploit sudo permissions
  • Capabilities: Exploit Linux capabilities
  • Limited SUID: Work with limited SUID permissions

Screenshots

Development

Setting up Development Environment

# Clone the repository
git clone https://github.com/kasem545/gtfobins-cli
cd gtfo

# Create virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install in development mode
pip install -e .

Running Tests

# Install test dependencies
pip install pytest pytest-cov

# Run tests
pytest

Contributing

Contributions 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.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Credits

  • Binary exploitation data from GTFOBins
  • Original GTFOBins project contributors
  • Created by t0thkr1s
  • maintained by kasem545

Security Notice

⚠️ Important: This tool is designed for authorized security testing and educational purposes only. Users must:

  • Only use this tool on systems they own or have explicit permission to test
  • Comply with all applicable laws and regulations
  • Understand that misuse of this tool may result in criminal charges

The developers assume no liability and are not responsible for any misuse or damage caused by this tool.

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

Support

If you encounter any issues or have questions:

  • Open an issue
  • Check existing issues for solutions
  • Consult the GTFOBins website for additional information

Metadata

Release files for gtfobins-cli 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gtfobins-cli 1.1.0
File Size Uploaded
gtfobins_cli-1.1.0.tar.gz 423.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gtfobins-cli 1.1.0
File Interpreter ABI Platform
gtfobins_cli-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 953.2 kB

Release files / gtfobins_cli-1.1.0.tar.gz

Download URL gtfobins_cli-1.1.0.tar.gz
Size 423.3 kB
Tags Source
SHA-256 checksum
How to use checksums
5527b6ea083a31d1dc57408fc91729c1e6ccde32b3ae43bf2b0a83a81198f05f
BLAKE2b-256 checksum
How to use checksums
f0f65d8f94b50e70056ea0bdf22f36be7a8fffb0d996cf90aa1f4c1214396f8e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 4, 2026.

Transparency log

Release files / gtfobins_cli-1.1.0-py3-none-any.whl

Download URL gtfobins_cli-1.1.0-py3-none-any.whl
Size 529.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5ad4b74fdc6cafdaa3717dd5bf3379b0d7327d9981baf79c48a3d88442baa520
BLAKE2b-256 checksum
How to use checksums
4363924a121ce315191a8507595f9e70a0604c0d7a3ba4271d9bf13b3f12e141
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 4, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page