Skip to main content

Python bindings for Detect It Easy (DIE).

Project description

DetectItEasy-Python

Python 3.11+ Downloads Code style: black Licence Apache2 Build

Native Python 3.11+ bindings for @horsicq's Detect-It-Easy

Install

From PIP

The easiest and recommended installation is through pip.

pip install die-python

Using Git

git clone https://github.com/elastic/die-python
cd die-python

Install Qt into the build. It can be easily installed using aqt as follow (here with Qt version 6.7.3):

python -m pip install aqtinstall --user -U
python -m aqt install-qt -O ./build linux desktop 6.7.3 linux_gcc_64               # linux x64 only
python -m aqt install-qt -O ./build linux_arm64 desktop 6.7.3 linux_gcc_arm64      # linux arm64 only
python -m aqt install-qt -O ./build windows desktop 6.7.3 win64_msvc2019_64        # windows x64 only
python -m aqt install-qt -O ./build windows desktop 6.7.3 win64_msvc2019_arm64     # windows arm64 only (will requires `win64_msvc2019_64`)
python -m aqt install-qt -O ./build mac desktop 6.7.3 clang_64                     # mac only

Then you can install the package

python -m pip install . --user -U

Quick start

import die, pathlib

print(die.scan_file("c:/windows/system32/ntdll.dll", die.ScanFlags.DEEP_SCAN))
'PE64'

print(die.scan_file("../upx.exe", die.ScanFlags.RESULT_AS_JSON, str(die.database_path) ))
{
    "detects": [
        {
            "filetype": "PE64",
            "parentfilepart": "Header",
            "values": [
                {
                    "info": "Console64,console",
                    "name": "GNU linker ld (GNU Binutils)",
                    "string": "Linker: GNU linker ld (GNU Binutils)(2.28)[Console64,console]",
                    "type": "Linker",
                    "version": "2.28"
                },
                {
                    "info": "",
                    "name": "MinGW",
                    "string": "Compiler: MinGW",
                    "type": "Compiler",
                    "version": ""
                },
                {
                    "info": "NRV,brute",
                    "name": "UPX",
                    "string": "Packer: UPX(4.24)[NRV,brute]",
                    "type": "Packer",
                    "version": "4.24"
                }
            ]
        }
    ]
}

for db in die.databases():
    print(db)
\path\to\your\pyenv\site-packages\die\db\ACE
\path\to\your\pyenv\site-packages\die\db\Amiga\DeliTracker.1.sg
\path\to\your\pyenv\site-packages\die\db\Amiga\_Amiga.0.sg
\path\to\your\pyenv\site-packages\die\db\Amiga\_init
\path\to\your\pyenv\site-packages\die\db\APK\AlibabaProtection.2.sg
[...]

Licenses

Released under Apache 2.0 License and integrates the following repositories:

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

die_python-0.5.0-cp313-abi3-win_arm64.whl (10.9 MB view details)

Uploaded CPython 3.13+Windows ARM64

die_python-0.5.0-cp313-abi3-win_amd64.whl (10.0 MB view details)

Uploaded CPython 3.13+Windows x86-64

die_python-0.5.0-cp313-abi3-manylinux_2_34_x86_64.whl (57.4 MB view details)

Uploaded CPython 3.13+manylinux: glibc 2.34+ x86-64

die_python-0.5.0-cp313-abi3-manylinux_2_34_aarch64.whl (68.0 MB view details)

Uploaded CPython 3.13+manylinux: glibc 2.34+ ARM64

die_python-0.5.0-cp313-abi3-macosx_14_0_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.13+macOS 14.0+ x86-64

die_python-0.5.0-cp312-cp312-win_amd64.whl (9.8 MB view details)

Uploaded CPython 3.12Windows x86-64

die_python-0.5.0-cp312-cp312-manylinux_2_34_x86_64.whl (57.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

die_python-0.5.0-cp312-cp312-manylinux_2_34_aarch64.whl (68.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ ARM64

die_python-0.5.0-cp312-cp312-macosx_14_0_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.12macOS 14.0+ x86-64

die_python-0.5.0-cp311-cp311-win_amd64.whl (9.8 MB view details)

Uploaded CPython 3.11Windows x86-64

die_python-0.5.0-cp311-cp311-manylinux_2_34_x86_64.whl (57.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

die_python-0.5.0-cp311-cp311-manylinux_2_34_aarch64.whl (68.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ ARM64

die_python-0.5.0-cp311-cp311-macosx_14_0_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.11macOS 14.0+ x86-64

File details

Details for the file die_python-0.5.0-cp313-abi3-win_arm64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp313-abi3-win_arm64.whl
  • Upload date:
  • Size: 10.9 MB
  • Tags: CPython 3.13+, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp313-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 4a46d2669d52c766c3356cbbb45a3467a4a477a60c4a16364924b28f0fd2d7e2
MD5 cfbd04cb7c9f426434351c42120a9074
BLAKE2b-256 d169f45ce1ce6f9218e6b6d85ad19172d93565091edeff3c9c4eb60f49f24dc3

See more details on using hashes here.

File details

Details for the file die_python-0.5.0-cp313-abi3-win_amd64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp313-abi3-win_amd64.whl
  • Upload date:
  • Size: 10.0 MB
  • Tags: CPython 3.13+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 1c45e6589e1b6e85b1cf6a9d24df7591b6ec9b03ad275065d757764420a518aa
MD5 4f4a0bf08dba9a50d600d28ca2a74649
BLAKE2b-256 0708fb63c07fa224359d95608e07d25b87ae36efa894ba9bbf9d524ce0f51b2e

See more details on using hashes here.

File details

Details for the file die_python-0.5.0-cp313-abi3-manylinux_2_34_x86_64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp313-abi3-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 57.4 MB
  • Tags: CPython 3.13+, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp313-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 b68a8ce0ae4617ca242c69e29933b5086370b17ebbc4850b26bd29cc5c5ca1b6
MD5 645ad83028e6efec340e98fb73e6ef8b
BLAKE2b-256 121b1d50ab75bfb581c2b828668938d651288e4d069e24b97cb589bac73ffc7b

See more details on using hashes here.

File details

Details for the file die_python-0.5.0-cp313-abi3-manylinux_2_34_aarch64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp313-abi3-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 68.0 MB
  • Tags: CPython 3.13+, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp313-abi3-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 233b188a758ca72231b76a6a852925e9f40338fbea642eb1392c16214d22bbd8
MD5 1bfeb451a6029042a1cee17cc615decd
BLAKE2b-256 ace2dcd482242c7778cacc1fb4d743d86f4b7e57e408c00f00fb37ecf898c9c4

See more details on using hashes here.

File details

Details for the file die_python-0.5.0-cp313-abi3-macosx_14_0_x86_64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp313-abi3-macosx_14_0_x86_64.whl
  • Upload date:
  • Size: 5.4 MB
  • Tags: CPython 3.13+, macOS 14.0+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp313-abi3-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 a8220b7efd8ebb8e49bf20285e7c3f962400f54af4aad7e1bbfc021dfe7bef33
MD5 0a0c3721d5308c5a2145ea8b117b08d8
BLAKE2b-256 43235faa143a60e757d51b7a6d6e23504e5293da3b6655694c809ad4385ca122

See more details on using hashes here.

File details

Details for the file die_python-0.5.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 9.8 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 3c4c62eae440b34b8200e11c8c5946399e07cae5bc355371f2145d20a950098b
MD5 e6aae582b24f9b46a960ba765da52e57
BLAKE2b-256 5823553e6b90f50a3afa514e120e33fdf1f8d459616d093b268f2cfcd89f47ef

See more details on using hashes here.

File details

Details for the file die_python-0.5.0-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp312-cp312-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 57.4 MB
  • Tags: CPython 3.12, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 cb0775de6a5869a088416955b0f6c9d3f2e6a410802075d989776afac4df0993
MD5 4398bd7930284e3799f3ffd3ac9bb59c
BLAKE2b-256 dc6d68bf65bf9dc88972ef5f090d1ff24eab6f296fc8297aa449c5a1e3c02804

See more details on using hashes here.

File details

Details for the file die_python-0.5.0-cp312-cp312-manylinux_2_34_aarch64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp312-cp312-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 68.0 MB
  • Tags: CPython 3.12, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp312-cp312-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 5e521db5b1c443b0108ade124e849ca50ac6347fff324f1aaa5df1ce35864825
MD5 4a87b8c0aec08554b9e36b00e5cd22b6
BLAKE2b-256 89253b59f114bd53bb71a51ab95df3d9cfb1160edb48ca4b6f3653b2a92af756

See more details on using hashes here.

File details

Details for the file die_python-0.5.0-cp312-cp312-macosx_14_0_x86_64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp312-cp312-macosx_14_0_x86_64.whl
  • Upload date:
  • Size: 5.4 MB
  • Tags: CPython 3.12, macOS 14.0+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp312-cp312-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 ad80288406ec62ceae08618a2ef68d19c240b4c4b3948c5f5db4fff694128326
MD5 ebf149cfa73831168c2fe7b4188182a6
BLAKE2b-256 8b3b137c30fee2ed4b8fcea8f26dcb870098bbed1cdfc5d63a90f354ec061e48

See more details on using hashes here.

File details

Details for the file die_python-0.5.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 9.8 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 79d56740435aaf5cf9719db7849a4d235a3e8f9a20c0c5847ffc95c78e46a04a
MD5 5f74c16e1f5b1f00579462887a45ee8b
BLAKE2b-256 e21b7e824213a6cbf6341282e2b15484f9076d8ee36da2ed8786ce18aad576b3

See more details on using hashes here.

File details

Details for the file die_python-0.5.0-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp311-cp311-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 57.4 MB
  • Tags: CPython 3.11, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 9c66f49f1c7bd283a06951108dfdd067eb001fdc2dec01314833f3b43e755dab
MD5 9d70538a74ae883f0efd23ef9c4b34f2
BLAKE2b-256 91c805f306dc71a39293f6dc5d8dd30b5338e4cab033a28a9d53236c3ef7c5e1

See more details on using hashes here.

File details

Details for the file die_python-0.5.0-cp311-cp311-manylinux_2_34_aarch64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp311-cp311-manylinux_2_34_aarch64.whl
  • Upload date:
  • Size: 68.0 MB
  • Tags: CPython 3.11, manylinux: glibc 2.34+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp311-cp311-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 f3f35b53aed02f95238abeed6e3cdc9fda29b16c8634d24a33722118b6e75d25
MD5 795b9460b7cd962e8f91ecb1159d3abb
BLAKE2b-256 2d1a4bc23695165fc352a682493e0abad2da1b6eaa3d9605bdb2704d3c6632d6

See more details on using hashes here.

File details

Details for the file die_python-0.5.0-cp311-cp311-macosx_14_0_x86_64.whl.

File metadata

  • Download URL: die_python-0.5.0-cp311-cp311-macosx_14_0_x86_64.whl
  • Upload date:
  • Size: 5.4 MB
  • Tags: CPython 3.11, macOS 14.0+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for die_python-0.5.0-cp311-cp311-macosx_14_0_x86_64.whl
Algorithm Hash digest
SHA256 08ac9d2538abad7f8b0d41ba7e99ded8a935e37846b29d2bf757c56c8fe0a7ab
MD5 75958032a88c1925d56e165252daac41
BLAKE2b-256 c7870ffc88facba1f5832fb1195f7a27b4978bdbddc2efd4a5c9e873e9ea492f

See more details on using hashes here.

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