首页
社区
课程
招聘
[求助] 请教各位坛友关于VMP的代码加密强度的问题
发表于: 2015-2-6 22:01 7297

[求助] 请教各位坛友关于VMP的代码加密强度的问题

2015-2-6 22:01
7297
小弟不才, 写了一些代码, 代码大概有这么个逻辑

int Check(v)
{
//check v
}

void main()
{
        int v = GetV();
        if(Check(v) == v)
        {
         MessageBox("YES");
        }
        else
        {
         MessageBox("NO");
        }

}

前提是破解者不知道GetV函数的算法。

如果我对main函数和check函数(包括check的所有下层函数) 全部用VMP进行虚拟和变异。
加壳之后的防破解强度如何呢?

如果破解者知道check函数的源码(check函数只涉及到计算, 不调用任何外部函数).
能否轻易的爆破?

还请各位大神赐教

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

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 244
活跃值: (174)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
支持开源
2015-2-6 22:15
0
雪    币: 135
活跃值: (106)
能力值: ( LV2,RANK:140 )
在线值:
发帖
回帖
粉丝
3
支持开源, 讨论技术
2015-2-6 22:27
0
雪    币: 101
活跃值: (43)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
连vmp都od不起来的新手自然没办法,但只要是认真看过几天的(比如自己试过那个vmp插件cm例子的,稍微花点时间就能搞定。
2015-2-7 07:48
0
雪    币: 17683
活跃值: (4671)
能力值: ( LV15,RANK:1878 )
在线值:
发帖
回帖
粉丝
5
楼主如果弄好了,提供个加壳样本来备份下,VMP理论接触不多,目前工作关系第一次分析一个使用了VMP+代码混淆膨胀的商用软件,个人没啥能耐,站在习惯了看汇编代码的人来说,只要你的软件有破解价值,还是没用(特别是核心代码规模太小的时候,不过处于设计的精巧,规模有大不了,只能靠添加无用代码的填充),这东西就怕贼惦记。
了解逆向者用的手段,才能针对性性防御,不过你不可能了解所有逆向手段,譬如我习惯看汇编代码的人来说,你怎么防?
楼主可以想象一下自己设的卡的弱点在哪,怎么猜可能让卡发生作用。
2015-2-7 08:57
0
雪    币: 66
活跃值: (41)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
int Check(v)
{
VMProtectBeginUltra("Check");
//check v
VMProtectEnd();
}

void main()
{
  VMProtectBeginUltra("main");
  int v = GetV();
  if(Check(v) == v)
  {
   MessageBox("YES");
  }
  else
  {
   MessageBox("NO");
  }
VMProtectEnd();
}

好像是这样用的,VM只是把你的代码膨胀
没有100%防破解,只能说把你代码防止菜鸟破解
高手不会惦记着一个不能带来声望或金钱的程序。楼主不必过分担心破解问题。
2015-2-7 09:42
0
游客
登录 | 注册 方可回帖
返回
//