Rich (BB code):
CONTEXT: ffff8402d382d410 -- (.cxr 0xffff8402d382d410)
rax=35ffd481750cf010 rbx=ffff8402d382e468 rcx=800000023aede007
rdx=8965476f5f4c8e00 rsi=e9ffdf7f5fefeff9 rdi=ffff8402d382e468
rip=fffff80434be95ff rsp=ffff8402d382de60 rbp=ffff8402d382e468
r8=ffff8402d382e320 r9=bcd3f8b98aed67bc r10=0000000000000000
r11=ffffffffffffffff r12=0000000000000000 r13=bcd3f8b98aed67bc
r14=769ab81000b371fd r15=609a981000a361f9
iopl=0 nv up ei pl zr na po nc
cs=0010 ss=0018 ds=002b es=002b fs=0053 gs=002b efl=00050246
vgk+0xfe95ff:
fffff804`34be95ff 488908 mov qword ptr [rax],rcx ds:002b:35ffd481`750cf010=????????????????
Resetting default scope
Sadece sende değil, Son günlerde çoğu kişide bunu görüyorum. Muhtemelen geçen gece bir hotfix yayımladılar ama o daha da kötü bir hale soktu bu durumu.
İşaretlediğim bellek bölgelerine bakarsan durumun ne denli bozuk olduğunu anlayabilirsin...
Rich (BB code):
vgk+0xfe95ff:
fffff804`34be95ff 488908 mov qword ptr [rax],rcx // Çökme noktası
fffff804`34be9602 488b8424c0030000 mov rax,qword ptr [rsp+3C0h]
fffff804`34be960a 488b942460020000 mov rdx,qword ptr [rsp+260h]
fffff804`34be9612 488902 mov qword ptr [rdx],rax
fffff804`34be9615 488b8424e8000000 mov rax,qword ptr [rsp+0E8h]
fffff804`34be961d 498900 mov qword ptr [r8],rax
fffff804`34be9620 4c8bac24f0020000 mov r13,qword ptr [rsp+2F0h]
fffff804`34be9628 488b842410010000 mov rax,qword ptr [rsp+110h]
Çöktüğümüz yere gelene kadar sistem stack pointer'dan geçerli değerleri alıp yazdığını görüyoruz ama yine de çöküyor. Bu vanguard'ın kendi iç işleyişi olduğu için burada yapmaya çalıştığı şeyin eğer aşağıyukarı şekilde incelersen- sp'ye eklediği verileri çekerek register'ları doldurduğu olduğunu anlayabilirsin. Burada bir sorun yok bu ofset'in öncesinde bir sorun var...
Rich (BB code):
vgk+0xfe95c1:
fffff804`34be95c1 90 nop
fffff804`34be95c2 e92effffff jmp vgk+0xfe94f5 (fffff804`34be94f5)
fffff804`34be95c7 48b82be5e069cf878380 mov rax,808387CF69E0E52Bh
fffff804`34be95d1 48b8c65d17dfba99418d mov rax,8D4199BADF175DC6h
fffff804`34be95db 48b83968ff1280cf818f mov rax,8F81CF8012FF6839h
fffff804`34be95e5 48b8bc67ed8ab9f8d3bc mov rax,0BCD3F8B98AED67BCh
fffff804`34be95ef 488b8c24f8020000 mov rcx,qword ptr [rsp+2F8h]
fffff804`34be95f7 488b8424a0030000 mov rax,qword ptr [rsp+3A0h]
Burada yeşil ile işaretlediğim jmp talimati, vanguard'ın açıkça
önceden belli olan bir adrese dönmeye çalıştığının en büyük kanıtı olduğundan dolayı rax kaydının da ya vanguard'ın kullandığı kodları gizlemek amacıyla absorbe edildiğini ya da direkt kod içinde olan sabit bir
x64 değerinin enjekte edildiğini görüyoruz.
Ki sonuç olarak RAX içine erişim sağlarken işlemci buna izin vermiyor ve sistem çöküyor. Bunun neden olduğunu bilmemiz mümkün değil ama daha önce çıkan Vanguard genel hatalarında yapılan bir çözüm yöntemi olarak bellek bütünlüğü ayarını değiştirmeyi deneyebilirsin.