-
Notifications
You must be signed in to change notification settings - Fork 567
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
Extract indicators (HBI/NBI) around capability detections #1907
Comments
I agree that it would be interesting to incorporate these things into capa! I'll have a closer look at some capa code and sandbox data and make a proposal for how we can implement some of these features! |
The Practical Malware Analysis book lab 03-02.dll may be a good test case here. |
Hi @mr-tz here are my current ideas about the web domain extractors. Hope to have it finished up soon - please let me know if you have any questions!
|
is there a commit/branch/PR I can comment on inline? It would also be helpful to see some example output. |
@mr-tz hopefully by tomorrow! I opened a PR yesterday but deleted it and decided to restructure a couple parts. I'll make sure to include some example output! |
…d tests This PR partially resolves mandiant#1907. It extracts web domains and IP addresses, and implements rendering functions and tests. These changes likely don't require updates to the documentation, but if some users want to, they should be able to repurpose many of the extraction functions without too much trouble. Unfortunately, I'll probably be unavailable during the next few days, but this weekend, I'll ensure the PR passes the CI tests. I'll probably also add some more tests for the rendering functions. Please let me know if you have any questions or suggestions! Below is example output for the default mode: +------------------------------+ | IP addresses and web domains | |------------------------------+ | google.com | | 192.123.232.08 | | my-w3bs1te.net | | maliciooous.r4ndom-site.uhoh | | whoops.net | +------------------------------+ Here is example output for verbose and vverbose modes: +-----------------------------------------------------------+ | IP addresses and web domains | |-----------------------------------------------------------+ | google.com | | |----IP address: | | |----192.0.0.1 | | |----Functions used to communicate with google.com: | | |----InternetConnectA | | |----HttpOpenRequestA | | |----FtpGetFileA | | |----3 occurrances | | | | | 192.123.232.08 | | |----Functions used to communicate with 192.123.232.08:| | |----... | | | +-----------------------------------------------------------+
Capabilities often have associated host-based and network-based indicators (HBIs and NBIs). Especially these examples (by rule namespaces) come to mind:
communication/http
: IPs, domainshost-interaction/file-system
: file nameshost-interaction/registry
: registry keys and valuesWe often encounter an HBI or NBI as a string used close around a capability, e.g. as argument to an API call.
It would be worth exploring if we can automatically:
I suspect this could work very well with in the dynamic analysis flavor, but also for static extraction on basic samples could work quite well.
The text was updated successfully, but these errors were encountered: