Awesome Executable Packing Awesome Tweet

A curated list of resources related to executable packing (including Portable Executable, Executable and Linkable Format and others) containing references to books, papers, blog posts, and other written resources but also packers and tools for detecting packers and unpacking executables.

Packing is the action of modifying an executable in a way that does not modify its purpose. It is generally one or a combination of the following operations: - bundling: makes a single executable with multiple files - compression: compresses the executable to reduce its original size - encoding: obfuscates the executable by encoding it - encryption: obfuscates the executable by encrypting it - mutation: alters the executable’s code so that it uses a modifided instruction set and architecture (e.g. using oligomorphism) - protection: makes the reversing of the executable harder (i.e. using anti-debugging, anti-tampering or other tricks) - virtualization: embeds a virtual machine that allows to virtualize executable’s instructions

Contents

:books: Literature

Documentation

Back to top

Scientific Research

Back to top

:bookmark_tabs: Datasets

Back to top

:package: Packers

After 2010

Back to top

Between 2000 and 2010

Back to top

Before 2000

Back to top

:wrench: Tools

Back to top

Contributing

Contributions are welcome! Please read the contribution guidelines first.

executablepacking.md Github