让 IDA 的 F5 插件失效

似乎在 IDA 中使用 F5 已经成为了时尚,可以轻易的通过IDA中的汇编码转C代码插件反汇编别人的代码,即使没有一点汇编基础的人都可以反汇编了,这对我们写的程序是极大的威胁。唯一的办法就是加上几段花花(i like FlowrCode),让那些不懂汇编人离开反汇编的世界吧。。。

VC++ Code:

_asm
{
   jb label
   jnb label
   _emit 0xE8
label:
}

Delphi Code:

asm
begin
   jb label
   jnb label
   db $E8
label:
end;


很显然,这只是一段极其简单的花代码,但是对付 IDA 的   Hex-Rays Decompiler 插件却是很的效的,这段代码可以放在任意位置,如在VC++中:


NTSTATUS DriverEntry()
{
//随便位置写入即可
}


测试后就会出现下面这种情况了。。。 在 IDA 的 function 竟然找不到加入花代码的 Hook 函数了,见图1:

经过查找后,原来在这里,见图2:


然后 F5 试试看看可不可以把这段汇编代码转换成C代码?见图3:

哈哈。。。爽,达到我们的要求了,虽然人家还是可以看你的反汇编代码,但是总比人家直接看C代码好的多了。这招对付一些没有真本事,但又想偷学他人代码的人很有效哈。。。
 
花指令是对付一些静态反汇编工具最好的办法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值