Malware Analysis is the practice of determining and analyzing suspicious files on endpoints and within networks using dynamic analysis, static analysis, or full reverse engineering.
A strong Malware Analysis practice aids in the analysis, detection, and mitigation of potential threats. Malware Analysis can help organizations identify malicious objects used in advanced, targeted, and zero-day attacks
There are three main types of Malware Analysis:
1. Static Analysis examines the files for signs of malicious intent without executing the program.This form can also call for manual review by an IT professional after the initial examination to conduct further analysis as to how the malware interacts with the system.Static document analysis looks for abnormalities in the file itself, not in how it executes.
It seeks to answer questions such as the following:
2. Dynamic Analysis relies on a closed system (known as a sandbox), to launch the malicious program in a secure environment and simply watch to see what it does. The inspection environment simulates an entire host (including the CPU, system memory, and all devices) to continuously observe all the actions malicious objects can take. This automated system enables professionals to watch the malware in action without letting it infect their system. Dynamic analysis interacts with the malware to elicit every malicious behavior supports automation, fast and accurate findings, and can support identifying and analyzing the obscurities within an organization’s infrastructure
3. Reverse Engineering malware involves disassembling (and sometimes decompiling) a software program. Through this process, binary instructions are converted to code mnemonics (or higher-level constructs) so that engineers can look at what the program does and what systems it impacts. Only by knowing its details are engineers then able to create solutions that can mitigate the program’s intended malicious effects. A reverse engineer (aka “reverser”) will use a range of tools to find out how a program is propagating through a system and what it is engineered to do. And in doing so, the reverser would then know which vulnerabilities the program was intending to exploit