Skip to main content

Speakeasy malware emulation framework

Project description

Speakeasy

Speakeasy is a Windows malware emulation framework that executes binaries, drivers, and shellcode in a modeled Windows runtime instead of a full VM. It emulates APIs, process/thread behavior, filesystem, registry, and network activity so samples can keep moving through realistic execution paths. You can run it from the speakeasy CLI for fast triage or embed it as a Python library and consume structured JSON reports.

Background context: Mandiant's overview post.

Quick start

Install from PyPI:

python3 -m pip install speakeasy-emulator

Run a sample and inspect high-level report fields (replace sample.dll with your target):

speakeasy -t sample.dll --no-mp -o report.json 2>/dev/null
jq '{sha256, arch, filetype, entry_points: (.entry_points | length)}' report.json
{
  "sha256": "30ec092d122a90441a2560f6778ef8233c98079cd34b7633f7bbc2874c8d7a45",
  "arch": "x86",
  "filetype": "dll",
  "entry_points": 3
}

Executable proof for this snippet: doc/readme-quickstart-showboat.md.

Documentation map

Start here

CLI usage

Reports, configuration, and runtime behavior

Debugging and extension

Questions and help

Start with doc/help.md.

If you still need help, open an issue at github.com/mandiant/speakeasy/issues.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

speakeasy_emulator-2.0.0b3.tar.gz (289.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

speakeasy_emulator-2.0.0b3-py3-none-any.whl (351.0 kB view details)

Uploaded Python 3

File details

Details for the file speakeasy_emulator-2.0.0b3.tar.gz.

File metadata

  • Download URL: speakeasy_emulator-2.0.0b3.tar.gz
  • Upload date:
  • Size: 289.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for speakeasy_emulator-2.0.0b3.tar.gz
Algorithm Hash digest
SHA256 0416859ac9676740f301ec6d650e970ca1a29d25370c61c5718d3d40d7094553
MD5 4d00f4c5cf5e7622ac3c2c18abc4ee64
BLAKE2b-256 3b068329c0d332398ccf1dc957fe3e6733f9f5aa36b447fe651421279cae0f7b

See more details on using hashes here.

Provenance

The following attestation bundles were made for speakeasy_emulator-2.0.0b3.tar.gz:

Publisher: python-publish.yml on mandiant/speakeasy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file speakeasy_emulator-2.0.0b3-py3-none-any.whl.

File metadata

File hashes

Hashes for speakeasy_emulator-2.0.0b3-py3-none-any.whl
Algorithm Hash digest
SHA256 7cae869b4c579ebe15db5319aba04b73b19c36b6da8c1f320d3b85b0c7414d3e
MD5 c4665b58c1a25f5efeb1bb99c583316f
BLAKE2b-256 a8ea467d0046c381a0a89063e48849181a59ea7fb19aa1c4e9733f8be2ae803e

See more details on using hashes here.

Provenance

The following attestation bundles were made for speakeasy_emulator-2.0.0b3-py3-none-any.whl:

Publisher: python-publish.yml on mandiant/speakeasy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page