Skip to main content

Python bindings for Detect It Easy (DIE).

Project description

DetectItEasy-Python

Python 3.8+ Downloads Code style: black Licence Apache2 Build

Native Python 3.8+ 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 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/'db') ))
{
    "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)
C:\Users\User\AppData\Roaming\Python\Python312\site-packages\die\db\db\ACE
C:\Users\User\AppData\Roaming\Python\Python312\site-packages\die\db\db\APK\PackageName.1.sg
C:\Users\User\AppData\Roaming\Python\Python312\site-packages\die\db\db\APK\SingleJar.3.sg
C:\Users\User\AppData\Roaming\Python\Python312\site-packages\die\db\db\APK\_APK.0.sg
C:\Users\User\AppData\Roaming\Python\Python312\site-packages\die\db\db\APK\_init
C:\Users\User\AppData\Roaming\Python\Python312\site-packages\die\db\db\Archive\_init
C:\Users\User\AppData\Roaming\Python\Python312\site-packages\die\db\db\archive-file
C:\Users\User\AppData\Roaming\Python\Python312\site-packages\die\db\db\arj
C:\Users\User\AppData\Roaming\Python\Python312\site-packages\die\db\db\Binary\Amiga loadable.1.sg
C:\Users\User\AppData\Roaming\Python\Python312\site-packages\die\db\db\Binary\archive.7z.1.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.4.0-cp313-abi3-win_amd64.whl (13.5 MB view details)

Uploaded CPython 3.13+Windows x86-64

die_python-0.4.0-cp313-abi3-manylinux_2_34_x86_64.whl (57.3 MB view details)

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

die_python-0.4.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.4.0-cp313-abi3-macosx_13_0_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.13+macOS 13.0+ x86-64

die_python-0.4.0-cp312-cp312-win_amd64.whl (13.5 MB view details)

Uploaded CPython 3.12Windows x86-64

die_python-0.4.0-cp312-cp312-manylinux_2_34_x86_64.whl (57.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

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

Uploaded CPython 3.12manylinux: glibc 2.34+ ARM64

die_python-0.4.0-cp312-cp312-macosx_13_0_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

die_python-0.4.0-cp311-cp311-win_amd64.whl (13.5 MB view details)

Uploaded CPython 3.11Windows x86-64

die_python-0.4.0-cp311-cp311-manylinux_2_34_x86_64.whl (57.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

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

Uploaded CPython 3.11manylinux: glibc 2.34+ ARM64

die_python-0.4.0-cp311-cp311-macosx_13_0_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

die_python-0.4.0-cp310-cp310-win_amd64.whl (13.5 MB view details)

Uploaded CPython 3.10Windows x86-64

die_python-0.4.0-cp310-cp310-manylinux_2_34_x86_64.whl (57.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

die_python-0.4.0-cp310-cp310-manylinux_2_34_aarch64.whl (68.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ ARM64

die_python-0.4.0-cp310-cp310-macosx_13_0_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

die_python-0.4.0-cp39-cp39-win_amd64.whl (13.5 MB view details)

Uploaded CPython 3.9Windows x86-64

die_python-0.4.0-cp39-cp39-manylinux_2_34_x86_64.whl (57.3 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.34+ x86-64

die_python-0.4.0-cp39-cp39-manylinux_2_34_aarch64.whl (68.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.34+ ARM64

die_python-0.4.0-cp39-cp39-macosx_13_0_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

File details

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

File metadata

File hashes

Hashes for die_python-0.4.0-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 9b28b623760126344d34df836a7d5ce688f4423b1c01d46191765e6f6f71462d
MD5 7a0ef875ea30d3fcac62a9e1f709b36f
BLAKE2b-256 8d3efdf0fad502cb1edc794bbf33de6416ad5bcd89fbf776330c69a528758370

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for die_python-0.4.0-cp313-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 eb5a7d7d053b8d6238695fe2bfc080b44a31a3b8d101cdf12aee71ea32a94bcd
MD5 de38a5823e541355f48e822a097cb9a0
BLAKE2b-256 a83b0171574dfef2da107a79dff4ba0de99ebf0c8b6790815ed46f44b367c975

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for die_python-0.4.0-cp313-abi3-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 9e47691bf648a4a88ce035a6b0c8239b92e4df945a6835a7ccd04414c4465f62
MD5 60171f90c80f5888dfdbbd6062809cca
BLAKE2b-256 986c0fd44f9bd8f3168ef43e242ded646cc9d22fbb924b28f47d40c90d3f3b4b

See more details on using hashes here.

File details

Details for the file die_python-0.4.0-cp313-abi3-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for die_python-0.4.0-cp313-abi3-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 bdb7b95f77f3c79752864aa5584a1951ac848a7e13b7740e2005963d471b648b
MD5 0cf4a23a53ca2f4ebb2d4b455c8818b8
BLAKE2b-256 fc4ee22105882f466b9731fafefbef8004d6e02b333b3d4f7e07b0e0933943ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for die_python-0.4.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 1a998c0b4cab237ac4d5e95ec90faca2b290f1f35002969ec904c03c58b22957
MD5 87e7a6eed3ab2e6825947318fa3fd996
BLAKE2b-256 4046286eadc7bd9c6b8292bbe8a189483d3bd0b4ba62df2023b6cc266ef1726d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for die_python-0.4.0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 429a9bab5cd47323b582ce836f2e21c88bda2ae579681c1bb6ca1ee968186f53
MD5 b354be8f9a25df36722c646d75d25816
BLAKE2b-256 af5d2d020f6ace7e0f9a8dd2d2472dcb930c4b4898c79fcbe6feeb33f0d6625f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for die_python-0.4.0-cp312-cp312-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 9509702bd131c49c291bafec1c4be0f5b068b03222fe6d17320892526204ac90
MD5 f7d1eddc861a1cae312d72dd1760bfaa
BLAKE2b-256 728d621bdd39cea7fc34735358ff3149ddb96c40baf4b366ef2e498cea655fde

See more details on using hashes here.

File details

Details for the file die_python-0.4.0-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for die_python-0.4.0-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 6e10e47d6e08c5a3d76777285b1d94826ae99b086fb3ca7d818c78226fb7f7ec
MD5 e24714167b720420126de19aa8f60425
BLAKE2b-256 c8738c25448b50bb34dc84c0c1dd46412e69b51ff32ac52a1459c3ee81839351

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for die_python-0.4.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 6f02941353fb9839684582d5d9a4512bb75cac679b820ff4e270da6d7a1eaca7
MD5 a84d96ddd2ea6e42cb100238fddfc547
BLAKE2b-256 c3503b3d1ba24035e5823964a7ec361b24007769ce282c2d7455a1ac93079143

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for die_python-0.4.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 d1d2784500f8a3d285d55592d4b0e703da14febb457515f00d4ff3c348cc1866
MD5 114d18dc155152f943441e661a699323
BLAKE2b-256 334f4a315a3eddfd869b2e51d999330c1a7514fed3944a2d384f8b0dbfb09811

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for die_python-0.4.0-cp311-cp311-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 24a400c0a6850a5d1cd4730e09bf8ae28639f64e8689a8472f946dfa30764e43
MD5 ddc09a0de533254612e60ba5ab9b8969
BLAKE2b-256 b5897dac8b0bd814ae1d2918b775b19abab3d287386682633c09866e50159a9a

See more details on using hashes here.

File details

Details for the file die_python-0.4.0-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for die_python-0.4.0-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 93dd2ce1b252e131ef7e0454796d24c822e70a8ebd45fbd8d0378892a96ef908
MD5 da2acc02d6e046d4da8b321a77465a11
BLAKE2b-256 21f6d5a0178bfbce9b4d90d80f5e242eecb314296fecd14366d61736f16a1a29

See more details on using hashes here.

File details

Details for the file die_python-0.4.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for die_python-0.4.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ec5561f513dd9b4aae98253d09052f18e33dc31acf8f38868e1bb420c572ae02
MD5 4d25291589b48cc19441c1fd6bd2e8c3
BLAKE2b-256 589f000a36c958b305c9e24718ff051b940fde81ec6b9fe9b89e2f7bd4898429

See more details on using hashes here.

File details

Details for the file die_python-0.4.0-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for die_python-0.4.0-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 8a540b95aafba095b430b5eeda6518cc6be412bea97a1b4e4a3bb0a76bc7ec91
MD5 02f3e7ac06271b4664f355732e76c5d1
BLAKE2b-256 37736e7816da3aa9e956bd801547ff7cf80850a72747f2c026b145ed6e0ce66f

See more details on using hashes here.

File details

Details for the file die_python-0.4.0-cp310-cp310-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for die_python-0.4.0-cp310-cp310-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 12a269f32650d2662ed8fe580cc0c033b661590bda08de58cfaa535902ee5bda
MD5 67cbed9e58e944f7d1d5a85b80eb9ada
BLAKE2b-256 12b4162be3bd55f57dd0d023eb627317478392763dc64ba84ed10abc831dd7fa

See more details on using hashes here.

File details

Details for the file die_python-0.4.0-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for die_python-0.4.0-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 19c6a7bfd9ab275b77d5f4cc9ffa85fd597d43cbe84912948970b6dc45b548d5
MD5 0c4f248a3e8cbc0a9de8e8c2d89a01b1
BLAKE2b-256 10e77c16e2d6b8f951b3a50a53e5b0beeca8c6a6b4b5b6a400e8b359b68e168a

See more details on using hashes here.

File details

Details for the file die_python-0.4.0-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for die_python-0.4.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 612bbc0bf1ff67a5d7fe9a4d3c490b65e123e55caf53a2bdb11f51d361745bb7
MD5 5c082d74d47b5356909f599dc5c2fa35
BLAKE2b-256 a2f8d5b1745bf77cfc1f5eba14a7479b53281d740886b59d28918104814ff1f9

See more details on using hashes here.

File details

Details for the file die_python-0.4.0-cp39-cp39-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for die_python-0.4.0-cp39-cp39-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 8175af9862655d9f681988932c2c98009d53fb3d06c39e91b6bc048c229e45e8
MD5 17bdf059f9018b63dcbe0c64c3e472aa
BLAKE2b-256 3197bd3fd4b65ccd8ef57c0d112531609128031e5d6ff8fcfb4eaf0d8948c056

See more details on using hashes here.

File details

Details for the file die_python-0.4.0-cp39-cp39-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for die_python-0.4.0-cp39-cp39-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 60b4c1f6ae386b3a252ad5edb1741377092a7e318762dac53133eeaca545a53e
MD5 60c3a5319d1fef3966567643fe5491cb
BLAKE2b-256 1dbb2f841252757f5806e19ae9d3387b8dd3eb2ccda5731339fe04355d8509e6

See more details on using hashes here.

File details

Details for the file die_python-0.4.0-cp39-cp39-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for die_python-0.4.0-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 5aa56705ae9390e61cd626849aaff86260f451e238ba1975892aae654ac68160
MD5 c06512943d802557ed5a8c64175b18fa
BLAKE2b-256 2d7720df324d456231f6e7f07d1af9a4bfa19f361118b89ea5a8b8d454666cd3

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