颜角的睫毛溺水 发表于 2017-2-22 03:14

E盾 之 CALL

标题:E盾【原创】
作者:XXX
时间:2017-2-22
出品:www.52HB.com
===================================================================================
    本是没有时间去做这个视频的,但是朋友也很希望我出这个教材,也不知道帮了多少忙,拿了多少个材料,视乎忘了。竟然这样,就跟大家说说。之前就原本就录好,但是好心为了想做的详细点,用了不知道很多种方法,改了,保存了20多个EXE,全部运行测试,每次20多就触暗装,两次,加上时间的紧凑,差点没给气吐血。
      但是,后来想想,好像没那个必要。抽出重点 ,似乎就可以认知关键所在,太多反而浪费时间!
      节省时间,我们就不废话
      开始吧!
      今天要说的就是下面4个内容,请允许我不用吾爱汇编论坛OD,因为吾爱汇编论坛OD有显示一些函数,影响观看,我就随便找了个。
      改分析解释的地方都备注了,我弄之前都这样备注,容易看。
      
      
=======检测OD    sub esp,0x4
之前我们过检测都是用特征找到调用的地方,但是我们也并不知道检测CALL是长啥样的,我们看看吧。

004175DD   $55            push ebp                                 ;检测OD区段
004175DE   .8BEC          mov ebp,esp
004175E0   .81EC 04000000 sub esp,0x4                              ;0= 未发现异常
004175E6   .EB 10         jmp short 端.004175F8                     ;1= 本进程被调试运行
004175E8   .56 4D 50 72 6>ascii "VMProtect begin",0                ;2=检测到OD正在运行
004175F8   >E8 49000000   call 端.00417646
004175FD   .85C0          test eax,eax
004175FF   .0F84 0A000000 je 端.0041760F
00417605   .B8 01000000   mov eax,0x1
0041760A   .E9 31000000   jmp 端.00417640
0041760F   >E8 37030000   call 端.0041794B
00417614   .85C0          test eax,eax
00417616   .0F84 0A000000 je 端.00417626
0041761C   .B8 02000000   mov eax,0x2
00417621   .E9 1A000000   jmp 端.00417640
00417626   >B8 00000000   mov eax,0x0
0041762B   .E9 10000000   jmp 端.00417640
00417630   .EB 0E         jmp short 端.00417640
00417632   .56 4D 50 72 6>ascii "VMProtect end",0
00417640   >8BE5          mov esp,ebp
00417642   .5D            pop ebp

现在的检测OD长这样的。不管是定制还是普通个人版。当然,我们知道call的话,就可以用我们的思路或是方法做点什么,最简单的不过就是段首retn?确实。我这里就不用备注的改,用另一个改。都是一样的!段首就是最简单暴力的方法,无所不知。当然,你也可以用一些别的处理方法,去掉这个?但是, 有点就是,定制版的跟个人版处理是不同的。虽然同样的CALL,但是它里面是写入两次检测。段应该是子程序。
看到没有!但是,这样就可以去掉了。其实普通版断这里也是可以的。怎么做,或用什么方法,就看你们怎么玩。呵呵

**** Hidden Message *****
它就是验证用户登录的帐号密码,我们一般都说登录。E的特点就是登录的下面就是14014C150158 168等等。
一般我简称它为运算机制,我们可以不知道它是怎么运作的,但是你得懂它是干嘛用的。之前的逆向都是这里赋值1
   这里我想说下,之前的版本应该是登录的运算机制和合法的运算是一起的。但是不知什么版本后就是分开的了,或许是作者自己写的。
但是,我们还是有些认知,剩下的怎么做就靠你自己想咯。

这些是我给E盾拆了,这样就搜不到84了。之前的版本是可以的,就好比合法里面也是没有150的。它们分开运作的。我竟然拿错 = =!
看看,我们搜不到的。

**** Hidden Message *****
上面我也备注了,跟它源码的备注。它是登录后立马调用来检测是否属于合法。
它不能作为登录前来检测,你帐号密码都没输入,怎么检测和判断,不可能的事。这里也同理,我们看下下面是不是84,登录有登录的运作机制,它有它的,独立。
--------------------------------------
还有,这里我说下,之前那些用这个逆向的,我稍微简单说说。
之前你们改这个跳转都是改全部,其实真的没必要。只要三个或干脆直接不用,直接跳过去。
**** Hidden Message *****
这个就是判断本地运算结果和服务器是否一致。剩下的就是A,B,C,D。剩下的就是最后两个检测跳
你改的时候可以直接改这个,还有最后两个。如果你改了那些4个,就还得改第一个。但是,你改了这个本地运算结果就不需要改那4个。本地都过了,还算个P?

**** Hidden Message *****

**** Hidden Message *****

这个你们也可以看看,也可以不要去刻意记。这些就是登录失败以后返回的文本信息,信息框内容。当然,你想玩点别的也可以。
本打算不说这个,但是,还是觉得可以你们用到。我这里给你们看下,服务器体系的吧。我记得84里面有9个中跳,3个大条,我之前好像看过一个视频就是那样逆向的,当然你们也可以参考参考哦。

===============================================================================
好了,就差不多了。我做这个教程的目的不是教你们如何逆向,请你们别误解。我是希望你们认知CALL,还有说一些之前的做法和现在的思路
要是我每个分析方法都出个教程,那我不是的录几十个教程?那还不得累死? 所以,我想给你们说说这些,让你们识别,帮助你们逆向,进一步了解E盾。本来要示范的,但是还是算了,你们自己研究自己测试吧。毕竟我教的不是分析方法。然后又偷懒的节省点时间,哈哈。之后就看你们了,根据你们个人能力去逆向,看你们能把E盾玩出什么花样。
别让我朋友送我一句话那样,E盾待我如初恋,我虐E盾千百遍。意淫而已,作者别在意!!再见!~!~


最后,可能这个视频出了。E盾也会跟随脚步改版本!

===================被VM的怎么逆向?

为什么还是有人总问我VM过的E盾怎么弄,怎么逆向?
我可以说你们完全是傻到极致了? 你们完全不注重我帖子讲的是什么,说的是什么。
如果不懂变通!那我是不是按照每个被VM过的E盾动手去指导,那不是要弄到天荒地老?
-------------------------
逆向一个软件,首先最基本的就是了解这个软件,就是因为不了解才难入手。
如果,我只针对某个VM过的E盾软件进行逆向,然后做教程
毋庸置疑,大家都只会教程里的这个被我破的VM的E盾软件或VM同样的E盾。


VM是属于虚拟加密,壳种诸多,再加上作者的编写手法不同,就会出现,我教什么你们会什么的结果,然后,死板的跟着做而已,你确定,你真的懂?
也因此,你永远得不到自己成长的空间。
而我做教程的目的是希望你们对E盾的了解
以这篇教程来说,就是让你进一步了解E盾,然后根据自己的能力去进行逆向。

地址:http://pan.baidu.com/s/1hsQdsRa
          **** Hidden Message *****



goodluckwxl 发表于 2017-2-22 03:23

很有技术含量。

xuge888 发表于 2017-2-22 08:42

很有价值的教程 O(∩_∩)O谢谢

ubuntuyao 发表于 2017-2-22 08:46

受教了,正好正在研究E盾中。。。{:5_116:}

攻防之间 发表于 2017-2-22 08:58

最喜欢这种技术帖

求教 发表于 2017-2-22 09:01

好东西学习学习

叶良辰和赵总 发表于 2017-2-22 09:47

膜拜了 师傅~~~

难寻。 发表于 2017-2-22 09:56

{:6_225:}膜拜了,前来学习

420556093 发表于 2017-2-22 10:30

受教了,感谢师傅

学一学丶 发表于 2017-2-22 11:17

看看大神的分析   
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: E盾 之 CALL