A modular Karton Framework service that unpacks common packers like UPX, MPress and others using the Qilling Framework.
Project description
Unpacker Karton Service
A modular Karton Framework service that unpacks common packers like UPX and others using the Qiling Framework.
This project is FREE as in FREE :beer:, use it commercially, privately or however you see fit.
If you like this project and wish to donate :moneybag: to support the fight against malware...
Buy me a :tea:, as I don't drink :beer:, by sending me some ₿ to 16oXesi7uv3jdPZxxwarHSD2f3cNMpaih9
Figure 1: Example of UPX Unpacked Children
Figure 2: Qiling Framework Unpacking calc.exe
shellcode from tests/shellcode.exe
Consumes:
{
"type": "sample",
"stage": "recognized",
"kind": "runnable",
"platform": "win32"
},
{
"type": "sample",
"stage": "recognized",
"kind": "runnable",
"platform": "win64"
},
{
"type": "sample",
"stage": "recognized",
"kind": "runnable",
"platform": "linux"
}
{
"type": "sample",
"kind": "runnable",
"stage": "recognized",
"platform": <win32|win64|linux> (If PE File in Dump),
"payload": {
"sample": <Resource>,
"parent": <Resource>,
}
}
Usage
Make sure you have setup the core system: https://github.com/CERT-Polska/karton
Install from PyPi:
$ sudo apt install -y python3-virtualenv python-is-python3
$ virtualenv venv/
$ source venv/bin/activate
$ pip install karton-unpacker
$ git clone https://github.com/c3rb3ru5d3d53c/karton-unpacker-modules.git modules/
$ find modules/ -name "requirements.txt" | while read i; do pip install -r $i; done
$ git clone --recursive https://github.com/qilingframework/qiling.git
# Due to distribution restriction, Qiling Framework will not bundle Microsoft Windows DLL files and registry.
# Please use the script qiling/examples/scripts/dllscollector.bat on your Windows machine to collect the required DLLS for the rootfs
# Once the required DLLs have been collected copy them in the rootfs
$ karton-unpacker --config-file karton.ini --modules modules/ --rootfs qiling/examples/rootfs/ --timeout 30 --debug
Install from Source:
$ sudo apt install -y python3-virtualenv python-is-python3
$ git clone --recursive https://github.com/c3rb3ru5d3d53c/karton-unpacker.git
$ cd karton-unpacker/
$ virtualenv venv/
$ source venv/bin/activate
$ pip install .
$ git clone --recursive https://github.com/qilingframework/qiling.git
# Due to distribution restriction, Qiling Framework will not bundle Microsoft Windows DLL files and registry.
# Please use the script qiling/examples/scripts/dllscollector.bat on your Windows machine to collect the required DLLS for the rootfs
# Once the required DLLs have been collected copy them in the rootfs
$ karton-unpacker --config-file karton.ini --modules modules/ --rootfs qiling/examples/rootfs/ --timeout 30 --debug
Testing Your Installation
Once you have completed installing karton-unpacker
, try uploading the file tests/shellcode.exe
to mwdb.
If successful, you will see a file in relations with the name unpacked
, this is the extracted shellcode to spawn cmd.exe
.
Contributing
If you wish to contribute your own modules to automatically unpack malware, please refer to CONTRIBUTING.md
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file karton-unpacker-1.1.1.tar.gz
.
File metadata
- Download URL: karton-unpacker-1.1.1.tar.gz
- Upload date:
- Size: 4.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a6a8e883e7428ee065378128b8351a652f095a3e508765cb632ccfaf3c0c7d4 |
|
MD5 | 84a9fb4633b292850e8573909674200a |
|
BLAKE2b-256 | c3fbc88a7184bdec1fb1fdf7a6c1ff5ae3981db32429e0475b00ba2e130502ce |
File details
Details for the file karton_unpacker-1.1.1-py3-none-any.whl
.
File metadata
- Download URL: karton_unpacker-1.1.1-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5999e8e101c5f7eab90bb1c97e719078c9ef2c35f9ab4b11b555ec68dfbfa5cc |
|
MD5 | 6023d0de549b67ece82d78c5721caa7c |
|
BLAKE2b-256 | 495425e3ab105c01ec2776c77ff3b981c7f8b6287687b89d2948bceacb53b378 |