花无涯:黑客渗透笔记之单机游戏的一次付费破解

最近在研究Android逆向,内购破解这一块,发现挺有味道的,当然只限做技术研究。下面通过对某单机游戏的内购破解,详细介绍一下内购的方法和原理以及防护等。

花无涯:黑客渗透笔记之单机游戏的一次付费破解

游戏修改器可以实现很多变态功能,像无敌、倍攻、秒杀等,但是现在很多游戏都使用了MTP手游保护,游戏修改器无法使用。

使用某修改器添加游戏,可以看到很多进程,选择主进程4333。

软件黑客的学习步骤:

第一步:英语不用说了吧

第二步:也是硬件

第三步:从单片机学,有点夸张,但是要从底层的机器语言开始学习

第四步:学习,脚本语言,C,汇编语言,这都是以后免杀,加壳的基础,没有这些基础,免杀,加壳,都是扯淡...但是这一步也是最难得,好多都是在大学专业课学的,如果你没有编程基础的话,要玩免杀和加壳是很难的,即使懂一点,也是比着葫芦画瓢!

第五步:上面的编程语言不用,全懂!全世界有几千种计算机语言,常用的也就几十种,只要你能精通里面的3种左右,基本就可以了,然后你的目标就是学习反编译软件了,是日后破解软件的基础啊,哎...太多了,想当一个破解高手的话,必须要有数学水平,没有数学水平的话,以后的加密,你都头晕,连MD5算法,你都不知道...

材料准备

花无涯:黑客渗透笔记之单机游戏的一次付费破解

1)APP下载,本次演示的软件:登山赛车至天朝历险。

我们去其官网下载即可,另外在其他市场下载一个低版本的,这里我另外下载了一个 v1.3.1的,后面会有用。

花无涯:黑客渗透笔记之单机游戏的一次付费破解

2)至于工具,一个Android Killer加个 夜神模拟器 就可以了

3)放Android Killer 一看,可正常回编,这样也省了不少事

花无涯:黑客渗透笔记之单机游戏的一次付费破解

内购破解

01. 内购流程

花无涯:黑客渗透笔记之单机游戏的一次付费破解

内购即应用中付费购买道具或其他东西。其加入了第三方SDK(支付SDK)。支付SDK提供商(如移动、联通、支付宝等)先开发一个支付SDK,并进行加固等保护,再为开发者提供支付接口的使用指南,开发者在APP中添加了支付SDK后,通过相关配置使用SDK即可完成收费功能。

而从国内安卓的单机应用来看,其内购流程可简括为:APP--支付SDK--支付SDK服务器--APP。

02. 搜索关键字符

内购的关键函数

paysuccess onsuccess buysuccess threadSuccess orderBombsuccess payonbilling dobilling PayResult onBillingFinish BillingResult inresult paycallback resultStatus 9000 0x2328

从字面上就可知道,都是判断支付结果用的(其中0x2328是9000的十六进制)

02x01 直接搜索购买失败的Toast

1). 安装游戏后购买金币,随便填个,让它弹出购买失败的错误提示

花无涯:黑客渗透笔记之单机游戏的一次付费破解

2). 搜索关键字符 “短信验证码验证失败” 另,转Unicode码也没搜到

花无涯:黑客渗透笔记之单机游戏的一次付费破解

3). 试着搜索它的变量名 “gc_security_sms_err”

花无涯:黑客渗透笔记之单机游戏的一次付费破解

4). 果然,版本更新了,但 名称还是没变的,再试着搜索它的ID “0x7f0700a1”

花无涯:黑客渗透笔记之单机游戏的一次付费破解

5). 但至此并没搜索到其关键的判断语句,So,另找它法

02x02 搜索支付的API关键接口

花无涯:黑客渗透笔记之单机游戏的一次付费破解

2> 从输入的手机号的错误提示可知是移动的接口,我们将其拉入 Android Killer后搜索移动支付 API 的关键字 “BillingResult”(前面已介绍第三方SDK的相关资料)

花无涯:黑客渗透笔记之单机游戏的一次付费破解

3> 另,看AndroidMainfest.xml文件发现应用原入口被改

花无涯:黑客渗透笔记之单机游戏的一次付费破解

4> 我们来看原入口下的类(有需要可以看反编译后的JAVA代码),这里我们直接看Smali语句

黑客,可分为网络黑客和软件黑客,网络黑客主要是搭建各种服务器和网站,来入侵网站,入侵服务器,而且要对网络协议有很深的基础,对数据的传输有很深的见解和了解。比如:网络OSI七层模型,TCP/IP协议,远程登录协议,以及邮件协议,FTP文件传输协议...等等,软件黑客主要是编写木马病毒,加壳,和免杀技术,破解软件,所有要求对汇编语言和编程语言有很熟练的技能!但是一个真正的黑客,必须要两种都会,不求全精,但必须精通一样,其他理解即可,拿简单的灰鸽子来说,灰鸽子有软件黑客编写,必须掌握很强的编程技术,同时编写者也必须对网络协议,端口号有很深的理解!这样才能完成一套集成,免杀,远程登录,屏幕监控的一系列举动!

话归正传,下面我给大家说下两种黑客的学习方法,以及如何学?从那开始学?

1.英语是必须要掌握的,大家都知道,几乎所有的漏洞都是从国外网站学来的,如果你不懂英语,等到你看到中文漏洞的时间,不知道已经过多长时间了,英语来说,不用要求语法非常精通,但是计算机常用英语的4000个单词,和基本的语法是必须的,无论你从事哪种黑客,都是避免不了的!

2.网络黑客的学习步骤:

第一步:先找硬件方面的知识看,了解!

第二步:掌握硬件以后,开始学习基本的网络协议,如TCP/IP

第三步:掌握协议以后,开始学习路由交换转发数据的原理

第四步:掌握原理以后,开始熟悉你要接触的系统,比如:windows系统,Linux系统,Unix系统...

第五步:熟悉系统以后,开始学习各个服务器的搭建,和维护,这时你已经有之前学习网络协议的基 础,在来学习服务器就很容易理解了!


分享到:


相關文章: