首页
论坛
专栏
课程

[调试逆向] [求助]小白一枚,最近在破解软件试用期的问题,GetSystemTimeAsFileTime

2018-7-28 09:52 2089

[调试逆向] [求助]小白一枚,最近在破解软件试用期的问题,GetSystemTimeAsFileTime

2018-7-28 09:52
2089

本人小白最近在破解软件试用期的问题,通过OD调试是可以看到软件是调用GetSystemTimeAsFileTime函数来获得系统时间。通过OD在调试时修改返回值是可以解决过期的问题。因此,编写了Hook函数用于对GetSystemTimeAsFileTime这个API进行钩取,修改返回值。编译生成DLL之后,将DLL注入到程序中发现并没有发生钩取,是我的HOOK程序有问题吗?请各位前辈解答一下。

 

还有就是我用CFF将dll导入到程序之后,用OD对程序进行调试,中间过程会出现 “应用程序无法正常启动0x0000142”这是为什么?

 

#include "stdafx.h"

 

#include "detours.h"

 

#pragma comment(lib, "detours.lib")

 

#pragma warning(disable : 4098)

 

static void (WINAPI* PFGETSYSTEMTIMEASFILETIME)
(LPFILETIME lpSystemTimeAsFileTimee) = GetSystemTimeAsFileTime;

 

void WINAPI NewGetSystemTimeAsFileTime(
LPFILETIME lpSystemTimeAsFileTime)
{
GetSystemTimeAsFileTime(lpSystemTimeAsFileTime);
lpSystemTimeAsFileTime->dwHighDateTime = 111111;
lpSystemTimeAsFileTime->dwLowDateTime = 111111;
}

 

VOID Hook()
{
DetourTransactionBegin();
DetourUpdateThread(GetCurrentThread());
DetourTransactionCommit();
DetourAttach(&(PVOID&)PFGETSYSTEMTIMEASFILETIME, NewGetSystemTimeAsFileTime);
}

 

__declspec(dllexport) VOID ExportFuncForSetDll(VOID)
{
}

 

VOID UnHook()
{
DetourTransactionBegin();
DetourUpdateThread(GetCurrentThread());
DetourTransactionCommit();
DetourDetach(&(PVOID&)PFGETSYSTEMTIMEASFILETIME, NewGetSystemTimeAsFileTime);
}

 

void APIENTRY DllMain(HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved)
{
if (ul_reason_for_call == DLL_PROCESS_ATTACH)
{
Hook();
}
else if (ul_reason_for_call == DLL_PROCESS_DETACH)
{
UnHook();
}
}



[公告]安全测试和项目外包请将项目需求发到看雪企服平台:https://qifu.kanxue.com

最后于 2018-7-29 17:49 被幸运的张小超编辑 ,原因: 没有添加上文字
上传的附件:
最新回复 (4)
youxiaxy 2018-7-28 10:42
2
0

DetourAttach(&(PVOID&)PFGETSYSTEMTIMEASFILETIME, NewGetSystemTimeAsFileTime);
再 
DetourTransactionCommit();
幸运的张小超 2018-7-28 10:52
3
0
我试了一下,还是有问题
youxiaxy 2018-7-28 11:47
4
0
幸运的张小超 2018-7-29 17:49
5
0
我按照这个改了过来,但是我用CFF explore将dll文件注入到用来测试的HookTest.exe中,运行exe文件出现了无法启动应用程序,应该很大可能是生成的dll有问题。我把编写生成DLL文件的HookTime工程,和用来测试的HookTest项目上传上来,麻烦前辈大佬帮忙看下,是哪里出问题了。
游客
登录 | 注册 方可回帖
返回