How to Learn Malware Analysis

Malware Analysis Roadmap
From zero to your first malware sample report
Six steps, in the order that actually works. Lab setup, fundamentals, static analysis, dynamic analysis, reverse engineering and detection writing, with the tools used at each stage and the mistakes that get beginners infected.
6 steps
Lab to detection rules
5 to 8 months
To job ready, part time
Windows
Primary platform
Before you start
What malware analysis actually is

Malware analysis is the work of taking a suspicious file and answering three questions. What does it do, how do we detect it, and what damage has it already done. That output feeds SOC detection rules, incident response timelines and threat intelligence reports.

It is not the same as penetration testing. Pentesting is about breaking in. This is about taking something apart after it is already inside, usually under time pressure, usually while someone senior is asking when the report will be ready.

  • Who hires for it SOC teams, DFIR consultancies, antivirus and EDR vendors, threat intelligence teams, and large banks with in house response teams
  • What you need to start a machine with 16 GB RAM if possible, 8 GB at a stretch, and 100 GB of free disk for virtual machines
  • What makes it different patience. A single sample can take a full day, and that is normal, not slow
Safety firstYou will be handling live malicious code. Everything below happens inside an isolated virtual machine with no access to your host, your files or your home network. Treat every sample as if it will try to spread, because some of them will.
Step 011 to 2 days
Build an isolated lab

This is the only step you must not improvise. A badly built lab does not just fail, it infects your actual machine and encrypts your actual files.

The virtual machines
  • Windows analysis VM Windows 10 in VirtualBox or VMware, Defender disabled, automatic updates off, no antivirus. This is where samples run
  • FLARE VM a free script from Mandiant that installs the entire Windows analysis toolkit onto that VM in one go
  • REMnux a Linux distribution built for malware analysis, used as your second machine for network simulation and static tooling
  • Allocate 4 GB RAM and 60 GB disk per VM, more if your host allows
Isolation rules
  • Host only networking, or an internal network between the Windows VM and REMnux. Never bridged, never NAT with internet access while detonating
  • No shared folders, no shared clipboard, no drag and drop while a sample is live
  • Disable guest additions network features once setup is done, some malware escapes through them
  • Move samples in as password protected archives, the standard password used by researchers is infected
Snapshots
  • Take a clean snapshot after setup and after every tool install
  • Restore to clean before every new sample, without exception
  • Name snapshots clearly, you will be switching between them constantly
CheckpointYour Windows VM can talk to REMnux, neither can reach the internet or your host, and you can restore a clean state in under a minute.
Common mistakeAnalysing on the host because setting up a VM felt slow. This is how people lose their dissertation, their photos and their client files in one afternoon.
Step 024 to 6 weeks
Learn the fundamentals

You cannot reverse engineer something you do not understand. This is the month that decides whether you finish this roadmap or abandon it at the first assembly screen.

Windows internals
  • Processes, threads, handles, and what process injection actually means at the API level
  • DLLs, the loader, and why DLL search order matters to attackers
  • The registry, run keys, services, scheduled tasks, the standard persistence locations
  • Common Win32 APIs worth recognising, CreateProcess, VirtualAlloc, WriteProcessMemory, RegSetValueEx, InternetOpenUrl
The PE file format
  • DOS header, NT headers, section table, and what each section usually holds
  • Import and export tables, and how imports reveal capability before you run anything
  • Entry point, relocations, resources, and where packers hide payloads
Assembly and C
  • x86 and x64 basics, registers, the stack, calling conventions, common instructions
  • Loops, conditionals and function calls as they appear in disassembly
  • Enough C to read decompiler output, pointers, structs, string handling
CheckpointGiven a PE file, you can name its sections, list interesting imports, and explain what those imports suggest before executing it.
Step 032 to 3 weeks
Static analysis

Static analysis means learning everything you can without running the file. It is free, it is safe, and it often answers most of the question before detonation. Squeeze it dry first.

First pass
  • Hashes, MD5, SHA1 and SHA256, then check them against public intelligence sources
  • Real file type, because extensions lie. Check the magic bytes
  • Strings, both ASCII and Unicode. Look for URLs, IPs, file paths, registry keys, mutex names, command lines
  • Compile timestamp and language hints, though both can be faked
PE inspection
  • PEStudio imports, resources, indicators, all in one view. Start here
  • Detect It Easy compiler and packer identification
  • Entropy high entropy sections usually mean packing, encryption or an embedded payload
  • Resources embedded executables, configuration blobs and decoy documents hide here
Reading imports like a story
  • Networking APIs plus file writing plus persistence keys suggests a downloader
  • Crypto APIs plus file enumeration plus shadow copy deletion suggests ransomware
  • Keyboard hooks plus clipboard access plus HTTP POST suggests an infostealer
  • Very few imports plus high entropy usually means packed, and the real imports appear only at runtime
CheckpointFrom static analysis alone, you can write two sentences predicting what the sample will do when executed, and later confirm or correct them.
Step 042 to 3 weeks
Dynamic analysis

Now you run it and watch everything it touches. Behavioural evidence is what SOC teams can actually detect on, so this step produces most of your usable output.

The monitoring stack
  • Procmon file, registry, process and network events. Filter aggressively or you will drown
  • Process Hacker live process tree, injected memory regions, loaded modules, strings in memory
  • Regshot snapshot the registry before and after, then diff it
  • Autoruns reveals persistence the sample created
  • Wireshark plus INetSim or FakeNet capture traffic and fake the internet so the sample gets replies without reaching real infrastructure
What to record for every sample
  • Files created, modified and deleted, with full paths
  • Registry keys written, especially persistence locations
  • Processes spawned, and any process injection into legitimate binaries
  • Network indicators, domains, IPs, user agents, request paths, beacon intervals
  • Mutexes, because they make excellent detection signatures
When nothing happens
  • The sample may be checking for a VM, a debugger, a specific language setting or a recent uptime
  • It may be waiting. Some families sleep for minutes or hours before acting
  • It may need a specific command line argument or an export to be called directly
  • Note the evasion itself, that behaviour is intelligence too
CheckpointYou can produce a clean behavioural timeline for a sample, listing files, registry keys, processes and network indicators, and then restore your snapshot.
Step 05Ongoing
Reverse engineering

Static and dynamic analysis tell you what happened. Reverse engineering tells you why, and answers the questions behaviour cannot, such as what the configuration contains or how the encryption key is derived.

The tools
  • Ghidra free, powerful, and has a decompiler. The standard starting point in 2026
  • IDA Free excellent disassembler, the industry default in many teams
  • x64dbg the debugger you will live in for unpacking and runtime inspection
  • Scylla or PE-bear for dumping and repairing unpacked binaries
The workflow
  • Find the real entry point, then follow the flow rather than reading top to bottom
  • Rename functions and variables as you understand them, your future self depends on it
  • Break on interesting APIs instead of stepping through thousands of instructions
  • For packed samples, run until the payload is decoded in memory, then dump and fix the imports
Anti analysis tricks to expect
  • VM detection through registry artefacts, MAC address ranges, driver names and CPU features
  • Debugger detection, IsDebuggerPresent, timing checks, exception based tricks
  • String obfuscation and API resolution at runtime, so nothing useful appears in a strings dump
  • Sleep loops and delayed execution designed to outlast automated sandbox timeouts
CheckpointYou have unpacked at least one packed sample manually and extracted its configuration, such as its command and control addresses.
Pace yourselfThis is the slow part of the field and it never really ends. One sample understood deeply teaches you more than fifty samples skimmed.
Step 06Every sample
Detection and reporting

Analysis that nobody can act on is a hobby. This step turns your findings into something a SOC can deploy tomorrow morning, and it is the part that gets you hired.

Write detections
  • YARA rules built from stable strings and byte patterns, not from things that change every build
  • Sigma rules for behavioural detection from logs, process creation patterns, registry writes, suspicious parent and child chains
  • Network indicators domains, IPs, URI patterns and user agents, with a note on how long each is likely to stay valid
  • Test every rule against clean files too. A rule that fires on legitimate software is worse than no rule
Map to a framework
  • Map observed behaviour to MITRE ATT and CK techniques, defence evasion, persistence, credential access, exfiltration
  • This is how your report connects to the detections and controls the organisation already has
The report structure
  • Executive summary, three sentences a manager can read
  • Sample identification, hashes, file type, size, first seen
  • Capability summary, what it does, in order
  • Indicators of compromise, grouped by type
  • Detection opportunities, the rules you wrote
  • Recommended actions, containment and remediation steps
CheckpointYou can hand over a report where someone who has never seen the sample can hunt for it across an estate using only your document.
Practice
Where to get samples safely

You need real samples, and you need them from places that expect you to be handling them carefully.

  • MalwareBazaar free, tagged by family, archives password protected with the standard researcher password
  • theZoo and vx-underground curated archives, good for studying known families
  • Practical Malware Analysis labs the book's sample set, still the best structured training material in the field
  • Public sandbox reports read analyses of samples you have also examined and compare your conclusions with theirs
Handling rulesDownload samples only inside the analysis VM, keep them in password protected archives, never store them on your host, and never rename a sample to something harmless looking.
Planning
A realistic six month schedule

Based on eight to ten focused hours a week. More time compresses this, but the order stays the same.

Period
Focus
Weeks 1 to 2
Lab build, isolation testing, tooling install, first harmless test file
Weeks 3 to 8
Windows internals, PE format, assembly basics, reading simple disassembly
Weeks 9 to 11
Static analysis on ten real samples, written predictions for each
Weeks 12 to 14
Dynamic analysis, full behavioural timelines, first IOC lists
Weeks 15 to 20
Ghidra and x64dbg, manual unpacking, configuration extraction
Weeks 21 to 24
YARA and Sigma rules, three full reports, public writeups, start applying
Careers
Where malware analysis takes you
SOC Analyst, Tier 2
Escalated alerts, suspicious file triage, detection tuning. The most common entry point
DFIR Consultant
Incident response engagements, forensic timelines, client reporting under pressure
Threat Intelligence Analyst
Family tracking, campaign attribution, intelligence reporting for defenders
Detection Engineer
Writing and maintaining the rules that catch these samples at scale
Reverse Engineer
Antivirus and EDR vendors, deep analysis of new families and techniques
Threat Researcher
Public research, blog posts and conference talks on emerging malware
Not sure which step you are stuck on?

Most people stall in step 2, then blame the tools in step 5. Tell us where you are and we will tell you the next concrete thing to do.

Common questions
Do I need to know programming for malware analysis?
You need to read code more than write it. Enough C to follow decompiler output, enough Python to automate extraction and parsing, and a working understanding of x86 assembly. You do not need to be a software developer.
Is it safe to analyse malware on my laptop?
Only inside a properly isolated virtual machine with host only networking, no shared folders and clean snapshots. On the host directly it is never safe. Some families specifically look for shared folders and mapped drives.
Ghidra or IDA for a beginner?
Ghidra. It is free, it includes a decompiler, and the learning material available for it is excellent. IDA Free is worth learning later because many teams standardise on it.
How long does it take to become employable?
Five to eight months of consistent part time study to be credible for a Tier 2 SOC or junior DFIR role, assuming you finish with real reports and detection rules you can show.
Do I need a Windows licence?
Microsoft publishes free evaluation virtual machines for testing, which are sufficient for a lab. Rebuild or re arm them when the evaluation period ends.
Is malware analysis legal?
Analysing samples in your own isolated lab is legal in most jurisdictions, including India. What is not legal is deploying malware against systems you do not own, or distributing samples carelessly. Handle and store them responsibly.
This roadmap is educational. Handle live samples only inside an isolated lab you control.