Rich (BB code):
MEMORY_MANAGEMENT (1a)
# Any other values for parameter 1 must be individually examined.
Arguments:
Arg1: 0000000000003453, The subtype of the BugCheck.
Arg2: ffffa084900a60c0
Arg3: 000000000035b2e1
Arg4: 0000000000000003
Hatanın ilk parametresi bir süreç sonlandırılması sonrasında, sürece dair adreslerin kaldırılması, adres alanının temizlenip ilgili bellek bölgelerinin boşa çıkarılması sürecinde, bütün sayfa tablolarının silinmediğini ve bunun bozuk bir sayfa tablosuna işaret ettiğini gösteriyor. Bu tipik olarak bozulmuş bir sayfa tablosu ihtimalini barındırıyor Quote'u da ekleniyor.
Not all the page table pages of an exited process could be deleted because of outstanding references. This error typically indicates corrupted process page table structures.
Bunu görmek için Stack'leri inceleyebiliriz;
Rich (BB code):
3: kd> k
# Child-SP RetAddr Call Site
00 ffff9f0b`17b4f668 fffff803`7769e1a4 nt!KeBugCheckEx
01 ffff9f0b`17b4f670 fffff803`779190f0 nt!MiDeleteFinalPageTables+0x1c8878 < Çökme
02 ffff9f0b`17b4f740 fffff803`779e65ee nt!MmDeleteProcessAddressSpace+0x64
03 ffff9f0b`17b4f790 fffff803`778bf4ce nt!PspProcessDelete+0x15e
04 ffff9f0b`17b4f830 fffff803`77466967 nt!ObpRemoveObjectRoutine+0x7e
05 ffff9f0b`17b4f890 fffff803`778be354 nt!ObfDereferenceObjectWithTag+0xc7 < Flags alanını dereferansa dönüştürme girişimi
06 ffff9f0b`17b4f8d0 fffff803`778bbcc9 nt!ObpCloseHandle+0x2a4
07 ffff9f0b`17b4f9f0 fffff803`7762a405 nt!NtClose+0x39
08 ffff9f0b`17b4fa20 00007ffb`646902b4 nt!KiSystemServiceCopyEnd+0x25
09 000000cf`d19fb7f8 00000000`00000000 0x00007ffb`646902b4
NT! KiSystemServiceCopyEnd çağrısı ile, daha önce kullanıcı modu işlevlerini gerçekleştiren sistemimiz, kullanıcı modu işlemlerinden çıkış yapıyor ve kernel modu işlemlerine geçiyor. Bundan önce ve bu dosyada göremediğimiz, kullanıcı modundan muhtemelen NtClose çağrısına bir kernel işlevi gönderiliyor. NtClose ilgili nesnenin tutamacını kapatıyor ve ardından gelen çağrı ile bunun kapandığını görebiliyoruz. Sonrasında, sistemin bir işlevi sildiğini ve Memory Manager'ın da o işleve ait olan bellek bölgesini temizlediğini görebiliyoruz. En son, son sayfa tabloları silinirken sistem çöküyor ve mavi ekran veriyor.
Elimizde bir minidump var yani çok fazla seçeneğimiz yok. Bu işlevin ilerleyişine yakından bakabiliriz;
Rich (BB code):
nt!MiDeleteFinalPageTables+0x1c884f:
fffff802`5f69e17b 48c1ff04 sar rdi,4
fffff802`5f69e17f 49b9abaaaaaaaaaaaaaa mov r9,0AAAAAAAAAAAAAAABh
fffff802`5f69e189 4c0fafcf imul r9,rdi
fffff802`5f69e18d 4c8bc3 mov r8,rbx
fffff802`5f69e190 4889442420 mov qword ptr [rsp+20h],rax
fffff802`5f69e195 ba53340000 mov edx,3453h
fffff802`5f69e19a b91a000000 mov ecx,1Ah
fffff802`5f69e19f e84c6cf7ff call nt!KeBugCheckEx (fffff802`5f614df0)
Gördüğümüz gibi, fazla bir şey eklemeden, sistemin ilgili çağrı sırasında nt!KeBugCheckEx fonksiyonunu yani mavi ekranı tetiklediği apaçık görülüyor.
Rich (BB code):
rax=0000000000000003 rbx=ffffa883fb7e00c0 rcx=000000000000001a
rdx=0000000000003453 rsi=000000007ffe7000 rdi=0000000000d1c2fb
rip=fffff8025f69e1a4 rsp=ffff86021a42a670 rbp=ffff86021a42a6d9
r8=ffffa883fb7e00c0 r9=000000000045eba9 r10=0000000000000002
r11=ffff86021a42a650 r12=ffffbd0000000000 r13=ffffa88407d25080
r14=0000000000000002 r15=ffffa883fd94d080
iopl=0 ov up ei pl nz na po cy
cs=0010 ss=0018 ds=002b es=002b fs=0053 gs=002b efl=00040a07
nt!MiDeleteFinalPageTables+0x1c8878:
fffff802`5f69e1a4 cc int 3
Rich (BB code):
5: kd> !pte 0000000000000003
PXE at FFFFE1F0F87C3000 PPE at FFFFE1F0F8600000 PDE at FFFFE1F0C0000000 PTE at FFFFE18000000000
contains 0000000000000000
contains 0000000000000000
not valid
Muhtemelen çıkış yaptığın program da Valorant. Genel bir hata olabilir o yüzden bir süreliğine Vanguard'dan uzak dur.
Raporlayan 1-2 kişi gördüm çünkü.
Rich (BB code):
5: kd> !handle
PROCESS ffffa883fb7e00c0
SessionId: none Cid: 1f48 Peb: d99f0fe000 ParentCid: 5f3c
DirBase: 45eba9000 ObjectTable: 00000000 HandleCount: 0.
Image: VALORANT-Win64
00000000: Unable to read handle table