mirror of
https://github.com/mandiant/capa.git
synced 2026-07-11 22:51:52 -07:00
Merge pull request #187 from Ana06/documentation
This commit is contained in:
@@ -3,26 +3,29 @@ name: Bug report
|
||||
about: Create a report to help us improve
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
# Is your bug report related to capa rules (for example a false positive)?
|
||||
We use sybmodules to separate code, rules and test data. If your issue is related to capa rules, please report it at https://github.com/fireeye/capa-rules/issues.
|
||||
|
||||
Have you read capa's Code of Conduct? By filing an Issue, you are expected to comply with it, including treating everyone with respect: https://github.com/fireeye/capa/blob/master/.github/CODE_OF_CONDUCT.md
|
||||
# Have you checked that your issue isn't already filed?
|
||||
Please search if there is a similar issue at https://github.com/fireeye/capa/issues. If there is already a similar issue, please add more details there instead of opening a new one.
|
||||
|
||||
# Have you read capa's Code of Conduct?
|
||||
By filing an Issue, you are expected to comply with it, including treating everyone with respect: https://github.com/fireeye/capa/blob/master/.github/CODE_OF_CONDUCT.md
|
||||
|
||||
# Have you read capa's CONTRIBUTING guide?
|
||||
It contains helpful information about how to contribute to capa. Check https://github.com/fireeye/capa/blob/master/.github/CONTRIBUTING.md#reporting-bugs
|
||||
-->
|
||||
|
||||
### Prerequisites
|
||||
|
||||
* [ ] Put an X between the brackets on this line if you have done all of the following:
|
||||
* Checked that your issue isn't already filed: [search](https://github.com/fireeye/capa/issues?q=is%3Aissue+is%3Aopen+)
|
||||
|
||||
### Description
|
||||
|
||||
<!-- Description of the issue -->
|
||||
|
||||
### Steps to Reproduce
|
||||
|
||||
1. <!-- First Step -->
|
||||
2. <!-- Second Step -->
|
||||
3. <!-- and so on… -->
|
||||
<!-- 1. First Step -->
|
||||
<!-- 2. Second Step -->
|
||||
<!-- 3. and so on… -->
|
||||
|
||||
**Expected behavior:**
|
||||
|
||||
@@ -32,10 +35,6 @@ Have you read capa's Code of Conduct? By filing an Issue, you are expected to co
|
||||
|
||||
<!-- What actually happens -->
|
||||
|
||||
**Reproduces how often:**
|
||||
|
||||
<!-- What percentage of the time does it reproduce? -->
|
||||
|
||||
### Versions
|
||||
|
||||
<!-- You can get this information from copy and pasting the output of `capa --version` from the command line.
|
||||
@@ -45,3 +44,4 @@ Have you read capa's Code of Conduct? By filing an Issue, you are expected to co
|
||||
### Additional Information
|
||||
|
||||
<!-- Any additional information, configuration or data that might be necessary to reproduce the issue. -->
|
||||
|
||||
|
||||
@@ -3,24 +3,33 @@ name: Feature request
|
||||
about: Suggest an idea for capa
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
# Is your issue related to capa rules (for example an idea for a new rule)?
|
||||
We use sybmodules to separate code, rules and test data. If your issue is related to capa rules, please report it at https://github.com/fireeye/capa-rules/issues.
|
||||
|
||||
Have you read capa's Code of Conduct? By filing an Issue, you are expected to comply with it, including treating everyone with respect: https://github.com/fireeye/capa/blob/master/CODE_OF_CONDUCT.md
|
||||
# Have you checked that your issue isn't already filed?
|
||||
Please search if there is a similar issue at https://github.com/fireeye/capa/issues. If there is already a similar issue, please add more details there instead of opening a new one.
|
||||
|
||||
# Have you read capa's Code of Conduct?
|
||||
By filing an Issue, you are expected to comply with it, including treating everyone with respect: https://github.com/fireeye/capa/blob/master/.github/CODE_OF_CONDUCT.md
|
||||
|
||||
# Have you read capa's CONTRIBUTING guide?
|
||||
It contains helpful information about how to contribute to capa. Check https://github.com/fireeye/capa/blob/master/.github/CONTRIBUTING.md#suggesting-enhancements
|
||||
-->
|
||||
|
||||
## Summary
|
||||
### Summary
|
||||
|
||||
<!-- One paragraph explanation of the feature. -->
|
||||
|
||||
## Motivation
|
||||
### Motivation
|
||||
|
||||
<!-- Why are we doing this? What use cases does it support? What is the expected outcome? -->
|
||||
|
||||
## Describe alternatives you've considered
|
||||
### Describe alternatives you've considered
|
||||
|
||||
<!-- A clear and concise description of the alternative solutions you've considered. -->
|
||||
|
||||
## Additional context
|
||||
|
||||
<!-- Add any other context or screenshots about the feature request here. -->
|
||||
|
||||
|
||||
+15
-14
@@ -8,6 +8,13 @@ We use PyInstaller to create these packages.
|
||||
|
||||
The capa [README](../README.md#download) also links to nightly builds of standalone binaries from the latest development branch.
|
||||
|
||||
### Linux Standalone installation
|
||||
|
||||
The Linux Standalone binary has been built using GLIB 2.26.
|
||||
Consequently it works when using GLIB >= 2.26.
|
||||
This requirement is satisfied by default in most newer distribution such as Ubuntu >= 18, Debian >= 10, openSUSE >= 15.1 and CentOS >= 8.
|
||||
But the binary may not work in older distributions.
|
||||
|
||||
### MacOS Standalone installation
|
||||
|
||||
By default, on MacOS Catalina or greater, Gatekeeper will block execution of the standalone binary. To resolve this, simply try to execute it once on the command-line and then go to `System Preferences` / `Security & Privacy` / `General` and approve the application:
|
||||
@@ -29,31 +36,25 @@ You can now import the `capa` module from a Python script or use the IDA Pro plu
|
||||
If you'd like to review and modify the capa source code, you'll need to check it out from GitHub and install it locally. By following these instructions, you'll maintain a local directory of source code that you can modify and run easily.
|
||||
|
||||
### 1. Check out source code
|
||||
Next, clone the capa git repository. We use submodules to separate code, rules, and test data. See below to get all data at once. To only get the source code and our provided rules (common), follow these steps:
|
||||
Next, clone the capa git repository.
|
||||
We use submodules to separate [code](https://github.com/fireeye/capa), [rules](https://github.com/fireeye/capa-rules), and [test data](https://github.com/fireeye/capa-testfiles).
|
||||
To clone everything use the `--recurse-submodules` option:
|
||||
- `$ git clone --recurse-submodules https://github.com/fireeye/capa.git /local/path/to/src` (HTTPS)
|
||||
- `$ git clone --recurse-submodules git@github.com:fireeye/capa.git /local/path/to/src` (SSH)
|
||||
|
||||
To only get the source code and our provided rules (common), follow these steps:
|
||||
- clone repository
|
||||
- `$ git clone https://github.com/fireeye/capa.git /local/path/to/src` (HTTPS)
|
||||
- `$ git clone git@github.com:fireeye/capa.git /local/path/to/src` (SSH)
|
||||
- `$ cd /local/path/to/src`
|
||||
- `$ git submodule init`
|
||||
- `$ git submodule update rules`
|
||||
|
||||
#### capa-testfiles
|
||||
The [capa-testfiles](https://github.com/fireeye/capa-testfiles) repository (`/local/path/to/src/tests/data`) contains a large collection of malware and benign test files. *In most cases you will not need to check it out on your local system.*
|
||||
|
||||
To update the testfiles you can use the following command:
|
||||
- `$ git submodule update tests/data`
|
||||
|
||||
To get all data at once use the `--recurse-submodules` option:
|
||||
|
||||
- `$ git clone --recurse-submodules https://github.com/fireeye/capa.git /local/path/to/src` (HTTPS)
|
||||
- `$ git clone --recurse-submodules git@github.com:fireeye/capa.git /local/path/to/src` (SSH)
|
||||
|
||||
### 2. Install the local source code
|
||||
Use `pip` to install the source code in "editable" mode. This means that Python will load the capa module from the local directory rather than copying it to `site-packages` or `dist-packages`. This is good because it is easy to modify files and see the effects reflected immediately. But, be careful not to remove this directory unless uninstalling capa.
|
||||
|
||||
`$ pip install -e /local/path/to/src`
|
||||
|
||||
You'll find that the `capa.exe` (Windows) or `capa` (Linux) executables in your path now invoke the capa binary from this directory.
|
||||
You'll find that the `capa.exe` (Windows) or `capa` (Linux/MacOS) executables in your path now invoke the capa binary from this directory.
|
||||
|
||||
We use the following tools to ensure consistent code style and formatting:
|
||||
- [black](https://github.com/psf/black) code formatter, with `-l 120`
|
||||
|
||||
Reference in New Issue
Block a user