Skip to content

xenthy/desmali

Repository files navigation

desmali

Table of Contents

Setting Up

  1. Build/Install dependencies
./configure

Running Project using Make

  1. To run the program
cd desmalimake server
  1. To clean compiled files (.pyc, __pycache__/, .tmp/)
make clean

Running Project using Docker

cd desmalimake docker

Obfuscation Methods

Purge Logs [Remove]

Remove logs that may contain sensitive information

String Encryption [Replace]

Encrypt strings with AES

Rename Methods [Rename]

Rename method declarations and invocations

Rename Class [Rename]

Rename classes and their packages

Goto Injector [Restructure]

Modify the CFG by wrapping each method with 2 nodes

Boolean Arithmetic [Restructure]

Inject an always true/false clause into the CFG

Randomise Labels [Restructure]

Alter the CFG by randomly reordering & abusing goto instructions

Viewing Debug Logs

Logs with the level of verbose and higher will be printed to stdout, to view debug logs, navigate to logs/program.log