吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 5863|回复: 6
收起左侧

[会员申请] 申请标题:申请会员ID:Lijunlin7611【申请通过】

[复制链接]
吾爱游客  发表于 2017-4-25 01:21
1、申 请 I D:Lijunlin7611
2、个人邮箱:Lijunlin7611@vip.qq.com
3、原创技术文章:MediaCoder 分析指南

声明一下,本文本来是有很多图片的,然后提交就是各种错误,结果上传的时候,全都失败了~哎,对Chrome支持不好啊~忧伤,将就看吧。
上传附件也是各种不成功,如果需要图,在看吧。到时候或则写成文档,再发。如果有些地方图错, 主要是图太多,上传全都是小图,看不到大图。

MediaCoder 分析,商业软件,仅供学习。
http://www.mediacoderhq.com/
需要的可以自己去下载最新版来分析学习。

先来一张图:

QQ截图20170424234120.png

简单说一下这个软件的一些关键点:
软件没有加壳,适合分析。
验证方式:注册码网络认证,加密认证。
校验方式:计算程序MD5,然后和资源文件中的数据进行比对,判断文件是否存在修改。
软件中有很多的地方,都是可以作为教学点的,适合新手学习分析。

1、软件Nag框:

软件启动后,会有这个启动框,很烦人,很多的软件,未注册的等等,都会有这个启动框,比如说UltraISO等等。

去掉此框也很简单,既然是分析,这里从逆向和正向两个方向思考。
软件的Nag框,无非两种,一、MessageBox,二、Window
第一个:下断点MessageBoxExA\W,绝对逃不掉。其他的什么消息断点函数,自己逆向一下,可以看系统的底层调用就懂了。
QQ截图20170424235947.png
第二个:既然是窗口,窗口要显示,然会用到函数UpdateWindow,在此处断点,自然能够搞定。

QQ截图20170424234632.png
此软件自然也不例外,另外,同时开启两个,则会出现一下一个MessageBox,方法如上,断点,找到了,喜欢怎么改都行,注意好堆栈平衡即可。


比如说,我这里是就是这么改的,既可以解除不能同时运行两个的软件的问题,也能解决启动框的问题。
QQ图片20170425000322.png

另外,这里提一下,上面有个CreateMutexA(不懂的去学学编程),所以改的方式多种多样。

2、网络ID验证:
既然是网路验证型,那么必然要联网的,这个大家不用说,就知道该用哪些函数去弄了。反正是网络连接要用的函数,大家都可以试试。
相信很简单,就能实践出来。
这里说说其他的方式,更简单点,也算是给新手一个快捷方向。

点击验证窗口,随便输入验证码,点击验证,可以看到红色框中的提示。
QQ截图20170425000902.png

当然,搜索字符串自然是最简单的,先给个和谐图:
QQ截图20170425001212.png
这个字符串提示信息,简直是非常和谐……但是,如果你搜索不到字符串呢?
你还怎么快速定位这个点?我们说说另外的方法,消息断点。

也就是上面图中的下面那两个函数调用:
GetDlgItem,SendMessageA。
当然,如果你学了编程,这两个函数,不用想也知道,在这里下条件断点。
有了这两个函数,问题来了,控件ID怎么得到呢?
spy++\ViewWizard\PeXplorer等等,很多的工具,可以让通过动态、静态的多种方式获得。
上个图,大概演示一下:
QQ图片20170425002341.png

当然,找按钮事件等等,都是可以的,心情好,你也可以用F12来搞定它。
接下来继续分析,上面图中有很和谐的提示,分析即可看到
要求网络验证的返回值在eax中,且要为0,才算是通过。
自然,call 00446AF0,就是关键call
进去之后,可以看到文件的访问、注册表的访问,以及认证的网页地址等等。
QQ截图20170425002907.png

QQ截图20170425002919.png


当然, 中间还有个烦人的sleep,心情好,去掉即可。
修改返回值,自然是在函数返回的位置,可以跟踪一下。
懒得跟踪的人,可以看一下堆栈,分析可以知道,直接返回就可以了。
所以,修改函数头部代码如下:
xor eax,eax
retn
之后,网络验证这个就算是过了。
这里提一下,在验证这个函数之前,还有对注册ID的长度验证,以及计算MD5之类的,随便看看吧。

3、自校验:这个自校验也还算做得不错。
但是所有的自校验,都有个基本的特征,就是一定要首先取得当前文件的句柄,然后读取文件。
当然,也可以不停的内存校验,比如说很浪的lol这个游戏,想注入修改一下代码,可不简单。
必须要同时修改代码和校验值,然后才能做你想做的……当然,你想要知道校验值,就必须要知道其校验算法,
还有其校验的代码段,剩下的,就是你自己计算好修改后的代码校验值,然后再去改原来的代码,原来的校验值。
不然,就一定会提示你电脑中毒啦,不安全什么的……扯远了。想要挑战难度的,可以去试试。也算是练练基本功。

相比之下,这个校验,仅仅只是一个简单的文件Md5值校验。
先说一下思路:基本上就是取得文件句柄,打开文件,读取文件,计算文件MD5,校验文件内容。
翻译一下就是:GetModuleFileNameA->CreateFileA->GetFileSize->ReadFile->GetMD5->CheckMD5。
废话不多说,直接上图:
QQ截图20170425004118.png

这里着重需要分析一下GetMd5的函数参数,为什么呢?看图。
QQ截图20170425004343.png
分析可以看到,这里没有比较过程,或者比较函数的调用。而只是计算了文件的MD5,所以比较一定在其他地方。
但是在哪里呢?这个自然是不好找的。不过,硬件断点可以帮忙嘛。
分析参数得知,该函数,第一个参数是文件的大小,第二个参数是文件内容的缓冲区,第三个,则是返回来的MD5值。

QQ截图20170425004756.png
不用说,这里自然是要对返回来的Md5值下硬件访问断点了,内存访问断点也是可以的。但这个是要分情况的。
比如说lol,人家本身就是硬件断点占坑,不停的异常,又不停的处理异常,这个时候,硬件断点就不好用了,
但使用内存断点就非常好用,当然,这也看个人习惯。
然后嘛,然程序跑起来,随便转换一个文件,转换结束的时候,会断下来,来到校验的地方。看图。
QQ图片20170425005302.png

首先是传入两个Md5值,然后对其计算,至于算法分析,不是这里将的重点,
心情好,直接用IDA,F5一下看起来就舒服了,心情不好,慢慢虐一下,很简单,只要返回值为零就对了。

然后嘛,改一下返回值前面的那句话,xor esi,esi,世界就和谐了。
当然,分析到这里了,也自然能够看到,原始的文件MD5值在mcres.dll。
懒得改这里,或者不想让别人改你修改过的程序,直接把你改好的程序,计算个Md5值。
用winhex之类的16进制编辑工具,替换一下mcres.dll中的md5值就OK了。

剩下的,还有什么做计算题窗口啊,各种延迟啊,甚至打开浏览器访问网页啊,都可以自己分析一下,
自校验过了,程序就基本上随你改了。

另外,64 位版本的程序,分析流程和这个一样,改法也是一样的。随便改吧。

最后,上一张大结局:x86和x64的全家福。

QQ截图20170425010057.png





























QQ图片20170425000322.png
QQ截图20170424234120.png
QQ截图20170425002907.png
QQ截图20170424235710.png
QQ截图20170424235813.png
QQ截图20170425002919.png
QQ截图20170425002931.png
QQ截图20170425004343.png
QQ截图20170425004756.png
QQ图片20170425005302.png
QQ图片20170425002341.png
QQ图片20170425000322.png
QQ截图20170425010057.png
QQ图片20170425005302.png
QQ图片20170425000322.png
QQ截图20170425004756.png
QQ截图20170425004343.png
QQ截图20170425004118.png
QQ截图20170425002931.png
QQ截图20170425002919.png
QQ截图20170425002907.png
QQ截图20170425001212.png
QQ截图20170425000902.png
QQ截图20170424235947.png
QQ截图20170424235813.png
QQ截图20170424235710.png
QQ截图20170424234632.png
QQ截图20170424234120.png
QQ截图20170425004343.png
QQ图片20170425002341.png
QQ截图20170425001212.png
QQ截图20170425000902.png
QQ图片20170425000322.png
QQ截图20170424235947.png
QQ截图20170424235813.png
QQ截图20170424235710.png
QQ截图20170424234632.png
QQ截图20170424234120.png

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Hmily 发表于 2017-4-25 16:51
ID:Lijunlin7611
邮箱:Lijunlin7611@vip.qq.com

申请通过,欢迎光临吾爱破解论坛,期待吾爱破解有你更加精彩,ID和密码自己通过邮件密码找回功能修改,请即时登陆并修改密码!
登陆后请在一周内在此帖报道,否则将删除ID信息。

ps:登录后把文章整理一下发到脱壳破解区吧。
Lijunlin7611 发表于 2017-4-25 19:23
hckzwf 发表于 2017-4-25 19:23
SSSSS 发表于 2017-5-1 23:20
思路清晰,期待你在吾爱的表现,祝贺
匿-名者 发表于 2017-5-8 10:00
写的非常好!
pwp 发表于 2017-7-3 00:45 来自手机
学习了,欢迎大神
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-4-26 22:06

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表