Quick answer

KERNEL_SECURITY_CHECK_FAILURE (stop code 0x00000139) means Windows caught a critical data structure corrupted in memory. It is a memory-integrity fault, so test the two things that corrupt memory first: your RAM (MemTest86, one stick at a time) and any XMP/EXPO overclock (drop to JEDEC speed). Only if memory is clean, move to drivers, then system files and storage.

By LK Wood IV · 2026-07-13 · ~9 min read · St. Louis County, MO

KERNEL_SECURITY_CHECK_FAILURE (stop code 0x00000139) sounds like a virus or a hacked machine. It isn’t. The “security check” is Windows verifying the integrity of its own data structures — and this blue screen means one of them was found corrupted in memory. That single fact reorders the whole fix: the first thing you test is not drivers or malware, but the two things that corrupt memory — your RAM and any memory overclock.

Most guides bury RAM testing at step five behind sfc /scannow. For 0x139 specifically, that’s backwards.

What 0x139 is actually checking

Windows constantly validates critical kernel data — list pointers, buffers, control structures. A security check compares one of these against what it should be. When they don’t match, the kernel assumes something corrupted it and halts with 0x139 rather than keep running on bad data. It’s a smoke detector for memory corruption.

Corruption has a short list of sources, and they’re not equally likely:

  • Unstable or failing RAM — a bad stick, or a good stick pushed past what it can hold.
  • An XMP/EXPO overclock the kit or memory controller can’t quite sustain — the RAM is fine, the speed isn’t.
  • A bad driver writing where it shouldn’t.
  • Corrupt system files after a bad update.
  • Failing storage feeding corrupt data back to the kernel.

The order you test them in is the difference between a one-evening fix and a week of flailing. The same ordering carries over to the sibling stop code PAGE_FAULT_IN_NONPAGED_AREA (0x50), which shares the top two suspects — bad memory first, then failing storage. MEMORY_MANAGEMENT (0x1A) is the third code in the family; its guide adds the minidump subcode table that tells the RAM, storage, and driver flavors apart.

Two questions decide where you start
0x139 is memory corruption. Before you touch anything, answer these — they route you to the fast path instead of testing all five causes blind.
Q1 · Did you change hardware, RAM, or an overclock?
New sticks, more sticks, a fresh XMP/EXPO profile, a CPU/RAM overclock, or a brand-new build that has never been stable → start at RAM + memory speed (Steps 1–2). This is the most common path, especially on a new AM5 or Intel build.
Q2 · Did it start after a driver or Windows update?
Crashes began right after a GPU driver, a device driver, or a Windows update → start at drivers + system files (Steps 3–4). A named driver in the minidump makes this a one-driver fix.
Answered neither, or not sure? Test RAM anyway — it’s free, non-destructive, and the top cause of 0x139. techfuelhq.com

Step 1: Test your RAM

Bad memory is the number-one cause, so this is where almost everyone should start.

  • MemTest86 (free, from a USB stick) is the thorough test — run at least one full overnight pass. A single error anywhere means a stick or a memory setting is bad.
  • Windows Memory Diagnostic (Windows Key + Rmdsched.exeRestart now) is the quick built-in check — less thorough, but a fast first pass.
  • Reseat and isolate: power down, reseat both sticks firmly, then if the errors persist, test one stick at a time in the same slot to find the bad module. A single failing stick is a common, cheap fix — replace it (ideally with a matched kit).

If MemTest86 is clean at default speed, your physical RAM is probably fine — which points straight at Step 2.

Step 2: Drop XMP / EXPO to JEDEC

This is the step people skip, and it fixes a huge share of 0x139 on modern builds. XMP (Intel) and EXPO (AMD) are memory overclock profiles — the advertised DDR5-6000 or DDR5-6400 speed is not the RAM’s guaranteed-stable default. If your specific kit or your CPU’s memory controller can’t quite hold that profile, it silently corrupts data and throws 0x139, while the sticks themselves are perfectly good.

  • In BIOS, disable XMP/EXPO (or set the profile to Auto/Default) so memory runs at its JEDEC base speed (typically DDR5-4800 or 5600).
  • Boot and use the PC. If the crashes stop, the overclock was the problem — not the RAM.
  • From there you can try a milder profile, nudge SoC/DRAM voltage, or simply run at JEDEC. If you’re unsure what speed your kit is rated for versus running at, our DDR5 buying guide explains the XMP/EXPO-versus-JEDEC distinction and the AM5 6000-sweet-spot in plain terms.

A brand-new build that has never been stable and throws 0x139 is very often this — an EXPO profile the board never truly validated.

Step 3: Find a bad driver with Driver Verifier

If memory is clean and the overclock is ruled out, a misbehaving driver corrupting kernel memory is next. First, read the easy clue: open C:\Windows\Minidump with BlueScreenView (free) — if it names a specific .sys, update or roll back that driver and you may be done. A graphics driver (nvlddmkm.sys, amdkmdag.sys) gets a clean reinstall via our GPU driver crash fix guide.

When the dump is vague, Driver Verifier forces the guilty driver to reveal itself — but it’s a power tool, so use it safely:

  1. Create a System Restore point first.
  2. Run verifierCreate custom settings → select the standard tests → Select driver names from a list → check only non-Microsoft drivers.
  3. Reboot. If a bad driver exists, Verifier will blue-screen and name it in the next minidump.
  4. Know the escape hatch: if it boot-loops, enter Safe Mode and run verifier /reset to turn it off.

If you’re not comfortable recovering from a boot loop, skip Verifier and lean on Steps 1–2 and 4 — they resolve most cases without it.

Step 4: Repair system files and check storage

  • Corrupt system files (common after a failed update) — open Terminal (Admin) and run sfc /scannow, then DISM /Online /Cleanup-Image /RestoreHealth, and reboot.
  • Failing storage — a dying boot SSD can feed corrupt data back to the kernel. Run CrystalDiskInfo; a drive reading Caution should be backed up and replaced. If the drive is also vanishing from Explorer or slowing down, work our SSD not showing up guide.
  • Malware — because “security” is in the name people jump here first, but it’s an uncommon cause. A full Windows Security scan rules it out; don’t let it distract from the RAM and driver work.

The fix order, in one list

  1. Test RAM — MemTest86 overnight, reseat, one stick at a time.
  2. Drop XMP/EXPO to JEDEC — rules out an unstable memory overclock (fixes many new builds).
  3. Drivers — read the minidump (BlueScreenView); use Driver Verifier for the stubborn ones, with a restore point and the Safe-Mode reset ready.
  4. System files + storagesfc / DISM, then CrystalDiskInfo; a quick malware scan to close it out.

The reason RAM leads and malware trails is the stop code itself: 0x139 is a memory-integrity failure, and you test the things that corrupt memory before the things that rarely do. If this blue screen is showing up alongside other stop codes or random reboots, step up to the whole-system flow in PC keeps restarting or computer keeps freezing, where the stop-code decoder maps each code to its fix.

Sources

  • Stop code identity: Microsoft’s Bug Check 0x139 KERNEL_SECURITY_CHECK_FAILURE reference — the kernel detected the corruption of a critical data structure. The RAM-first ordering reflects that this is a memory-integrity bug check, corroborated across Microsoft Q&A, Tom’s Hardware, Level1Techs and MSI forum threads that repeatedly trace 0x139 to bad RAM or an unstable XMP/EXPO profile.
  • Memory testing: MemTest86 (PassMark) from bootable USB, and Windows Memory Diagnostic (mdsched.exe). XMP/EXPO-versus-JEDEC behaviour is standard DDR5 platform behaviour, self-verifiable in BIOS. Driver Verifier (verifier.exe) and its verifier /reset recovery are documented Microsoft tools. Minidump reading via BlueScreenView (NirSoft); drive health via CrystalDiskInfo SMART data.

Windows 10/11 instructions, current for 2026 builds — Settings paths may sit one step elsewhere on older versions. Report problems to hello@techfuelhq.com.

Frequently asked questions

How do I fix Kernel Security Check Failure?
Because 0x139 is a memory-corruption error, test memory first. Run MemTest86 from a USB stick overnight, or the built-in Windows Memory Diagnostic (mdsched.exe). If you have two or more sticks, reseat them and test one at a time to find a bad module. If you run an XMP or EXPO profile, set memory to default JEDEC speed - an unstable overclock corrupts kernel data exactly like a failing stick. Only if RAM is clean do you move on: use Driver Verifier to catch a bad driver, then sfc /scannow and DISM for corrupt system files, and finally check storage health with CrystalDiskInfo.
Is Kernel Security Check Failure serious?
It is serious in that Windows halted to prevent corrupted data from doing damage, but it is usually fixable without replacing the machine. The common causes - unstable RAM, an aggressive memory overclock, a bad driver, or corrupt system files - are all things you can test and correct. It only means a hardware replacement when a memory test confirms a genuinely failing stick, or a drive-health check flags a dying SSD. A single occurrence after a driver or Windows update is often a one-time corruption that a clean update clears.
Can bad RAM cause Kernel Security Check Failure?
Yes - faulty or unstable RAM is the single most common cause. The 0x139 stop code fires when the kernel finds a critical data structure corrupted, and bad memory is the most direct way that data gets corrupted. Test it with MemTest86 (a full overnight pass) or Windows Memory Diagnostic, reseat the sticks, and test one stick at a time. Just as important: an XMP/EXPO profile that your kit or memory controller can’t quite hold produces the same corruption while the RAM itself is fine - drop to JEDEC speed to rule that out before you blame the sticks.
How do I fix stop code KERNEL_SECURITY_CHECK_FAILURE 0x139?
0x139 is the hex value for this bug check - the fix is the same regardless of how it’s written. Test RAM (MemTest86 / mdsched.exe, one stick at a time), set any XMP/EXPO memory profile back to JEDEC default, then run Driver Verifier to flag a misbehaving driver (be ready to disable it from Safe Mode if it boot-loops). Follow with sfc /scannow and DISM /Online /Cleanup-Image /RestoreHealth for corrupt system files, and check the boot drive’s health in CrystalDiskInfo. Read the minidump in C:\Windows\Minidump with BlueScreenView to see if a specific driver is named.
Kernel Security Check Failure only happens when I launch a game - why?
A crash that only appears under a gaming load points at memory stability or the GPU driver, not a random fault. Games hammer RAM bandwidth and push the CPU and GPU hardest, so an XMP/EXPO profile that’s marginally unstable, or a too-aggressive overclock, will corrupt data exactly then and never at idle - test at JEDEC speed first. If memory is clean, a crashing graphics driver is the next suspect: do a clean GPU-driver reinstall (see our GPU driver crash fix guide). Heat is a secondary factor - confirm temperatures are in range under load.
What is Driver Verifier and is it safe to use?
Driver Verifier (verifier.exe, built into Windows) stress-tests your drivers to force a misbehaving one to reveal itself, which is how you catch a driver causing 0x139 when the minidump doesn’t name it clearly. It is powerful but can send an unstable system into a boot loop, so use it deliberately: create a system restore point first, enable it for non-Microsoft drivers only, and know how to turn it off from Safe Mode (verifier /reset) before you start. If you’re not comfortable recovering from a boot loop, exhaust the RAM and system-file steps first - they fix most cases without it.

Evidence ledger

Last updated
Methodology
This guide was written and edited by Lowell K. Wood IV in St. Louis County, MO. Specs and prices verified against vendor and project documentation current on the date above. Full editorial standard: methodology.
Update log
  • 2026-08-25 — Last reviewed and updated.
Corrections
Spotted an error or a stale number? Email hello@techfuelhq.com. Confirmed corrections are added to the update log above.

About the author

Written by Lowell K. Wood IV, who builds and runs TechFuelHQ from St. Louis, Missouri.