首页
社区
课程
招聘
[原创]第二阶段第二题答案
发表于: 2007-8-31 15:28 8047

[原创]第二阶段第二题答案

2007-8-31 15:28
8047
第一种方法,用WM_CLOSE发送消息的办法。

最简单的方法。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 120
活跃值: (58)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
第二种方法: DLL注入,然后ExitProcess(0);

FindWindow->GetWindowThreadProcessId->LoadLibrary->SetAPIHook--->ExitProcess(0);
2007-9-1 13:00
0
雪    币: 120
活跃值: (58)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
第二种方法: DLL注入,然后ExitProcess(0);

FindWindow->GetWindowThreadProcessId->LoadLibrary->SetAPIHook--->ExitProcess(0);

重新上传附件。
上传的附件:
2007-9-1 13:03
0
雪    币: 120
活跃值: (58)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
第三种方法: 发送WM_SYSCOMMAND+SC_CLOSE来结束目标进程。

FindWindow->SendMessage。
上传的附件:
2007-9-1 13:26
0
雪    币: 120
活跃值: (58)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
第四种方法
DLL注入,然后搜索堆栈,找到CreateFile的Handle关闭之。主程序在1秒之后关闭驱动,然后TerminateProcess。
使用如下API: (分三大步)
(1)FindWindow->GetWindowThreadProcessId->LoadLibrary->SetAPIHook--->CloseHandle--->UnHookAPIHook->FreeLibrary
(2)OpenSCManager->OpenService->ControlService->DeleteService->CloseServiceHandle
(3)FindWindow->GetWindowThreadProcessId->OpenProcess->TerminateProcess
上传的附件:
2007-9-1 16:07
0
雪    币: 120
活跃值: (58)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
第五种方法
修改CrackMe.sys,为CrackYou1.sys,作用恢复SSDT表。然后TerminateProcess。

API:
CreateService->StartService->ControlService->DeleteService->CloseServiceHandle->GetWindowThreadProcessId->OpenProcess->TerminateProcess
上传的附件:
2007-9-2 02:21
0
雪    币: 120
活跃值: (58)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
第六种方法(跟上一种方法非常相似,但原理不同)
修改CrackMe.sys,为CrackYou2.sys,作用对CrackMe的内核做Patch。然后TerminateProcess。
没有修复SSDT表,主程序与上一种方法相同。

API:
CreateService->StartService->ControlService->DeleteService->CloseServiceHandle->GetWindowThreadProcessId->OpenProcess->TerminateProcess
上传的附件:
2007-9-2 02:46
0
雪    币: 120
活跃值: (58)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
第七种方法,首先关闭SSDT HOOK Service,方法同"第四种方法"。然后调用DebugActiveProcess和WaitForDebugEvent来Attach到CrackMeApp.exe的进程,然后自然退出使其关闭。
(1)FindWindow->GetWindowThreadProcessId->LoadLibrary->SetAPIHook--->CloseHandle--->UnHookAPIHook->FreeLibrary
(2)OpenSCManager->OpenService->ControlService->DeleteService->CloseServiceHandle
(3)FindWindow->GetWindowThreadProcessId->DebugActiveProcess->WaitForDebugEvent
上传的附件:
2007-9-2 10:40
0
雪    币: 120
活跃值: (58)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
第八种方法
首先利用CrackYou1.sys,恢复SSDT表,方法同"第五种方法"。然后调用DebugActiveProcess和WaitForDebugEvent来Attach到CrackMeApp.exe的进程,然后自然退出使其关闭。
API:
CreateService->StartService->ControlService->DeleteService->CloseServiceHandle->GetWindowThreadProcessId->DebugActiveProcess->WaitForDebugEvent
上传的附件:
2007-9-2 10:44
0
雪    币: 120
活跃值: (58)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
第九种方法:
首先利用CrackYou2.sys,patch SSDT Hook进程,方法同"第六种方法"。然后调用DebugActiveProcess和WaitForDebugEvent来Attach到CrackMeApp.exe的进程,然后自然退出使其关闭。
API:
CreateService->StartService->ControlService->DeleteService->CloseServiceHandle->GetWindowThreadProcessId->DebugActiveProcess->WaitForDebugEvent
上传的附件:
2007-9-2 10:46
0
游客
登录 | 注册 方可回帖
返回
//