
Modulo Python per visualizzare i file Portable Executable (PE) in una vista ad albero utilizzando pefile e PyQt5. Può anche essere utilizzato con IDA Pro e Rekall per eseguire il dump di file PE in memoria e ricostruire gli import.
PE Tree è un modulo Python per visualizzare i file Portable Executable (PE) in una vista ad albero utilizzando pefile e PyQt5. Può anche essere utilizzato con IDA Pro, Ghidra, Volatility, Rekall e minidump per visualizzare e scaricare file PE in memoria, nonché per eseguire la ricostruzione della tabella delle importazioni.
L'app autonoma PE Tree trova eseguibili portatili in file, cartelle e archivi ZIP.

Installa direttamente da GitHub usando un ambiente virtuale nuovo e pip:
> virtualenv env
> env\Scripts\activate
> pip install --upgrade pip
> pip install git+https://github.com/blackberry/pe_tree.git
$ python3 -m venv env
$ source ./env/bin/activate
$ pip install --upgrade pip
$ pip install git+https://github.com/blackberry/pe_tree.git
Clona il repository e configura per lo sviluppo:
> git clone https://github.com/blackberry/pe_tree.git
> cd pe_tree
> virtualenv env
> env\Scripts\activate
> pip install -e .
$ git clone https://github.com/blackberry/pe_tree.git
$ cd pe_tree
$ python3 -m venv env
$ source ./env/bin/activate
$ pip install -e .
Esegui PE Tree e scansiona file, cartelle e archivi ZIP per eseguibili portatili:
$ pe-tree -h
usage: pe-tree [-h] [filenames [filenames ...]]
PE-Tree
positional arguments:
filenames Path(s) to file/folder/zip
optional arguments:
-h, --help show this help message and exit
Esegui PE Tree e tenta di effettuare il carving di file eseguibili portatili da un file binario:
$ pe-tree-carve -h
usage: pe-tree-carve [-h] filename
PE-Tree (Carve)
positional arguments:
filename Path to file to carve
optional arguments:
-h, --help show this help message and exit
La modalità scura può essere abilitata installando QDarkStyle:
$ pip install qdarkstyle
Il plugin IDAPython di PE Tree trova eseguibili portatili nei database IDA.

Per installare ed eseguire come plugin IDAPython puoi usare setuptools o installare manualmente.
Scarica pe_tree e installa per l'interprete Python globale usato da IDA:
$ git clone https://github.com/blackberry/pe_tree.git
$ cd pe_tree
$ python setup.py develop --ida
Copia pe_tree_ida.py nella tua cartella dei plugin IDA