goStractor is a command-line tool, written in Go, designed to automate the extraction of (mainly network) indicators of compromise (IOCs) from potentially malicious files.
Note: It's recommended to run this is an isolated sandbox VM to prevent accidential infection of your host machine. This sandbox VM shoud have no network route to your LAN or the internet.
- Initial release with GUI interface
- Universal file type support.
- Archive handling (.zip, .7z) with password support.
- Simple GUI.
- Extracts multiple IOC types from any input filetype.
- Records the SHA-256 hash of the analyzed file.
- Identifies network-related indicators of compromise (URLs, IPs, domains).
- Detects strings referencing the modification of the Windows Registry.
- Outputs results in CSV format for easy analysis.
- Cross-platform compatible (Windows x64-focused).
- Archive handling (.zip, .7z) with password support.
- SHA-256 file hashes
- IP addresses (IPv4)
- Domain names with valid TLDs
- URLs (HTTP, HTTPS, FTP, SFTP)
- Windows Registry keys
- Windows Executables (.exe)
- Dynamic Link Libraries (.dll)
- Android Package Files (.apk)
- Windows Installer Packages (.msi)
Recommended
Download the latest release from: Releases.
For Go developers only:
go install github.com/grepstrength/gostractor@latest
- Launch gostractor.exe.
- Select the input file using the GUI.
- Choose the output location (optional)
- Click the "Extract IOCs" button. It takes approximately 1-5 seconds.
- Results saved in CSV format. The ".csv" string must be typed or it will be an extensionless file.
Output Format The CSV output contains three columns:
- IOC: The extracted indicator
- Type: The type of indicator (SHA-256, IP, Domain, URL, Registry)
- Offset: The location in the file where the IOC was found (always 0 in the case of the hash)
.\gostractor.exe malware.exe results.csv
This is not perfect and not all strings found will be legitimate IPs, domains, or URLs. This tool is meant only to help speeed up the static analysis process of malware analysis.
Additionally, not all URLs will necessarily be malicious. Further analysis will be required upon finding valid URLs within this tool's output.
There are several planned improvements:
GUI(DONE)Greater input file support (ELF, JS, VBA, etc.)(DONE)- Greater output file support (JSON, TXT, etc.)
- Improvements to REGEX