首页
社区
课程
招聘
[原创] 对抗反汇编 x86
发表于: 2020-4-22 19:52 7194

[原创] 对抗反汇编 x86

2020-4-22 19:52
7194

相同的跳转指令 :

void 相同的跳转指令()
{
	printf("定位");
	_asm
	{
		jz _P2
		jnz _P2
_P1:
		__emit 0xE8
	}
_P2:
	return;
}
void 相同的跳转指令()
{
	printf("定位");
	_asm
	{
		jz _P2
		jnz _P2
_P1:
		__emit 0xE8
	}
_P2:
	return;
}
                             



固定条件的跳转指令:

void 固定条件的跳转指令()
{
	printf("定位");
	_asm
	{
		xor eax,eax
		jz _P2
		__emit 0xE9
	}
_P2:
	return;
}

void 固定条件的跳转指令()
{
	printf("定位");
	_asm
	{
		xor eax,eax
		jz _P2
		__emit 0xE9
	}
_P2:
	return;
}



无效的反汇编码:内部跳转的jmp指令

void 无效的反汇编码1()
{
	//内部跳转的jmp指令
	printf("定位");
	_asm
	{
		__emit 0xEB
		__emit 0xFF
		__emit 0xC0
		__emit 0x48
	}
	return;
}

void 无效的反汇编码1()
{
	//内部跳转的jmp指令
	printf("定位");
	_asm
	{
		__emit 0xEB
		__emit 0xFF
		__emit 0xC0
		__emit 0x48
	}
	return;
}



无效的反汇编码:多层内部调转序列

void 无效的反汇编码2()
{
	//多层内部调转序列
	printf("定位");
	_asm
	{
		__emit 0x66
		__emit 0xB8
		jmp _P1
		__emit 0x31
		__emit 0xC0
		__emit 0x74
		__emit 0xFA
		__emit 0xE8
	}
_P1:
	printf("真实代码!");
	return;
}

void 无效的反汇编码2()
{
	//多层内部调转序列
	printf("定位");
	_asm
	{
		__emit 0x66
		__emit 0xB8
		jmp _P1
		__emit 0x31
		__emit 0xC0
		__emit 0x74
		__emit 0xFA
		__emit 0xE8
	}
_P1:
	printf("真实代码!");
	return;
}



[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

最后于 2020-4-23 14:36 被Dascolee编辑 ,原因:
上传的附件:
收藏
免费 5
支持
分享
最新回复 (16)
雪    币: 259
活跃值: (283)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
如何清除这些混淆呢 期待你出个教程
2020-4-23 09:07
0
雪    币: 74
活跃值: (748)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
不错,感谢分享
2020-4-23 10:10
0
雪    币: 2055
活跃值: (418)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
期待出教程!
2020-4-23 10:41
0
雪    币: 1129
活跃值: (2731)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
感谢分享
2020-4-24 22:50
0
雪    币: 364
活跃值: (1721)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
收藏
2020-4-26 10:15
0
雪    币: 3797
活跃值: (769)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
这个帖子解决了我前几天碰到的一个疑惑,真的感谢楼主
2020-4-26 12:08
0
雪    币: 33
活跃值: (318)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
8
gaoan 这个帖子解决了我前几天碰到的一个疑惑,真的感谢楼主
不用客气呀,看书过程中看书上的实例理解挺困难的,就动手写写测试了一下
2020-4-26 15:33
0
雪    币: 300
活跃值: (2452)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
mark
2020-4-26 18:27
0
雪    币: 4709
活跃值: (1575)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
10
mark
2020-4-26 20:58
0
雪    币: 0
活跃值: (238)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
在做针对这些的混淆工具,mark
2020-4-26 22:03
0
雪    币: 2246
活跃值: (3773)
能力值: ( LV6,RANK:81 )
在线值:
发帖
回帖
粉丝
12
大佬,x64、arm也可以这么搞吗
2020-4-27 17:53
0
雪    币: 14806
活跃值: (6048)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
花指令?
你这个是等长的花指令,容易识别被清除了,比较好的是不等长、相对不固定指令的花指令
2020-4-28 14:18
1
雪    币: 33
活跃值: (318)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
14
KingSelyF 大佬,x64、arm也可以这么搞吗
只要理解反汇编工具的反汇编算法原理,针对算法原理来编写花指令,什么指令集都一样。
2020-4-28 15:04
0
雪    币: 33
活跃值: (318)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
15
tDasm 花指令? 你这个是等长的花指令,容易识别被清除了,比较好的是不等长、相对不固定指令的花指令
多谢先辈指教
2020-4-28 15:08
0
雪    币: 8427
活跃值: (5026)
能力值: ( LV4,RANK:45 )
在线值:
发帖
回帖
粉丝
16
很详细了,先赞一个
2020-5-1 19:52
0
雪    币: 13
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
很不错,赞一个。
2020-5-16 14:39
0
游客
登录 | 注册 方可回帖
返回
//