Best Languages to Learn for Malware Analysis

One of the most common questions I’m asked is “what programming language(s) should I learn to get into malware analysis/reverse engineering”, to answer this question I’m going to write about the top 3 languages which I’ve personally found most useful. I’ll focus on native malware (malware which does not require a framework such as Java, Python, or .NET to run), as this is the most common type and understanding it it will provide you the skills required to pivot into other kinds. In this article I won’t be covering IoT or mobile malware as this is more specialized and I don’t have as much experience with it.

Python is an incredibly versatile language and my personal go to for when I need to get something done quickly. Whilst the are several other languages which are fast for development, I find python to have the best combination of readability, rapid development potential, and easiness to learn. One of my favorite things about python is the write once run anywhere nature of it: it’s an interpreted language so the interpreter does all the translating between different operating systems for you, meaning you can write code and expect it to work on any operating system with python installed. I’m a big fan of Linux servers but I use Windows as my main OS; therefore, it’s incredibly useful to be able to write and test my code on my desktop then just upload it to the server when I’m done, instead of trying to develop and test code in a PuTTY terminal (ugh).


Malware Manipulation


One of my favorite uses for python is quickly replicating components of malware in order to better understand how they work, or interface ..

Support the originator by clicking the read the rest link below.