1.广告条篡改原理

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

篡改的步骤如下:

步骤一:反编译APK

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

步骤三:二次打包发布

详细介绍如下文所示:

1.1反编译APK

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

执行apktool.batd [apk_name] [output_folder_name]

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

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

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

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

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

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

1.2二次打包发布

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

执行apktool.batb [input_folder_name] [apk_name]

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

至此全部完成。

篡改广告前后对比是:

2.APK加固保护方案

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

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

安全加固的步骤:

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

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

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

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

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

进入目录后看到:

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

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

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

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

  2. java老版手机游戏合集破解

    一.前言 最近刚读完一本书:<Netty.Zookeeper.Redis 并发实战>,个人觉得 Netty 部分是写得很不错的,读完之后又对 Netty 进行了一波很好的复习(之前用 sp ...

  3. Android之高仿京东APP首页“京东快报”自动向上滚动的广告条

    转载请标明出处: http://blog.csdn.net/hai_qing_xu_kong/article/details/51013562 本文出自:[顾林海的博客] ##前言 上次在京东APP上 ...

  4. 手机游戏逐成移动互联网应用领域“弄潮儿”

    若问当下移动互联网什么最火?不少人给出的答案是3G应用.而再进一步问当下什么3G应用最火?十有八九的人给出的答案是手机游戏.无疑,手机游戏已经成为了移动互联网领域的弄潮儿. 照亮3G发展的一线曙光 随 ...

  5. 【干货#011】小程序页面滚动实现广告条隐藏

    缘起 小程序需要在手机狭小的屏幕中放入尽量多的内容,而老板想在在页面放个广告条,由于挤占了不然就不大的页面控件,对程序的功能操作又有较大的影响.如何兼顾两者的需求? 下面介绍一种默认显示页面首部广告条 ...

  6. 仿京东首页的京东快报,自动向上滚动的广告条

    向上滚动的广告条 实现原理 起初看到这个效果时,第一个想法就是向上移动动画+定时器,但当我准备写时发现,滚动时上下文字都是逐渐出来的(有点像滑动的),如果用动画的话不行,如果用滑动的话,那就是List ...

  7. 探秘腾讯Android手机游戏平台之不安装游戏APK直接启动法

    前言 相信这样一个问题,大家都不会陌生, "有什么的方法可以使Android的程序APK不用安装,而能够直接启动". 发现最后的结局都是不能实现这个美好的愿望,而腾讯Android ...

  8. 学习手机游戏原画设计需要多长时间?难学吗?

    首先是大家都感兴趣的话题,新手学习游戏原画设计需要多长时间?难学吗?现在的游戏市场上包括大家所接触接触到的几种画风中有:国古设计风格.韩式设计风格.Q版设计风格等这几种风格是大家接触比较多一些的. 如 ...

  9. deepin linux运行apk,在Deepin 20.1 Linux系统下用Wine游戏助手来运行原神

    本文介绍在Deepin 20.1 Linux系统下用Wine游戏助手运行原神游戏的方法.经测试,是可以用Wine来运行原神的,但是方法不对,即使能安装完成也很难运行起来,或者运行后很容易就崩溃.以下方 ...

最新文章

  1. 控制寄存器(CR0,CR1,CR2,CR3,CR4)
  2. jsp图片墙_JS实现的非常漂亮的3D立体照片墙显示效果
  3. linux中original_如何在 Linux 中整理磁盘碎片
  4. 二叉树的层次遍历_【腾讯面试热身题】二叉树层次遍历(动画展示)
  5. FutureTask源码
  6. 【置顶】方立勋JavaWeb学习地址
  7. 解决phpcms模版设置中不能显示栏目首页模板,栏目列表页模板,内容页模板等下拉菜单选项的问题!...
  8. linux telnet 127.0.0.1 不通,Linux 出现telnet: 127.0.0.1: Connection refused错误解决办法
  9. C++字符串处理小结
  10. 数据库系统原理及mysql应用教程_数据库系统原理及MySQL应用教程
  11. adobe mac怎么卸载 ?彻底卸载Adobe Mac软件的正确做法
  12. 互联网大佬生存法则 如何防守周鸿祎
  13. Linux环境下获取硬盘序列号
  14. IOS – OpenGL ES 图像鱼眼扩散效果 GPUImageBulgeDistortionFilter
  15. 用java判断三角形类型_判断三角形类型
  16. 记录下echarts Map3D地图渐变
  17. Node.js详细下载与安装
  18. Linux下分割、合并PDF(pdftk)
  19. c语言 substr,如何在C语言实现substr()
  20. micropython stm32f429 tft_基于STM32F429的TFT0.96屏幕驱动

热门文章

  1. html5文件io,html5plus io模块resolveLocalFileSystemURL 异步操作的问题
  2. 使用Koala编译LESS文件
  3. LINUX系统更改系统时区
  4. 小数据池/is和==/再谈编码作业
  5. springboot集成shiro RememberMe 报错 RememberMe services will not be performed for account
  6. 2022年12月电子学会Python等级考试试卷(三级)答案解析
  7. 美伊战争_战争不是答案
  8. Python+Celery实现基于Fastnetmon异常流量清洗
  9. 阿里集团IPO估值千亿
  10. 小黄车退押金?池对象模式(Object Pool Pattern)来吐槽