{"library":"ropgadget","title":"ROPgadget","description":"ROPgadget is a Python tool designed to search for ROP (Return-Oriented Programming) gadgets within binary files. It supports various file formats (ELF, PE, Mach-O, Raw) and architectures, including x86, x64, ARM, ARM64, PowerPC, SPARC, MIPS, RISC-V 64, and RISC-V Compressed. Currently at version 7.7, the project is actively maintained with several releases per year addressing bug fixes and adding support for new architectures and features.","language":"python","status":"active","last_verified":"Mon May 18","install":{"commands":["pip install ROPgadget"],"cli":{"name":"ROPgadget","version":"Version:        ROPgadget v7.7"}},"imports":["from ropgadget import main\n# main() # To run the tool programmatically as an application entry point"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"# Analyze a binary for ROP gadgets\nROPgadget --binary /bin/ls --only \"pop|ret\" --depth 3\n\n# Find a ROP chain to execute /bin/sh (example)\n# Note: Actual binaries and gadgets will vary. This is a conceptual example.\n# Assuming a vulnerable binary `vuln` exists in the current directory\nROPgadget --binary ./vuln --ropchain --badbytes \"000a0d\" --rawArch x64 --offset 0x0 --callPreceded","lang":"bash","description":"ROPgadget is primarily a command-line utility. This quickstart demonstrates how to search for common 'pop; ret' gadgets in a binary and how to attempt to generate a ROP chain (though successful chain generation depends heavily on the binary and environment).","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-18","installed_version":"7.7","pypi_latest":"7.7","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":1.7,"avg_import_s":0.23,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"ROPgadget","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.19,"mem_mb":10.4,"disk_size":"28.8M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"ROPgadget","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.7,"import_time_s":0.15,"mem_mb":10.4,"disk_size":"29M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"ROPgadget","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.27,"mem_mb":10.6,"disk_size":"30.7M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"ROPgadget","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.8,"import_time_s":0.25,"mem_mb":10.6,"disk_size":"31M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"ROPgadget","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.25,"mem_mb":10.4,"disk_size":"22.6M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"ROPgadget","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.6,"import_time_s":0.27,"mem_mb":10.4,"disk_size":"23M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"ROPgadget","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.24,"mem_mb":10.7,"disk_size":"22.4M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"ROPgadget","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.6,"import_time_s":0.25,"mem_mb":10.7,"disk_size":"23M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"ROPgadget","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.2,"mem_mb":10.2,"disk_size":"28.3M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"ROPgadget","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.9,"import_time_s":0.18,"mem_mb":10.2,"disk_size":"29M"}]}}