Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add IDA plugins helper functions & templates to script #1013

Merged
merged 4 commits into from
Apr 25, 2024

Conversation

Ana06
Copy link
Member

@Ana06 Ana06 commented Apr 25, 2024

Introduce VM-Install-IDA-plugin, VM-Uninstall-IDA-Plugin, and VM-Get-IDA-Plugins-Dir helper functions in common.vm to simplify IDA plugins installation. Use the new VM-Install-IDA-plugin and VM-Get-IDA-Plugins-Dir functions in ida.plugin.capa.vm.

Add support for simple IDA plugins which just download one single file to the plugins directory to our create_package_template.py script. This template can also be used as base for more complicated plugins. See ida.plugin.capa.vm for an example.

Use the new IDA plugin template in create_package_template.py to
generate ida.plugin.sigmaker.vm:

python3 scripts/utils/create_package_template.py --type IDA_PLUGIN --pkg_name "ida.plugin.sigmaker" --version "1.0.2" --authors "A200K" --description "Signature Maker Plugin for IDA Pro 8.3." --tool_name "SigMaker64.dll" --target_url "https://github.com/A200K/IDA-Pro-SigMaker/releases/download/v1.0.2/SigMaker64.dll" --target_hash "0b44921a2fc35f13a2987fcf8830685d58f9d18bca760a9706ec4efe8b0d5d2f"

First step for #996

We should close the actual PR adding plugins (which have been opened for more than 2 months). #913 adds an older version of the sample plugin and all of the PRs would need to be updated to use the new helpers.

Closes #914
Closes #913
Closes #911

@Ana06 Ana06 added ❔ discussion Further discussion is needed 🆕 package New package request/idea/PR 🌀 FLARE-VM A package or feature to be used by FLARE-VM labels Apr 25, 2024
@Ana06 Ana06 requested a review from emtuls April 25, 2024 10:01
@Ana06 Ana06 self-assigned this Apr 25, 2024
@Ana06
Copy link
Member Author

Ana06 commented Apr 25, 2024

@mandiant/flare-vm opinions on adding ida.plugin.sigmaker.vm to the default configuration?

Ana06 added 4 commits April 25, 2024 12:45
Exclude all IDA plugins from the `UsesInvalidCategory` lint as IDA
plugins do not install a shortcut.
Introduce `VM-Install-IDA-plugin`, `VM-Uninstall-IDA-Plugin`, and
`VM-Get-IDA-Plugins-Dir` helper functions in common.vm to simplify IDA
plugins installation. Use the new `VM-Install-IDA-plugin` and
`VM-Get-IDA-Plugins-Dir` functions in `ida.plugin.capa.vm`.
Add support for simple IDA plugins which just download one single file
to the plugins directory to our `create_package_template.py` script.
This template can also be used as base for more complicated plugins. See
`ida.plugin.capa.vm` for an example.
Use the new IDA plugin template in create_package_template.py to
generate `ida.plugin.sigmaker.vm`:

```
python3 scripts/utils/create_package_template.py --type IDA_PLUGIN --pkg_name "ida.plugin.sigmaker" --version "1.0.2" --authors "A200K" --description "Signature Maker Plugin for IDA Pro 8.3." --tool_name "SigMaker64.dll" --target_url "https://github.com/A200K/IDA-Pro-SigMaker/releases/download/v1.0.2/SigMaker64.dll" --target_hash "0b44921a2fc35f13a2987fcf8830685d58f9d18bca760a9706ec4efe8b0d5d2f"
```
Copy link
Member

@emtuls emtuls left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! 🙂
Thank you @Ana06!

@Ana06 Ana06 merged commit 1412a5a into mandiant:main Apr 25, 2024
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🌀 FLARE-VM A package or feature to be used by FLARE-VM ❔ discussion Further discussion is needed 🆕 package New package request/idea/PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants