-
Notifications
You must be signed in to change notification settings - Fork 70
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
Load windbg symbols #688
Comments
Hi @Ana06, I'm not sure how you feel about pulling in another dependency, but I've had good success in the past with the tool It's much faster at both enumeration and download than WinDbg's
Here is an idea of how fast it is, for my analysis machine with 5421 PDBs (about 4.9 GB) from PE files in In this case I did the enumeration on an offline Windows VM (using the Windows version of
|
That amount of storage for symbols is probably not ideal for distribution. |
I would very much like to see symbols appearing in my FLARE-VM builds. Another alternative to downloading the symbols efficiently would be PDBReSym from the STrace project. https://github.com/mandiant/STrace/blob/main/Rust/PDBReSym/src/main.rs#L437-L443 I've spoken with the author and depending on bandwidth and VM resources the tool completes downloading symbols in about 3 minutes =) |
+1 to Conor's comment, I maintain PDBReSym publicly (releases here: https://github.com/mandiant/STrace/releases/tag/v1.3.2) as part of my STrace project. Afaik it is the fastest tool to download and cache all windows symbols. It's written in rust so is safe, and is something we should probably include as FLARE-VM as a Misc tool. Then as part of the FLARE-VM build we can have it run with the If we are concerned about symbol cache size. We could make this a configuration option to run the tool, but at least include the tool in the VM image. |
Thanks for the input @schrodyn and @stevemk14ebr! Does installing STrace downloads the symbols? Or do we need to do something else apart from installing STrace? We can create a package in this repository for STrace that install the tool and perform any additional needed steps. How much of a size increase would this imply? FLARE is at the moment creating two builds, one is the default configuration and the other one (which we can full) includes Visual Studio as well. We do not have Visual Studio in the default configuration because of the increase in size. We can also share this configuration with the community by adding a full configuration in the flare-vm repo. Depending on the size increase, we can add this to either the default configuration or the full one. |
@mandiant/flare-vm which category should we add STrace to? |
FLARE-VM would just need to run The only issue that I can see might be the fact that PDBReSym isn't shipped as a compiled executable in the STrace releases. Maybe this is something Stephen can amend? Otherwise, the rust language toolchain would need to be installed in FLARE-VM and In my malware analysis VM I ran
|
Just FYI, not sure how big my symbols folder was before I ran the tool, I already had a lot of symbols downloaded, but the size of the folder is now 8.96GB for my Windows 10 VM. |
@stevemk14ebr has confirmed he can provide the PDBReSym binary in ~1-2 weeks. We'll create a package that install it and run the command @schrodyn provided after that. 😉 |
@stevemk14ebr provided the binary we need in the last release: https://github.com/mandiant/STrace/releases/tag/v1.3.3, thanks @stevemk14ebr! |
From #252 (comment) (got lost as we only installed windbg when we closed that issue):
I think I tend to prefer windbg.symbols.vm, other ideas?
The text was updated successfully, but these errors were encountered: