dmhai 发表于 2017-9-9 17:51

求指点易语言E盾程序(虚拟机检测等)

本帖最后由 dmhai 于 2017-9-11 19:47 编辑

找到个奇怪的E盾的程序,易语言写的,VMP壳,看起来没VM多少,但是跟下去发现VM的地方貌似很多。

程序在虚拟机里面不加载自带的DLL,报错说找不到函数,真机完全正常,估计是有检测,但是没找到可疑的点(求指点。。。)。{:6_224:}

虽说俺这(暂时)没发现有检测OD,本机跑了几天,改了不少东西,没蓝屏没死机(不像E盾的作风?),但是建议能虚拟机调试的兄弟还是虚拟机跑,不怕一万就怕万一。

直接OD载入软件就可以搜到一些E盾的信息,搜不到错误信息(比如"卡号不存在"),启动的时候会WSASend取个QQ昵称(昵称是个IP),然后就没发现有联网了(下了send、sendto、WSASend、WSASendTo),这点很奇怪。。。它登录(卡号验证)的时候也不发包,我就纳闷了,不联网的网络验证?那它怎么知道我卡号不存在的?好像看教程里都是联网的?

花了不少时间在论坛里挨个帖子学习了一些分析E盾的思路(感谢各位大神的分享,thx~~),但技术还不到家,求哪位大神抽空对这个例子做个分析教程,非常感谢。

不方便做太详细的,可以先分析下虚拟机错误跟上面说的好像不联网的卡号验证。其他的我再逐步往下学习。先谢谢了。

软件地址:
旧版链接: https://pan.baidu.com/s/1nv1bPGl 密码: a4rs   (好像登录的时候连不上服务器)
新版链接: https://pan.baidu.com/s/1b3PUDw 密码: hayh   (完全正常)



Hk微笑 发表于 2017-9-9 20:15

看了一下,这是E盾企业定制版,被V的其实挺严重的,至少登录CALL头部我找不到了,试了几个特征码,发现还是没逆向掉,这种单卡的不好逆向

youxiaxy 发表于 2017-9-10 09:35

采用的是 openssl发包。没有走系统的那一套。,单论逆向而言很简单,0x407cb2    一个ret 就过掉了。下图结果,功能没测试       功能没测试      功能没测试          功能没测试

重要事情 说三遍以上

dmhai 发表于 2017-9-10 12:17

youxiaxy 发表于 2017-9-10 09:35
采用的是 openssl发包。没有走系统的那一套。,单论逆向而言很简单,0x407cb2    一个ret 就过掉了。下图 ...

666~~厉害!!

相信看到您说是openssl发包之后,不少人都会有点兴趣的,难得出来个新鲜玩意儿?大家一同学习~~

能否做个分析教程来学习下?麻烦您了,非常感谢~~

dmhai 发表于 2017-9-10 12:57

Hk微笑 发表于 2017-9-9 20:15
看了一下,这是E盾企业定制版,被V的其实挺严重的,至少登录CALL头部我找不到了,试了几个特征码,发现还是 ...

嗯嗯。这函数抽的,有点凶。对于我这种新手来说,特征没效了,等于失败了大半,所以来求分析思路。

youxiaxy 发表于 2017-9-10 14:28

大致看了下、他是先 判断卡密 长度。如果长度 不等   32直接就提示 不存在,等于32位才会联网。不过 我这   总是提示连接服务器失败。不知咋为啥。另外纠正下我的上一个回复的错误。程序还是走的系统路线。不是 openssl。

dmhai 发表于 2017-9-10 15:28

youxiaxy 发表于 2017-9-10 14:28
大致看了下、他是先 判断卡密 长度。如果长度 不等   32直接就提示 不存在,等于32位才会联网。不过 我这 ...

那么,openssl就是用来加解密的了。调试的时候有在假码附近发现一个像是加密结果的东西。
连接服务器失败是不是他故意做的流程,比如校验没通过就抛弃请求之类的?
他在这方面肯定做了检测的,比如我不开调试的连接失败提示跟OD下的失败提示就可能不一样:
OD下可能出现:连接服务器失败:1请稍后重试.
正常的时候是: 连接服务器失败,请稍后重试.

爱阴湿毯 发表于 2017-9-11 03:39

抓不到包,不能代表没有联网,证明它没使用你说下断点的系统函数。

dmhai 发表于 2017-9-11 14:20

youxiaxy 发表于 2017-9-10 14:28
大致看了下、他是先 判断卡密 长度。如果长度 不等   32直接就提示 不存在,等于32位才会联网。不过 我这 ...

我的也连不上。不知道是出了新版,旧版废弃还是出bug导致的连不上。

昨天作者丢了个新的版本出来。我试了下,联网没问题了,32位长度的假码,send有发数据。

E盾什么的,都没变。

新版本地址在主贴更新了。

dmhai 发表于 2017-9-11 14:22

爱阴湿毯 发表于 2017-9-11 03:39
抓不到包,不能代表没有联网,证明它没使用你说下断点的系统函数。

恩,是,我的错,大意了,没想到key的长度这一层。用32位的假码,send可以抓到数据发送了。
页: [1] 2
查看完整版本: 求指点易语言E盾程序(虚拟机检测等)