A shell is the only proof that counts.

While most scanners guess which parameters are exploitable, commix confirms by actively exploiting them.

End-to-end.

Detection is where most scanners stop and your afternoon starts. Parameters, cookies and headers are probed until one of them executes, and that injection point becomes an interactive shell for post-exploitation.

Evasive.

Access denied is not a verdict. Multiple tamper scripts rebuild the payload: encoding, casing, whitespace, shell substitution. Chain them until the WAF sees nothing worth blocking. It logs the request; you get a shell.

Thorough.

Getting a shell is only the start. Read and write files, enumerate users, password hashes, privileges and system info, or take the lot in one pass. Whatever the web user reaches, you reach.

Modular.

Write your own modules and bend the tool to the job in front of you. The core is already there: a module is plain Python that reuses it, not a framework to learn.

Fluent.

An injection point is not enough. An application hosted on Windows will never fall to a payload designed for Linux. That is why an active fingerprint comes first, and every payload is shaped to the operating system it identifies.

Relentless.

Nothing coming back does not mean nothing ran. When the output comes back, results-based techniques read it off; when it does not, time-related ones clock it out of the delay; out-of-band callbacks reach interactsh over HTTP or plain DNS.

Provable.

A finding you have to manually prove is half a finding. Every supported technique confirms by executing, and every injection point is re-tested for false positives before it is reported.

Open-source.

This software is free and open source. There is no pro edition to upsell you. It ships under GPLv3 and everything you need is in the repo. The git log goes back to 2014.