x64 hook_GetSystemTimeAsFileTime源码用于C#程序获取当前电脑日期 x64hook和注入
本帖最后由 wushaominkk 于 2022-9-26 10:32 编辑通过自己写个演示调试发现,C#的日期获取 DateTime.Now 最终会调用GetSystemTimeAsFileTime,这样hook这个api返回一个小的时间就可以绕过
这个不重要,简单的例子
x64hook的例子不太好找,传一个方便大家
里面也有个注入的代码
编译的时候选x64 release
主要是发个模板,方便大家用于hook其他的程序
代码网上抄的
#definePER_SECOND 1*10*1000*1000 //1秒
void(__stdcall *oldGetSystemTimeAsFileTime)(
LPFILETIME lpSystemTimeAsFileTime
) = GetSystemTimeAsFileTime;
void newGetSystemTimeAsFileTime(
LPFILETIME lpSystemTimeAsFileTime
)
{
ULONGLONG ullSeconds = 0 * PER_SECOND;
FILETIME tTime;
ULARGE_INTEGER temp;//1961==> 可以参考11222709写一个更近的时间
temp.QuadPart = ullSeconds;
lpSystemTimeAsFileTime->dwHighDateTime = temp.HighPart;
lpSystemTimeAsFileTime->dwLowDateTime = temp.LowPart;
}
VOID HookAPI()
{
DetourTransactionBegin();
DetourUpdateThread(GetCurrentThread());
DetourAttach(&(PVOID&)oldGetSystemTimeAsFileTime, newGetSystemTimeAsFileTime);
DetourTransactionCommit();
}
VOID UnHookAPI()
{
DetourTransactionBegin();
DetourUpdateThread(GetCurrentThread());
DetourDetach(&(PVOID&)oldGetSystemTimeAsFileTime, newGetSystemTimeAsFileTime);
DetourTransactionCommit();
}
大佬好厉害{:1_921:},请教2个问题:
1、C++不太熟,能否将hook代码和注入工具合并?该如何写?
2、能否只在程序加载时hook,加载完成后unhook? 人才啊,还有这样的骚操作。 带新人入坑的操作 ps122 发表于 2022-9-27 08:51
大佬好厉害,请教2个问题:
1、C++不太熟,能否将hook代码和注入工具合并?该如何写?
2、能否 ...
注入工具和dll就是配合用的,放一起,exe里面写好目标exe和自己的dll名称,就可以
unhook代码DLL里面有的,可以调用一下
页:
[1]