学破解论坛

 ★找回密码★
 ★立即注册★

QQ登录

只需一步,快速开始

查看: 5328|回复: 299

[原创破解图文] 深夜来一发——易游WebAPi的简单分析+大白异常中断补丁修改eax值

  [复制链接] |关注本帖

  离线 

签到天数: 3

该用户今日未签到

马上注册,深入学习!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
大半夜了。来一发睡觉。希望大家多多支持。多多评分
      前景提要:朋友写的一个易游WebApi(以下简称易游Web)CM。没有多大难度,无壳无花,但是有核心数据跟变量,按照官方的例子弄了好久,才找到关键,并成功爆破了他,所以借这个机会,跟大家一起来分析易游Web验证的特点及爆破处。再这里,要感谢我的那位朋友@天上飞的鱼,还有感谢冰怜师傅的指点@冰怜泯灭。
     那个,上个成功的图。
    QQ截图20160715225213.png
     废话不多说,我们照着官方源码来分析这个CM

     首先我们直接看官方的注册码模版。我直接到登录按钮这,代码如下:
     PS:这。。。复制下来这鸟样。。。各位看官莫介意,我尽量拍下格式


       //首先进来就是读取C盘windows目录下的config.ini文件,看看我们之前是否登录过,状态码就是我们登录的时候,服务器返回的数据。
     配置值_状态码 = 读配置项 (“config.ini”, “root”, “code”, “”)                                
     配置值_上次登录用户名 = 读配置项 (“config.ini”, “root”, “upname”, “”)      

    .如果真 (取文本长度 (配置值_状态码) = 32)        //如果存在,也就是说我们之前登录成功过。并且服务器返回的数据要是32位长度的。就退出登录
       调用地址 = “https://w.eydata.net/0bee5ab963ef3b4c”          //这里就是退出登录的调用地址。
       调用参数 = “StatusCode=” + 配置值_状态码 + “&UserName=” + 配置值_上次登录用户名
       调用接口 (调用地址, 到字节集 (调用参数))       //就是通过这个函数来实现与服务器通信
   .如果真结束
    //如果我们是第一次打开这个软件,第一次登录这个软件,直接向服务器验证
   调用地址 = “http://w.eydata.net/0fde5c0e3e89715f”    //这里就是登录的地址了。
   调用参数 = “UserName=” + 编辑框_登录用户名.内容 + “&UserPwd=” + 编辑框_登录用户密码.内容 + “&Version=3.0&Mac=”  
   返回值 = 调用接口 (调用地址, 到字节集 (调用参数))   //跟上面一样,整个易游Web与服务器通信,都是通过这个函数。

  .如果 (取文本长度 (返回值) = 32)    //这里就是判断服务器返回的数据长度要是32位。不然就会跳到登录失败
       //接下来的操作就是把登录信息写到配置文件,也就是C盘windows目录下的config.ini,方便下次退出登录。窗口载入也是写在这里。
       状态码 = 返回值
       用户名 = 编辑框_登录用户名.内容
      .如果 (选择框_记住我.选中)
        写配置项 (“config.ini”, “root”, “name”, 编辑框_登录用户名.内容)
        写配置项 (“config.ini”, “root”, “pwd”, 编辑框_登录用户密码.内容)
     .否则
        写配置项 (“config.ini”, “root”, “name”, “”)
        写配置项 (“config.ini”, “root”, “pwd”, “”)
    .如果结束


         写配置项 (“config.ini”, “root”, “upname”, 编辑框_登录用户名.内容)
         写配置项 (“config.ini”, “root”, “code”, 状态码)
       _启动窗口.可视 = 假
       载入 (主窗口, , 真)
  .否则


    .如果 (取文本长度 (返回值) = 0)
        信息框 (“网络异常,获取信息失败”, 0, )
    .否则
        信息框 (“登录失败,错误代码:” + 返回值, 0, )
    .如果结束

好了,这个注册码模版的关键部分分析完了,接下来我们看看Web模块。我们只看   调用接口()这个函数,我只保留我们需要的部分,其余的请自己查看。代码如下:

       局_访问方式 = 多项选择 (2, “GET”, “POST”, “HEAD”)     //这里选择通信方式。
                  (………………)
      HttpSendRequestA_字节集 (局_HTTP请求句柄, 附加协议头, 取文本长度 (附加协议头), 字节集提交, 取字节集长度 (字节集提交))  //通过这个API函数来实现跟服务器的通信
                  (………………)
     .循环判断首 ()
                (………………)
    .循环判断尾 (局_计次 ≠ 0)
   返回 (到文本 (编码转换 (局_页面内容, #编码_UTF_8, #编码_GB2312, )))

既然是通过HttpSendRequestA这个APi函数来访问服务器的。那么我们就可以直接在这个API下断。接下来。OD操作。。。


因为这个API所在的dll是在点登录之后释放的。所以我们需要先点一次登录,然后再Ctrl+G到达HttpSendRequestA 这个函数处


QQ截图20160715231327.png    


看,这就是运行起来后,没有点登陆。定位不到这个函数。我们点下登录,再定位,就可以了


来到这里,下断后,点登录。
QQ截图20160715231533.png


断下来后,我们到堆栈里找调用Call。


QQ截图20160715231644.png


右键,反汇编窗口跟随。然后在调用call的下面下个断
QQ截图20160715231741.png


运行起来。然后我们F8单步,这里调用过HttpSendRequestA之后,按照模块源码应该是下面这些内容,我们可以不用管
QQ截图20160715231923.png
慢慢的往下跟。直到下图所在位置
QQ截图20160715232052.png
我们发现,在单步完这个call后,寄存器 eax的值变了, -114,登录数据不存在。也就是说,服务器上没有我们的数据。那么我们可以猜测,这个应该是那个退出的时候调用的。不管他。但是这个call要记住。因为我们现在所处的位置,就是易游Web模块中调用接口()函数的位置。我们在call的下面下个断,然后直接跑起来吧。


发现又断在了HttpSendRequestA 这个APi了。我们直接运行


已经在我们下的断点处断下了,然后我们右击eax寄存器,数据窗口跟随。


QQ截图20160715232731.png


-102的意识就是用户不存在。我们上面也看了源码。服务器是返回的长度为32的字符。那么我们把这个eax的值改成32位长度的字符不就可以了?
QQ截图20160715233005.png
记得后面要加00。
然后我们单步到调用这个call的地方。因为这个验证,登录也是调用那个Call,取各种数据也是调用那个call,所以,我们只能到调用这个call的下一行下断,打补丁。
QQ截图20160715233124.png

我们继续运行。在HttpRequestA 这个API断下后,继续运行。然后就会断在我们刚刚在调用接口里下的断
QQ截图20160715233456.png

在这里我们补数据。CE D2 C8 A5 C9 F1 BE AD B2 A1 A3 A1 00 00 00 00  核心数据  这是核心数据。为了防止出错。我是直接取得那一行。也是跟上面一样,右键eax,数据窗口跟随。二进制编辑。黏贴上去

QQ截图20160715233733.png

咳咳。不要介意,不要介意。。。。


补完后,我们单步到retn,返回到调用处,然后在下一行下个断。方面待会补丁的时候好找。
QQ截图20160715233853.png


接下来继续运行。看看结果

QQ截图20160715233934.png

嗯。这个出来了,接下来就是点击按钮,生成时间了。


我们点击按钮。发现又断在了HttpRequestA 这个API。好吧。继续运行。就会断在我们在调用接口()这个函数中下的断
QQ截图20160715234122.png

继续改数据。这里我们修改的是变量数据。数据都是我原先通过正版号就已经获取了的。
QQ截图20160715234221.png
单步到ret,返回上一层
QQ截图20160715234322.png

还是一样,下个断,方便待会找数据。
然后我们跑起来吧
骚年们,起飞啦
QQ截图20160715234436.png

已经成功了。接下来就是打补丁了,我们用到的补丁工具是PYG论坛Nisy校长开发的一款大白补丁工具。这款补丁工具很好很强大,用过的人都知道,在此。谢谢Nisy校长。


大白界面
QQ截图20160715234636.png


我们把信息填好。然后在补丁类型这里选择异常中断补丁,再点击添加补丁
QQ截图20160715234755.png
来到了这
QQ截图20160715234904.png


然后我们把地址写上。然后修改类型选择修改寄存器指向的内存
QQ截图20160715235147.png
然后寄存器,我们选择eax,偏移不动,数据类型选择立即数,值类型选择AscII码,补丁数据就填需要补丁的数据。
QQ截图20160715235446.png
然后点添加。剩下的都是一样的。全部弄完后,记得点保存。我就不跟着弄了。偷下懒,毕竟很晚了。
然后数据都弄完后,点击保存后,在点击生成。
QQ截图20160715235627.png

默认是保存在CM路径下,我们直接到CM路径

QQ截图20160715235753.png
双击运行。然后点执行补丁。
QQ截图20160715235820.png
这个是我之前就做好的。所以信息有点不符。


执行成功后,把这个关了,直接打开我们的CM


如果劫持成功,就会出现这样的启动画面
QQ截图20160715235938.png

然后我们试下效果

QQ截图20160716000057.png


OK 。功能齐全。教程也就结束了。大白补丁,你们可以到PYG官网下载。这个教程。花了我一个小时多,果然啊。来一发就要睡觉了。

@Shark恒  恒大,求精。深夜发帖不容易啊。


PS:
喜欢你就评分呗。又不浪费你的HB。或许评分只是你的一次举手之劳,但是对于我们出教程的人来说,却是一种最大的支持跟鼓励还有认可。么么哒。

点评

谁挖的坟  发表于 2016-8-11 00:41
HTTP的直接本地 HTTPS的爆破 山寨- -  发表于 2016-7-17 13:29

评分

参与人数 35威望 +1 HB +95 THX +28 收起 理由
暴力的狂风 + 1 [快捷评语] - 分享精神,是最值得尊敬的!
ddd2017 + 1 [快捷评语] - 吃水不忘打井人,给个评分懂感恩!
耶稣 + 5 + 1 [快捷评语] - 分享精神,是最值得尊敬的!
peter_king88 + 1 分享精神,是最值得尊敬的!
小强 + 3 + 1 评分=感恩!简单却充满爱!感谢您的作品!
逍遥枷锁 + 2 + 1 分享精神,是最值得尊敬的!
a1186494930 + 1 + 1 吃水不忘打井人,给个评分懂感恩!
happylyc + 1 评分=感恩!简单却充满爱!感谢您的作品!
nightyice + 1 分享精神,是最值得尊敬的!
奋斗 + 1 + 1 分享精神,是最值得尊敬的!
Niuer + 6 + 1 评分=感恩!简单却充满爱!感谢您的作品!
kwp666666 + 1 + 1 分享精神,是最值得尊敬的!
zby03772015 + 5 + 1 分享精神,是最值得尊敬的!
地球孤鹰 + 1 分享精神,是最值得尊敬的!
守护神艾丽莎 + 1 + 1 吃水不忘打井人,给个评分懂感恩!
abcde654321 + 1 + 1 吃水不忘打井人,给个评分懂感恩!
hpoon + 1 + 1 分享精神,是最值得尊敬的!
Zixue + 6 + 1 分享精神,是最值得尊敬的!
heiwen + 1 + 1 分享精神,是最值得尊敬的!
1906 + 1 + 1 分享精神,是最值得尊敬的!
723853985 + 6 + 1 分享精神,是最值得尊敬的!
追梦 + 2 + 1 评分=感恩!简单却充满爱!感谢您的作品!
lixjiy + 1 + 1 分享精神,是最值得尊敬的!
xubai123 + 1 分享精神,是最值得尊敬的!
xuenii + 1 + 1 叼炸天的操作~
ss2442376977 + 2 + 1 吃水不忘打井人,给个评分懂感恩!
微若清风 + 1 + 1 吃水不忘打井人,给个评分懂感恩!
笔尖下的日子 + 1 分享精神,是最值得尊敬的!
刘小徐520 + 6 + 1 前来支持bu弃师傅,么么哒
wswwj + 1 + 1 吃水不忘打井人,给个评分懂感恩!
d550072252 + 1 + 1 评分=感恩!简单却充满爱!感谢您的作品!
330190725 + 1 又一个WEBAPI教程,感谢大牛
一个good而已 + 2 + 1 分享精神,是最值得尊敬的!
_BaZzi + 1 我只是来膜拜冰冷泯灭师傅的
Shark恒 + 1 + 30 + 1 评分=感恩!简单却充满爱!感谢您的作品!

还有更多人参与评分,点击查看全部!

学破解论坛关注PC软件安全与移动软件安全领域。学习破解方法,使软件开发者能够更好的弥补软件缺陷,修复软件漏洞,提升软件安全,将损失降为最低。大量的软件加密解密教程,使软件开发者与代码逆向分析爱好者受益颇多,因此被连连称赞。保护开发者的利益与版权是我们持之以恒的动力!学破解论坛将竭尽全力为软件安全领域献出微薄之力!

  离线 

签到天数: 3

该用户今日未签到

 楼主| 发表于 2016-7-16 00:09 | 显示全部楼层 |取消关注该作者的回复
按照GG表哥的国际惯例。自己的沙发自己座。
学破解论坛关注PC软件安全与移动软件安全领域。学习破解方法,使软件开发者能够更好的弥补软件缺陷,修复软件漏洞,提升软件安全,将损失降为最低。大量的软件加密解密教程,使软件开发者与代码逆向分析爱好者受益颇多,因此被连连称赞。保护开发者的利益与版权是我们持之以恒的动力!学破解论坛将竭尽全力为软件安全领域献出微薄之力!
回复

使用道具 举报

  离线 

签到天数: 56

今日第74个签到

精华与深夜制作无关,主要是讲解的确实很细致,代表大家感谢你,么么哒!
学破解论坛关注PC软件安全与移动软件安全领域。学习破解方法,使软件开发者能够更好的弥补软件缺陷,修复软件漏洞,提升软件安全,将损失降为最低。大量的软件加密解密教程,使软件开发者与代码逆向分析爱好者受益颇多,因此被连连称赞。保护开发者的利益与版权是我们持之以恒的动力!学破解论坛将竭尽全力为软件安全领域献出微薄之力!
回复

使用道具 举报

  离线 

该用户从未签到

看看这个精华帖如何
学破解论坛关注PC软件安全与移动软件安全领域。学习破解方法,使软件开发者能够更好的弥补软件缺陷,修复软件漏洞,提升软件安全,将损失降为最低。大量的软件加密解密教程,使软件开发者与代码逆向分析爱好者受益颇多,因此被连连称赞。保护开发者的利益与版权是我们持之以恒的动力!学破解论坛将竭尽全力为软件安全领域献出微薄之力!
回复

使用道具 举报

  离线 

该用户从未签到

多谢楼主的教程。
学破解论坛关注PC软件安全与移动软件安全领域。学习破解方法,使软件开发者能够更好的弥补软件缺陷,修复软件漏洞,提升软件安全,将损失降为最低。大量的软件加密解密教程,使软件开发者与代码逆向分析爱好者受益颇多,因此被连连称赞。保护开发者的利益与版权是我们持之以恒的动力!学破解论坛将竭尽全力为软件安全领域献出微薄之力!
回复

使用道具 举报

  离线 

该用户从未签到

楼主大牛。可不可以翻录一下视频教程?》图文表示看不明白,中间有断层
学破解论坛关注PC软件安全与移动软件安全领域。学习破解方法,使软件开发者能够更好的弥补软件缺陷,修复软件漏洞,提升软件安全,将损失降为最低。大量的软件加密解密教程,使软件开发者与代码逆向分析爱好者受益颇多,因此被连连称赞。保护开发者的利益与版权是我们持之以恒的动力!学破解论坛将竭尽全力为软件安全领域献出微薄之力!
回复

使用道具 举报

  离线 

签到天数: 9

该用户今日未签到

被加密的也可以吗?
学破解论坛关注PC软件安全与移动软件安全领域。学习破解方法,使软件开发者能够更好的弥补软件缺陷,修复软件漏洞,提升软件安全,将损失降为最低。大量的软件加密解密教程,使软件开发者与代码逆向分析爱好者受益颇多,因此被连连称赞。保护开发者的利益与版权是我们持之以恒的动力!学破解论坛将竭尽全力为软件安全领域献出微薄之力!
回复

使用道具 举报

  离线 

签到天数: 2

该用户今日未签到

多谢楼主的教程
学破解论坛关注PC软件安全与移动软件安全领域。学习破解方法,使软件开发者能够更好的弥补软件缺陷,修复软件漏洞,提升软件安全,将损失降为最低。大量的软件加密解密教程,使软件开发者与代码逆向分析爱好者受益颇多,因此被连连称赞。保护开发者的利益与版权是我们持之以恒的动力!学破解论坛将竭尽全力为软件安全领域献出微薄之力!
回复

使用道具 举报

  离线 

该用户从未签到

我来膜拜一发、
学破解论坛关注PC软件安全与移动软件安全领域。学习破解方法,使软件开发者能够更好的弥补软件缺陷,修复软件漏洞,提升软件安全,将损失降为最低。大量的软件加密解密教程,使软件开发者与代码逆向分析爱好者受益颇多,因此被连连称赞。保护开发者的利益与版权是我们持之以恒的动力!学破解论坛将竭尽全力为软件安全领域献出微薄之力!
回复

使用道具 举报

  离线 

签到天数: 1

该用户今日未签到

我只是来膜拜冰冷泯灭师傅的
学破解论坛关注PC软件安全与移动软件安全领域。学习破解方法,使软件开发者能够更好的弥补软件缺陷,修复软件漏洞,提升软件安全,将损失降为最低。大量的软件加密解密教程,使软件开发者与代码逆向分析爱好者受益颇多,因此被连连称赞。保护开发者的利益与版权是我们持之以恒的动力!学破解论坛将竭尽全力为软件安全领域献出微薄之力!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

免责声明

本站中所有被研究的素材与信息全部来源于互联网,版权争议与本站无关。本站所发布的任何软件的逆向分析文章、逆向分析视频、破解补丁、注册机和注册信息,仅限用于学习和研究软件安全的目的。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。学习逆向分析技术是为了更好的完善软件可能存在的不安全因素,提升软件安全意识,所以您如果喜欢某程序,请购买注册正版软件,获得正版优质服务!不得将上述内容私自传播、销售或者其他任何非法用途!否则,一切后果请用户自负!


联系QQ|联系Email|手机版|小黑屋|FAQ|Vip破解教程|学破解论坛 ( 京公网安备 11011502002737号 | 京ICP备14042738号-2 )  

GMT+8, 2017-3-29 09:28

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