|
[求助]通过INLINEHOOK恢复IDT表导致蓝屏(现在能写了不过本世纪最奇怪的就是这个代码了)
ULONG DoIt() { // 变量声明 ULONG uSearchCount; ULONG uRoutineCount; KIRQL NewIrql; GetTimerTable(); uSearchCount = 0; uRoutineCount = 0; // 更改IRQL KeRaiseIrql(2, &NewIrql); // 获取计时器列表 PULONG pTimerTable = GetTimerTable(); DbgPrint("TimerTable : %x\n", pTimerTable); // 取出每个TIMER PULONG pTimer; while ((pTimer = (PULONG)(*pTimerTable)) != 0) { while (pTimer != pTimerTable) { PULONG pBuffer = pTimer - 6; PULONG pTmp = (PULONG)(*(pBuffer + 8)); pTimer = (PULONG)(*pTimer); if (pTmp != 0) { ULONG data = *(pTmp + 3); if (data != 0 && Check(data) != 0) { DbgPrint("Found DeferredRoutine %x QuadPart %lld", data, *(PLARGE_INTEGER)(pBuffer + 4)); PULONG eax = (PULONG)(*(pBuffer + 6)); pBuffer = (PULONG)(*(pBuffer + 7)); uRoutineCount ++; *pBuffer = (ULONG)eax; *(eax + 1) = (ULONG)pBuffer; } } } uSearchCount ++; pTimerTable += 4; if (uSearchCount < 0x1F4) continue; else break;; } KeLowerIrql(NewIrql); return uRoutineCount; } |
|
[求助]通过INLINEHOOK恢复IDT表导致蓝屏(现在能写了不过本世纪最奇怪的就是这个代码了)
貌似是Timer DPC那个要用另一个办法~ // 用KeSetTimer向计时器列表插入一个Timer,再用它来获取内核中的计时器列表 PULONG GetTimerTable() { KTIMER ktimer; KeInitializeTimer(&ktimer); LARGE_INTEGER duoTime = RtlConvertLongToLargeInteger(-1); while (!KeSetTimer(&ktimer, duoTime, NULL)) { duoTime.u.LowPart --; } PULONG pBlink = reinterpret_cast<PULONG>(ktimer.TimerListEntry.Blink); KeCancelTimer(&ktimer); while (*pBlink != 0) { pBlink -= 4; } pBlink = pBlink + 4; return pBlink; } |
|
[求助]通过INLINEHOOK恢复IDT表导致蓝屏(现在能写了不过本世纪最奇怪的就是这个代码了)
我一般喜欢在某保护的KeDelayXXX里恢复IDT,然后Delay,Delay结束时再把hook做回~~ |
|
[求助]通过INLINEHOOK恢复IDT表导致蓝屏(现在能写了不过本世纪最奇怪的就是这个代码了)
DPC是一个链,你注册一个DPC,就会获得一个LIST_ENTRY去枚举链~然后和谐DPC 估计是破坏了线程结构的线程做的 你可以hook keDelayXXX和KeWaitForxxx 然后和谐他们 |
|
[求助]通过INLINEHOOK恢复IDT表导致蓝屏(现在能写了不过本世纪最奇怪的就是这个代码了)
没那么复杂,搞保护何必这么复杂呢~ |
|
|
|
|
|
玩玩360——ExitWindowsEx大法
收藏一下,也不用看,就那么扔到硬盘里~哈哈~ |
|
玩玩360——ExitWindowsEx大法
07年的时候用过一段时间,现在不用了~ |
|
|
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值