Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

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.

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.0b6.tar.gz (306.3 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.0b6-py3-none-any.whl (369.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: speakeasy_emulator-2.0.0b6.tar.gz
  • Upload date:
  • Size: 306.3 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.0b6.tar.gz
Algorithm Hash digest
SHA256 cb268f0f41e7344863e7f2d9233eca29c17d6e2125e31254f4b1c0439d272d36
MD5 2d3aed16ee50c1e5704d3c141750e3ce
BLAKE2b-256 863a28e1e067de250488f40d719aa7cee61a3b0c61d024db37c0302b9e2bead3

See more details on using hashes here.

Provenance

The following attestation bundles were made for speakeasy_emulator-2.0.0b6.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.0b6-py3-none-any.whl.

File metadata

File hashes

Hashes for speakeasy_emulator-2.0.0b6-py3-none-any.whl
Algorithm Hash digest
SHA256 a33a0e456726070e2e4a4e62fa8a9a1cd388b2b074e31800b463555102e368ab
MD5 4bd776825b9ea55919d98deef59da1ef
BLAKE2b-256 170ae239ca6d227795c96e59a42ed8ebdeaa021365e3d26469f01eb54ee24ea3

See more details on using hashes here.

Provenance

The following attestation bundles were made for speakeasy_emulator-2.0.0b6-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 Sentry Error logging StatusPage Status page