Skip to main content

Multidecoder

Multidecoder is a python library and command line tool for extracting indicators of compromise (IOCs) from a file. Multidecoder preserves the context of where and how an IOC is found to allow automated detection of patterns of obfuscation. Multidecoder is currently in alpha, and may change in ways that breaks backwards compatibility as developement continues.

Indicators of compromise extracted by Multidecoder:

  • network IOCS: urls, domains, emails, ip addressses
  • executable filenames
  • embedded PowerShell
  • embedded PE files
  • a customizable set of keywords

Deobfuscations and decodings supported:

  • base64 encoding
  • hexadecimal encoding
  • string concatenation
  • powershell escape characters

Installing

The latest Multidecoder can be installed from the repository:

pip install -U https://github.com/CybercentreCanada/Multidecoder/archive/main.zip

Command Line

After being installed Multidecoder can be run on a file from the command-line

> multidecoder file

which will output a list of indicators found. Indicators are printed one per line, with a string representation of the context of the indicator followed by the indicator.

The raw json result can be output with the --json flag

> multidecoder --json file

if no filename is given multidecoder takes its standard input as the file to be scanned.

Python library

Multidecoder can be used as a python library through the Multidecoder class, which can scan data to give a dictionary tree similar to the command-line json output.

from multidecoder.multidecoder import Multidecoder

md = Multidecoder()
context_tree = md.scan(data)

Metadata

Release files for multidecoder 0.0.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for multidecoder 0.0.8
File Size Uploaded
multidecoder-0.0.8.tar.gz 75.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for multidecoder 0.0.8
File Interpreter ABI Platform
multidecoder-0.0.8-py3-none-any.whl Python 3 none any Details

Total release size: 171.7 kB

Release files / multidecoder-0.0.8.tar.gz

Download URL multidecoder-0.0.8.tar.gz
Size 75.3 kB
Tags Source
SHA-256 checksum
How to use checksums
5795ad94b1e797b788bae9e1c6ec0b89ce02aec77d44b1fda12af123a99f97ed
BLAKE2b-256 checksum
How to use checksums
9a72ad056863c8e118de542ccde6753e8bd4e7efd6108e692081be5e4f20ec49
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

Release files / multidecoder-0.0.8-py3-none-any.whl

Download URL multidecoder-0.0.8-py3-none-any.whl
Size 96.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4a9e506d1e534890894c5eaf51d3d0fdffaadf8609d441eb135301c4c13c125c
BLAKE2b-256 checksum
How to use checksums
81673dc1c56994f656877450766cab3acb9d885382e1345987834c0b264c07ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.12

Release history Release notifications | RSS feed

1.6.27

2 release files

1.6.26

2 release files

1.6.25

2 release files

1.6.24

2 release files

1.6.23

2 release files

1.6.20

2 release files

1.6.19

2 release files

1.6.18

2 release files

1.6.17

2 release files

1.6.16

2 release files

1.6.15

2 release files

1.6.13

2 release files

1.6.9

2 release files

1.6.8

2 release files

1.6.7

2 release files

1.6.6

2 release files

1.6.5

2 release files

1.6.4

2 release files

1.6.3

2 release files

1.6.2

2 release files

1.6.1

2 release files

1.6.0

2 release files

1.5.3

2 release files

1.5.2

2 release files

1.5.1

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.6

2 release files

1.3.5

2 release files

1.3.4

2 release files

1.3.3

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.0.0

2 release files

0.1.0

2 release files

0.0.14

2 release files

0.0.13

2 release files

0.0.12

2 release files

0.0.11

2 release files

0.0.9

2 release files

This release

0.0.8 This release

2 release files

0.0.7

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page