首页
社区
课程
招聘
手机游戏广告条破解原理和APK加固保护方法
发表于: 2014-4-25 17:20 1193

手机游戏广告条破解原理和APK加固保护方法

2014-4-25 17:20
1193
1.广告条篡改原理

广告收入是单机版游戏最主要的收入来源,也是网络游戏的主要收入来源之一。不法分子可以通过反编译游戏客户端,直接用自身的广告条替换掉原有的广告条后,二次打包发布盗版版本,以盗版版本的广告条获利。

篡改的步骤如下:

步骤一:反编译APK

步骤二:篡改移除原有广告条或者插入自身的广告条

步骤三:二次打包发布

详细介绍如下文所示:

1.1反编译APK

使用apktool工具,反编译游戏apk逆向得到smali代码。

执行apktool.batd [apk_name] [output_folder_name]

[梆梆安全]游戏广告条被篡改原理和APK加固保护方法

可以得到如下的文件结构:

[梆梆安全]游戏广告条被篡改原理和APK加固保护方法

可以很清晰的看到,有AD等目录。AD目录里面包含了广告相关的smali代码。

  [梆梆安全]游戏广告条被篡改原理和APK加固保护方法

1.2篡改移除原有广告条或者插入自身的广告条

修改【\smali\com\outfit7\talkingtom\ad】目录下的a.smali

[梆梆安全]游戏广告条被篡改原理和APK加固保护方法

可以很清晰的看到,talkingtom里面的banner广告有很多组,其中标记为“adMob”的广告条,用的就是Google的AdMob广告,其实真实调用的【con/outfit7/talkingtom/ad/s】这个类。查看这个类的代码,可以看到:

[梆梆安全]游戏广告条被篡改原理和APK加固保护方法

里面调用的是【com/google/ads/AdRequest】这个类。黑客只要将google的adRequest类修改为自身的广告条类以后,就可以完成相关的广告替换。

1.2二次打包发布

篡改完代码以后,使用apktool工具,编译smali代码得到新的apk。

执行apktool.batb [input_folder_name] [apk_name]

[梆梆安全]游戏广告条被篡改原理和APK加固保护方法

使用keystore证书,用【梆梆签名】bangclesigner(http://www.bangcle.com/static/tools/bangclesigner.rar)进行签名:

[梆梆安全]游戏广告条被篡改原理和APK加固保护方法

至此全部完成。

篡改广告前后对比是:[梆梆安全]游戏广告条被篡改原理和APK加固保护方法

2.APK加固保护方案

广告条被篡改,将给游戏开发者带来巨大的收入损失。

使用梆梆安全加固(http://www.bangcle.com/app/member_upload/)可以避免这种损失。

安全加固的步骤:

步骤1:将APK提交到梆梆安全的网站

步骤2:下载加固后的未签名APP

步骤3:使用【梆梆签名】bangclesigner(http://www.bangcle.com/static/tools/bangclesigner.rar)进行签名。

在梆梆安全加固网站提交APP:

[梆梆安全]游戏广告条被篡改原理和APK加固保护方法

加固完成下载后,使用apktool进行反编译时:

[梆梆安全]游戏广告条被篡改原理和APK加固保护方法

进入目录后看到:

  [梆梆安全]游戏广告条被篡改原理和APK加固保护方法

代码都被保护起来了,只保留了梆梆安全加固壳的入口函数(该入口函数是梆梆安全的入口函数,和原来的没有任何关系)。而广告、业务等smali代码已经无法看到。确保了APK无法被篡改。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//