capa
v10.0.0 open-sourceThe section your link pointed to isn't on capa's page any more, so we've brought you to the top.
Detects capabilities in PE, ELFELFThe standard binary format for executables, shared libraries, and object files on Linux and most Unix-like systems, giving cyber tools a predictable structure to parse, instrument, or analyze compiled code., .NET, shellcode, and sandbox report files by matching against a rule set.
CAPA_LOAD_VIV_WORKSPACE=1 capa suspicious.exe
capa ./malware.exe --format protobuf -o result.proto
capa ./binary.exe --os linux
pip install flare-capa
wget https://raw.githubusercontent.com/fireeye/capa/master/capa/ida/plugin/capa_explorer.py -O ~/IDA/plugins/capa_explorer.py
rule: {
metadata:
name: example_negative_offset
features:
- and:
- offset: -0x10
- api: "WriteProcessMemory"
}
capa ./malware.exe
# The output now includes SHA1/SHA256 fields in the JSON or text summary
Summary
capa is an open-source command-line tool, licensed under Apache-2.0, that inspects a PE, ELF, .NET module, shellcode file, or sandbox report and reports what the program appears capable of doing — installing a service, acting as a backdoor, communicating over HTTP — mapped to ATT&CKATT&CKA publicly maintained knowledge base by MITRE cataloguing adversary tactics, techniques, and procedures observed in real attacks, giving cyber tools a common taxonomy for classifying and correlating threat behavior. tactics and techniques. It also has a web interface for browsing results and plugins for IDA Pro, Ghidra, and Binary Ninja, which suits reverse engineers and malware analysts more than SOCSOCA security operations center, the team or function that monitors threats, investigates alerts and coordinates incident response. Its work can be internal, outsourced or shared. staff triaging alerts. Its capability logic comes from a separate, versioned rules repository rather than a fixed engine, which distinguishes it from most sandbox-report tooling. Started in 2020 and maintained by Mandiant, it has drawn 109 contributors and 563 commits in the past year, with a release only 142 days ago.
Detects capabilities in PE, ELF, .NET, shellcode, and sandbox report files by matching against a rule set.
How capa helps
What can this file actually do once it runs?
matches the binary's code against the rule set and reports capabilities like installing a service, acting as a backdoor, or communicating over HTTP, each mapped to an ATT&CK tactic and technique
Which ATT&CK techniques does an unknown sample line up with, before I hand it to an analyst?
walks the file's functions and behaviors against the rule set and lists every technique it triggers, giving a starting map for triage rather than a full report
Did a sandbox run actually touch the network, credentials, or persistence mechanisms?
runs the same rule matching against a sandbox report instead of a raw binary, surfacing dynamic behaviors like credential access or registry persistence that only show up at execution time
Is this sample stealing cloud credentials or enumerating cloud services?
applies rules written specifically for AWS, GCP, Cloudflare, Docker, and Kubernetes credential access and enumeration, and names which one matched
Does this binary use a known encryption scheme I should account for when reversing it?
checks the code against rules for specific algorithms such as RSA, TripleDES, Chaskey, Speck, and HC-256, and reports which one it recognizes
Is a capability I found specific to this sample, or does the rule set already know about it?
separates its capability logic into a versioned rules repository, so a match points to a named, inspectable rule rather than a hidden heuristic
Languages
Command line
No command matches.
| option | found in | since | description |
|---|
Values are placeholders taken from each option’s declared default. Nothing is executed here — the output shown is a recording of a run that already happened.
Score card
-
Shipping velocity releases a month, last 12 months
-
Documentation quality release-notes rubric, 0–100
-
Breaking-change discipline how rarely a release breaks users, and notice given
-
Maintenance risk quiet time against its own cadence, maintainers
-
Innovation & surface new capabilities, API and MCP surface
- Community health
-
Contributor trend distinct committers, this year against last
-
Maintainer concentration bus factor now against a year ago
-
Issue backlog trend issues closed per issue opened, 12 months
-
Responsiveness median time to a maintainer’s first reply
Nine scores for capa, 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 → Already subscribed? Sign in →Trajectory
Blank means never measured; nothing here is a filled-in zero.
Peer standings are included with Researcher and Business. See how this tool ranks against its competitors, using data we don't publish anywhere else.
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 capa 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…
Coverage
Missing something? Tell us
What capa connects to, runs on and detects, read from its release notes and docs. So far: 1 new detection.
1 change, tracked since Oct 16, 2026.
-
Oct 162026
new 12 new capa detection rules
Covers 12: nursery/decrypt-payload-stored-as-ipv6-strings, nursery/connect-to-websocket-server-in-dotnet, nursery/receive-data-on-websocket-in-dotnet, nursery/send-data-on-websocket-in-dotnet, nursery/upload-or-download-file-via-dropbox, host-interaction/network/connectivity/check-internet-connectivity-in-dotnet and 6 more
### New Rules (12) - nursery/decrypt-payload-stored-as-ipv6-strings corkami@google.com - nursery/connect-to-websocket-server-in-dotnet mehunhoff@google.com - nursery/receive-data-on-websocket-in-dotnet mehunhoff@google.com - nursery/send-data-on-websocket-in-dotnet mehunhoff@google.com - nursery/upload-or-download-file-via-dropbox mehunhoff@google.com - host-interaction/network/connectivity/check-internet-connectivity-in-dotnet omurcankaya@protonmail.com - anti-analysis/anti-debugging/check-for-time-delay-in-dotnet @aryanyk - nursery/decode-pe-stored-as-uuid corkami@google.com - compiler/crystal/compiled-with-crystal corkami@google.com - compiler/odin/compiled-with-odin corkami@google.com - load-code/dotnet/load-dotnet-assembly-via-runtimeassemblynloadimage still@teamt5.org - nursery/search-for-file-via-winapi @w3lld1
Nothing first seen in this window. That doesn't mean capa shipped nothing, only that we found no record of it.
How we count
Read from 1 of 32 release notes and docs updates we hold for capa. "First seen" is the earliest note that names something; "last" is the latest. Our history may start partway through capa's life, so an old integration can show a recent first-seen date.
Each change counts once: "added 40 checks" is one line, so the numbers measure how often coverage moves, not how big the catalogue is or how well it detects.
Releases
32 entries
No entries match these filters.
- October 20261
- April 20261
- November 20251
- June 20251
- March 20251
- February 20251
- December 20241
- October 20241
- September 20241
- August 20241
- June 20241
- February 20241
- August 20231
- July 20231
- April 20231
- February 20231
- August 20222
- March 20221
- January 20221
- October 20211
- September 20211
- July 20211
- April 20212
- March 20211
- February 20211
- October 20201
- September 20201
- August 20202
- July 20201
Project health
Issue, contributor and maintainer activity in mandiant/capa, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.
- Contributors 29 +12 vs prior 12 months
- Maintainers 3 +2 joined · −4 left, last 12 months
- Bus factor 1 committers behind half the commits
- Community-filed 24% of issues opened, last 12 months
- Median time to close 19 days first maintainer reply 22 hours
- Open backlog 250 of 1,194 issues ever filed
- Issues opened / month 2 · 0 communitymaintainers
- Open backlog 250
- Contributors / month 1
- Commits / month 2
- Stars 6,186
- bugs 41%
- features 18%
- questions 2%
- docs 1%
- other 38%
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.