首页
社区
课程
招聘
[原创]调戏:纯应用层的Anti本地调试器(1)
发表于: 2013-11-12 14:39 24714

[原创]调戏:纯应用层的Anti本地调试器(1)

2013-11-12 14:39
24714
 DbgUiRemoteBreakin
DWORD __stdcall MyDbgUiRemoteBreakin(LPVOID lparam)
{
	OutputDebugStringA("attach\r\n");
	TerminateProcess(GetCurrentProcess(),-1);
	return 0;
}
DWORD __stdcall MyDbgBreakPoint()
{
	OutputDebugStringA("attach 2\r\n");
	//m_Attach2Count++;
	//if (m_Attach2Count>1)
	{
		TerminateProcess(GetCurrentProcess(),-1);
	}
	return 0;
}
DWORD WINAPI AntiDbgAttach(LPVOID lparam)
{
	//挂钩一些特殊函数!
	BYTE myHookCodeDbgUiRemoteBreakin[5]={0};
	BYTE myHookCodeDbgBreakPoint[5]={0};
	VOID *ptrDbgUiRemoteBreakin = (VOID *)GetProcAddress(GetModuleHandle(TEXT("ntdll.dll")),"DbgUiRemoteBreakin");
	InlineHook(ptrDbgUiRemoteBreakin,(void *)MyDbgUiRemoteBreakin,(void **)&OldDbgUiRemoteBreakin);

	void *ptrDbgBreakPoint = (void *)GetProcAddress(GetModuleHandle(TEXT("ntdll.dll")),"DbgBreakPoint");
	InlineHook(ptrDbgBreakPoint,(void *)MyDbgBreakPoint,(void **)&OldDbgBreakPoint);

	RtlCopyMemory(myHookCodeDbgBreakPoint,ptrDbgBreakPoint,5);

	RtlCopyMemory(myHookCodeDbgUiRemoteBreakin,ptrDbgUiRemoteBreakin,5);


	while(1)
	{
		if (memcmp(ptrDbgUiRemoteBreakin,myHookCodeDbgUiRemoteBreakin,5)!=0)
		{
			OutputDebugStringA("find patch DbgUiRemoteBreakin");
			TerminateProcess(GetCurrentProcess(),-1);
		}
		if (memcmp(ptrDbgBreakPoint,myHookCodeDbgBreakPoint,5)!=0)
		{
			OutputDebugStringA("find patch DbgBreakPoint");
			WriteReadOnlyMemory((LPBYTE)ptrDbgBreakPoint,myHookCodeDbgBreakPoint,5);
		}
		Sleep(3000);
	}
	return 0;
}

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

上传的附件:
收藏
免费 5
支持
分享
最新回复 (43)
雪    币: 952
活跃值: (1826)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
.....然后呢 不会没了吧
2013-11-12 14:41
0
雪    币: 45
活跃值: (21)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
预知详情,请听下回分解
2013-11-12 14:43
0
雪    币: 6
活跃值: (876)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
口才不行啊。。要多练习啊
2013-11-12 14:44
0
雪    币: 2155
活跃值: (29)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
怎么感觉没说完呢???
2013-11-12 14:45
0
雪    币: 185
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
哦。围观一下。反正看不懂。
2013-11-12 14:47
0
雪    币: 20
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
围观v大
2013-11-12 14:52
0
雪    币: 148
活跃值: (278)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
不给调戏那肿么玩。。。。
2013-11-12 14:53
0
雪    币: 100
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
mark!!!!!!!!
2013-11-12 14:57
0
雪    币: 397
活跃值: (397)
能力值: ( LV9,RANK:410 )
在线值:
发帖
回帖
粉丝
10
hao, 鸡冻一下了,wrk这个万金油。
2013-11-12 14:59
0
雪    币: 47
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
mark
2013-11-12 15:02
0
雪    币: 69
活跃值: (242)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wmg
12
围观调教师...
2013-11-12 15:06
0
雪    币: 116
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
v校又开始爆了
2013-11-12 15:30
0
雪    币: 212
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
追踪大牛足迹期待对抗方法!
2013-11-12 15:36
0
雪    币: 1839
活跃值: (4065)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
mark 猥琐
2013-11-12 16:23
0
雪    币: 428
活跃值: (33)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
留名...
2013-11-12 16:42
0
雪    币: 302
活跃值: (32)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
果断收藏之。。这是一切都是命运的抉择啊!
2013-11-12 16:54
0
雪    币: 257
活跃值: (67)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
18
无视Anti的路过
文章很精辟
2013-11-12 17:37
0
雪    币: 882
活跃值: (1441)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
v大都说了Timor队长正在送命。。
2013-11-12 17:43
0
雪    币: 40
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
20
前段时间包装了一下detours, 貌似做出来的效果跟海风月影大神的差不多, 只不过没用汇编, 写了一堆模板推导出来回调的类型, 说起来似乎在类型上更安全 https://github.com/QingYun/tracer
2013-11-12 18:04
0
雪    币: 253
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
看看V大讲故事
2013-11-12 18:22
0
雪    币: 124
活跃值: (469)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
22
挽尊留名,德玛西亚
2013-11-12 20:44
0
雪    币: 357
活跃值: (3468)
能力值: ( LV3,RANK:25 )
在线值:
发帖
回帖
粉丝
23
你的代码看不懂,太复杂了
2013-11-12 20:45
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
24
代码很酷~
但是这样略微有点不方便。
2013-11-12 21:32
0
雪    币: 10
活跃值: (231)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
25
围观调教师 ..貌似来晚了 竟然在这么后面
2013-11-12 21:39
0
游客
登录 | 注册 方可回帖
返回
//