You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Sep 29, 2020. It is now read-only.
It appears that on Windows 10 version 1903 the export table of the kernel is not parseable. This is a serious issue that breaks initialization process.
During boot:
Using Mode: MODE_EXTERNAL
PML4: 1ad000 | KernelEntry: fffff8047e2ca9a0
Kernel Base: fffff8047d800000 (2e00000)
ntHeader64: 0x7fffb5b67248 1
ParseExportTable: 994dd8 - 992000 + b64 * 4 > 177bb
ParseExportTable: 0
PsInitialSystemProcess: fffff8047dd6f3a0 (336f3a0)
System (PID 4): ffffd7846aa79040 (471c79040)
NT Version: 1000
NT Build: 18362
Process List:
0004 System
0174 smss.exe
Apparently the initialization process would find false matches of the kernel base. It is rather interesting though, as WinDbg sees the false matches as unmapped memory. It is an issue I will have to look into. In 0daf4d3 I have adjusted the search process to prioritize megabyte aligned pages before going through the regular ones. This solves initialization for me, but from what I can tell the correct kernel base might be in a 4k sized page. We might have to return to this to find more reliable code signatures, but closing for now.
It appears that on Windows 10 version 1903 the export table of the kernel is not parseable. This is a serious issue that breaks initialization process.
During boot:
After boot:
Notice the kernel base changing. There might be a workaround inside the security settings, but that is far from ideal.
The text was updated successfully, but these errors were encountered: