Part 0: Building a Windows Exploit Development Lab with WinDbg (32-bit
An isolated Windows 10 VM + the 32-bit Debugging Tools for Windows — the prerequisite for the whole OSED journey

TL;DR — Build an isolated Windows 10 (1809-era) VM from a legal source (Microsoft Evaluation Center / official ISO). Snapshot it. In the isolated VM only, disable Windows Update and Microsoft Defender so the build stays stable and your PoCs don't get quarantined. Install the 32-bit Debugging Tools for Windows (WinDbg) from the SDK installer, set a symbol path, save a workspace, verify by attaching to a 32-bit app, then snapshot the clean lab.
Exploit development means deliberately crashing programs and running PoC code — that belongs in an isolated VM, never your host. This post sets up the environment for the rest of the OSED journey. It's "Part 0" because everything else depends on it.
Why a Dedicated, Isolated VM
Isolation — crashes/shellcode/PoCs stay sandboxed.
Snapshots — instant rollback to a clean state.
Reproducibility — a fixed build keeps addresses/behavior consistent.
Rule: after setup, keep the VM off the internet and your LAN (host-only/internal networking). We're weakening its security on purpose.
Getting Windows the Right Way
You want a Windows 10 (1809-era) VM (period-accurate for EXP-301). Source it legally:
Microsoft Evaluation Center (free, time-limited ISOs)
Microsoft's free pre-built test VMs
Avoid unofficial mirrors for anything you publish or rely on — legitimate sources avoid licensing issues and tampering.
I personally downloaded from the link.
Download the Windows 10 required version
What You'll Install
A hypervisor: VMware, VirtualBox, or Hyper-V.
Debugging Tools for Windows (WinDbg) — the 32-bit (x86) package, via the Windows SDK installer (select only "Debugging Tools for Windows"). Official MSI: "X86 Debuggers And Tools-x86" from
download.microsoft.com.I downloaded the debugging tool from the link below.
Download Windows Debugging Tool
Hands-On Lab
Create the VM — ~2 vCPU / 4 GB RAM / 60 GB disk; host-only/internal network.
Install Windows 10 (1809) from a legal source; local account. Snapshot →
clean-install.
Disable Windows Update (isolated lab only) —
services.msc→ Windows Update → Disabled + Stop.
Disable Microsoft Defender (isolated lab only) — Windows Security → turn off Real-time protection; permanent via
gpedit.msc → ... → Microsoft Defender Antivirus → Turn off → Enabled.Install WinDbg (x86) — run the SDK MSI, select only "Debugging Tools for Windows".
Configure symbols —
SRV*C:\symbols*https://msdl.microsoft.com/download/symbols.Save a workspace — Command + Disassembly views → File → Save Workspace.
Verify — attach to a 32-bit app, run
r.
Snapshot →
lab-ready.
Safety Recap
Disposable, isolated VM — no personal data, no real logins, no internet/LAN after setup.
Disabling Update + Defender is acceptable only in a sandboxed, snapshotted VM. Never on a host/production system.
Snapshot before and after configuration.
Conclusion
You now have an isolated Windows 10 (1809) VM, Update + Defender off (isolated VM only), the 32-bit WinDbg installed with symbols + a saved workspace, and a clean lab-ready snapshot. Next: Part 1 — x86 architecture (program memory, the stack, and CPU registers).
Part of my OSED (EXP-301) journey. Not affiliated with or endorsed by any organization; reflects my own study using public tools. Obtain Windows legally and only disable security controls inside an isolated lab VM.


