PAGES
← all tools
◆ Exploitation & C2

shellfire

v0.16 open-source

An exploitation shell focusing on exploiting command injectioncommand injectionAn attack that makes an application execute operating-system commands supplied through untrusted input. It often happens when input is passed unsafely to a shell. vulnerabilities, eg., LFI, RFI, SSTISSTIServer-Side Template Injection, a vulnerability class where attacker-controlled input is evaluated by a server-side template engine, enabling remote code execution or data exfiltration., etc.

Summary

shellfire is an open-source exploitation shell that helps attackers turn command injection flaws (LFI, RFI, SSTI) into working shells, generating PHP and ASP payloads and driving the exploitation session interactively. It costs nothing to use and runs as a command-line tool, installable via pip or, on Kali, apt. It targets penetration testers and red teamers working through injection bugs by hand, such as during OSCP-style engagements, rather than teams doing automated scanning. It keeps named, shareable configs per target and includes an intercepting HTTP(S) proxy that captures a real browser request and seeds the exploit config directly from it, sparing manual transcription of URLs, cookies, and POST bodies. First committed in 2016 with 3 contributors, it has had 15 releases in the tracked window, the latest 18 days ago, though there have been no commits in the past year.

An exploitation shell focusing on exploiting command injection vulnerabilities, eg., LFI, RFI, SSTI, etc.

How shellfire helps

Which of my parameters is actually vulnerable to command injection once I've found an LFI, RFI, or SSTI bug?

marks the injection point in the URL, cookie, or POST body with a placeholder and sends each payload through that exact spot, so you can watch the response for evidence of execution

Which request out of a captured browsing session was the one that hit the vulnerable endpoint?

lists every request seen by the proxy by index and shows the full detail of any one of them before you commit it to the exploit config

Can I come back to a target I was exploiting yesterday without redoing my setup?

keeps named configs per target so a URL, injection point, and captured request context can be reloaded on startup instead of rebuilt by hand

Will a target that stops responding hang my exploitation session?

applies a timeout to GET, POST, and form requests so a stalled target returns control instead of blocking indefinitely

all 9 features, with the evidence for each →

Languages

Not documented

Features

9 capabilities · 4 backed by code, an API document or a real run

Built from shellfire's releases, docs, README and our own runs. “Seen” marks the month we first spotted a release the vendor didn't date. Group names and tags are our labels.

Compare with peers →

What shellfire offers you

  • Command-line interface4
  • Plugin API support1
  • Plugin system1
All capabilities 9 capabilities
Built-in intercepting proxy shipped Runs an HTTP/HTTPS intercepting proxy that captures real browser sessions and lets users seed exploit configuration directly from captured requests, eliminating manual transcription of URLs, cookies, headers, and POST bodies. 6 releases · 4 other sources · first seen Jul 2026

Also counts toward: Command-line interface

release

  • New proxy show <index> command displays the full details of a captured request. v0.15 · Jul 2026 · source · release history
  • New proxy ca command reprints the CA certificate path needed to intercept HTTPS traffic. v0.15 · Jul 2026 · source · release history
  • Adds a built-in HTTP/HTTPS intercepting proxy (proxy start) to observe real browser sessions without manually transcribing URLs, cookies, or POST bodies. v0.15 · Jul 2026 · source · release history
  • New proxy use <index> command seeds the active exploit config (URL, method, headers, cookies, POST body) directly from a captured request. v0.15 · Jul 2026 · source · release history
  • New proxy clear and proxy stop commands manage captured sessions and shut down the proxy. v0.15 · Jul 2026 · source · release history
  • New proxy list command enumerates all requests captured during a proxy session for review. v0.15 · Jul 2026 · source · release history

example

  • Capture a real authenticated browser request to a vulnerable target and instantly seed your exploit config — no manual URL/cookie transcription needed. (config)> proxy start 8080 (config)> proxy list (config)> proxy use 0 (config)> url https://example.com/view?file={} (config)> shell v0.15 · Jul 2026 · source
  • Inspect the full contents of a captured request before committing it to your exploit config. (config)> proxy show 1 v0.15 · Jul 2026 · source
  • Seed exploit config from captured request (config)> proxy use 0
  • Start intercepting proxy on port 8080 (config)> proxy start 8080
Request timeout configuration shipped Applies a configurable timeout to HTTP requests so the tool does not block indefinitely against unresponsive targets. 5 releases · 1 other source · first seen Aug 2022

release

  • Adds cfg.timeout configuration key (default 30s) to control GET/POST/form request timeouts in the reverse shell payload v0.16 · Aug 2026 · source · release history
  • Adds a configurable request timeout (cfg.timeout, default 30 s) to GET, POST, and form requests so shellfire no longer blocks indefinitely against a hung target. v0.16 · Aug 2026 · source · release history
  • Enables shellfire to use existing Python Requests Sessions as the HTTP client, with dynamic cookie updates and custom overlay support. v0.10 · Sep 2022 · source · release history
  • Adds support for parsing URL-encoded parameters in cookies, headers, and POST data. v0.10 · Sep 2022 · source · release history
  • Enables injection support for POST data, cookies, and headers. v0.8.1 · Aug 2022 · source · release history

example

  • Use an existing authenticated Requests session with shellfire to leverage its cookie handling and headers. import requests import shellfire session = requests.Session() session.headers.update({'Authorization': 'Bearer token'}) result = shellfire.execute(session=session,… v0.10 · Sep 2022 · source
Payload generation verified Generates ready-to-deploy webshell payloads (PHP or ASP.NET) and prints them to stdout. 1 release · 4 other sources · first seen Jul 2022

Also counts toward: Command-line interface

release

docs

  • Exploitation shell for attacking command injection, LFI, RFI, and SSTI vulnerabilities via configurable HTTP payloads.

command line

  • --generate — generate a payload to stdout. PAYLOAD can be "php" or "aspnet". v0.7 · Jul 2022 · command-line history

we ran it

  • The tool printed a PHP webshell wrapped in a boundary string (9453901401ed3551bc94fcedde066e5fa5b81b7ff878c18c957655206fd538da), accepting a cmd GET parameter to run phpinfo, dump… Aug 2026 · the full run

example

  • Launch the shellfire interactive shell shellfire
Version information verified Displays the tool's version string and exits. 2 releases · 2 other sources · first seen Sep 2022

release

  • Introduces config mode for configuring how payloads are processed v0.11 · Mar 2023 · source · release history
  • Adds --version flag to display the current shellfire version. v0.10 · Sep 2022 · source · release history

command line

example

  • Check the installed shellfire version from the CLI. shellfire --version v0.10 · Sep 2022 · source
Plugin-based payload customization shipped Allows users to generate file content for multipart requests using a plugin system rather than only raw paths. 3 releases · 1 other source · first seen Aug 2022

Also counts toward: Plugin API support, Plugin system

release

  • Adds support for specifying a plugin name to generate multipart file content v0.9 · Sep 2022 · source · release history
  • Adds .method form syntax to specify multipart form data handling v0.9 · Sep 2022 · source · release history
  • Introduces a new plugin system for extensibility. v0.8.1 · Aug 2022 · source · release history

example

  • Generate multipart file content using a specific plugin instead of a raw path. shellfire request /upload .method form my-upload-plugin v0.9 · Sep 2022 · source
Debug mode verified Enables a debug flag at startup that prints queries and internal activity during execution. 2 other sources · first seen Jul 2022

Also counts toward: Command-line interface

command line

we ran it

  • The tool started successfully (exit status 0), printed its ASCII-art logo, identified itself as ShellFire v0.15, and dropped into an interactive prompt at (config)> with debug mode active. Aug 2026 · the full run
File upload support shipped Enables uploading local files by path in multipart form data using the @filename syntax. 1 release · 1 other source · first seen Sep 2022

Also counts toward: Command-line interface

release

  • Adds @filename argument to upload a raw file in multipart requests v0.9 · Sep 2022 · source · release history

example

  • Upload a local file by path using the new @filename syntax in a shellfire command. shellfire request /upload .method form @file.zip v0.9 · Sep 2022 · source
Basic fuzzing shipped Provides a fuzzing capability for testing inputs, currently marked as work-in-progress. 1 release · first seen Mar 2023

release

Named configuration profiles verified Loads a named configuration file at startup so users can switch between saved exploit setups. 1 other source · first seen Aug 2022

command line

Lines in monospace are the tool's own words: help text parsed from its source, or an endpoint from its API document. Under release, a line is our summary of a dated release. Under docs, it is quoted from the tool's own documentation or website. Each links back to the source it came from.

Score card

  1. Shipping velocity releases a month, last 12 months
  2. Documentation quality release-notes rubric, 0–100
  3. Breaking-change discipline how rarely a release breaks users, and notice given
  4. Maintenance risk quiet time against its own cadence, maintainers
  5. Innovation & surface new capabilities, API and MCP surface
  6. Community health
  7. Contributor trend distinct committers, this year against last
  8. Maintainer concentration bus factor now against a year ago
  9. Issue backlog trend issues closed per issue opened, 12 months
  10. Responsiveness median time to a maintainer’s first reply

Nine scores for shellfire, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.

Score cards are part of every paid plan.

See plans →

Each score is 0–100 on a published rubric, derived from data this site already shows. A dimension we cannot measure says so — it is never scored 0 and never enters a rank.

How this is scored
  • Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
  • Documentation quality — the release-notes rubric published on the analytics page, unchanged.
  • Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
  • Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
  • Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
  • Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
  • Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
  • Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.

Release-note detail over time

See how much detail shellfire puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.

Checking release-note history…

Explore the full chart →

Releases

6 entries

  1. August 20261
  2. July 20261
  3. March 20231
  4. September 20222
  5. August 20221

    6 entries

    Project health

    Issue, contributor and maintainer activity in unix-ninja/shellfire, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.

    1. Contributors 1 ±0 vs prior 12 months
    2. Maintainers 1 +1 joined · −0 left, last 12 months
    3. Bus factor 1 committers behind half the commits
    4. Community-filed not measured of issues opened, last 12 months
    5. Median time to close not measured issues closed, last 12 months
    6. Open backlog 1 of 3 issues ever filed
    1. Issues opened / month 0 · 0 communitymaintainers
    2. Open backlog 1
    3. Contributors / month 0
    4. Commits / month 0
    5. Stars 172
    Issue themes, last 12 months not measured

    Counts from the project's public repository and git history; no individuals are identified. Maintainers are the committers covering 80% of the last year's commits. how we measure this

    Libraries its release ships

    What its latest release locks, checked against known advisories.

    None of its release's images build from a lockfile we can read.

    Add the badge to your README

    Maintain this project? The badge links readers straight to this page, so they can follow every release here.

    Tracked by Cyber Toolchain Choose a badge style and copy the code →
    browse all tools → score card for your toolchain →