一 前言
*MmTrackPtes
标志位,让内核调用MiInsertPteTracker
,把Length存储到*MiDeadPteTrackerSListHead
链表,遍历检测这个链表中的Length是不是等于0x2023然后蓝屏。并且同时要置位*MiTrackPtesAborted
为1,不然在置位*MmTrackPtes
后会蓝屏。二 过程
ReadProccesMemory
打断点,并不蓝屏,所以在CreateProcessA
以后拿到了句柄以后,依然不会蓝屏,排除句柄表。ReadProcessMemory
,观察ring3的程序,很明显的地方就是这个0x2023了罗。NtReadVirtualMemory
观察Length的去向。MmCopyVirtualMemory
,在这个函数的内部发现Length被存到了一个临时的MDL结构里面。MemoryDescriptorList
的去向看看是谁获取了结构体中的ByteCount
或者是Size
MmProbeAndLockPages
MmMapLockedPagesSpecifyCache
MmUnlockPages
。我们一个一个来看看有什么奥秘所在。MmProbeAndLockPages
先来看看函数内部。
ByteCount
,接着我们来看看MiProbeAndLockPrepare
函数内部。ByteCount
这个玩意,而是跟别的加加减减再搞一块。所以先放一边。MmMapLockedPagesSpecifyCache
MemoryDescriptorList。
ByteCout
或者Size
的函数直接先放一边,到时候回过头去看。MiInsertPteTracker
我们发现了奥秘所在。typedef struct _PTE_TRACKER { LIST_ENTRY ListEntry; PMDL Mdl; PFN_NUMBER Count; PVOID SystemVa; PVOID StartVa; ULONG Offset; ULONG Length; PFN_NUMBER Page; struct { ULONG IoMapping: 1; ULONG Matched: 1; ULONG CacheAttribute : 2; ULONG Spare : 28; }; PVOID CallingAddress; PVOID CallersCaller; } PTE_TRACKER, *PPTE_TRACKER;
ByteCount
被直接存储到PTE_TRACKER::Length
里面了。MiDeadPteTrackerSListHead
里面拿到的v8。MmMapLockedPagesSpecifyCache
内部会调用MiInsertPteTracker。
dword_140CFB17C(MmTrackPtes)
为1的情况下会MiInsertPteTracker。
ba w1 fffff8020617318c
(这是标志位地址,在上图)然后拉起驱动。三 完毕
dword_140CFB17C(MmTrackPtes)
标志位置0,长度就不会再往全局数组里面插入了。dword_140CFB17C(MmTrackPtes)
标志位置1,然后遍历*MiDeadPteTrackerSListHead
中的长度是不是等于0x2023。dword_140CFB17C(MmTrackPtes)
以后立马蓝屏了。MiTrackPtesAborted
置1。*MmTrackPtes
标志位,让内核调用MiInsertPteTracker
,把Length存储到*MiDeadPteTrackerSListHead
链表,遍历检测这个链表中的Length是不是等于0x2023然后蓝屏。并且同时要置位*MiTrackPtesAborted
为1,不然在置位*MmTrackPtes
后会蓝屏。0x04
0x05
0x06
附件是去虚拟化以后的
NotepadProtect.sys
的ida分析文件。(附件被吞了 看评论区~)
特别鸣谢
1.https://github1s.com/zhuhuibeishadiao/ntoskrnl (WRK
2.不愿公开姓名的xxx提供的去虚拟化sys。
看雪ID:淡然他徒弟
https://bbs.kanxue.com/user-home-620278.htm
# 往期推荐
3、安卓加固脱壳分享
球分享
原文始发于微信公众号(看雪学苑):2023南极动物厂高校决赛之决赛附加题
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论