2019年5月25更新——“运动世界校园”软件破解

一、软件工作原理软件和后台使用API进行交互,在早期版本中API没有鉴权导致可以通过伪造请求来完成跑步,但是后期API迭代了好几个版本,目前认为现在的请求需要间隔一个合理的时间差(跑步时间),而且需要计算一个token用来鉴权,避免了伪造请求。 跑步开始和跑步完成时,会记录时间、设备序列号、IMEI等敏感信息,上传服务器。此操作用来记录手机设备唯一性,用来检测频繁换手机,一台设备上登陆不同账…

大家好,又见面了,我是你们的朋友全栈君。

一、软件工作原理

  1. 软件和后台使用API进行交互,在早期版本中API没有鉴权导致可以通过伪造请求来完成跑步,但是后期API迭代了好几个版本,目前认为现在的请求需要间隔一个合理的时间差(跑步时间),而且需要计算一个token用来鉴权,避免了伪造请求。
  2. 跑步开始和跑步完成时,会记录时间、设备序列号、IMEI等敏感信息,上传服务器。此操作用来记录手机设备唯一性,用来检测频繁换手机,一台设备上登陆不同账号的代跑行为。
  3. 使用百度地图API,通过GPS和由百度提供的LBS服务进行定位,软件中的配速,通过定位速度来计算。
  4. 软件中用来评价跑步是否合格的步频,通过加速度传感器和计步器来获取数据。(后期发现计步器部分的代码完全没有发挥作用)
  5. 软件检测Root但不会影响跑步,目前软件通过检测Xposed Installer来检测Xposed框架,当检测到存在时,会禁止开始跑步。

二、解决方案

Xposed框架操作简单,模块写起来也简单得多,通过Hook系统传感器和GPS就可以达到模拟步频和定位的效果,但是软件目前会检测Xposed,所以需要反编译应用,把检测方法干掉。

三、反编译应用

我前后反编译了软件的两个版本,1.x和2.x功能变化不大,只是UI有一部分变化。通过EDEX对代码进行解包,发现应用套了壳。1.x版本使用360加固,2.x版本使用网易云盾(原网易云加固)对应用进行了加密。

通过查找相关资料,我在看雪论坛发现了一篇文章,文章说的很简略,其实原理很简单,是Dalvik虚拟机模式下基于Android运行时

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/126149.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • ScriptManager.RegisterStartupScript()方法

    ScriptManager.RegisterStartupScript()方法如果页面中不用Ajaxcs中运行某段js代码方式可以是:Page.ClientScript.RegisterStartupScript(Page.GetType(),””,”window.open(‘default2.aspx’)”);如果页面中使用了Ajax则上述代码即使执行也无效果。对这种情况我们通常采用:ScriptManager.RegisterStartupScr

    2022年7月20日
  • c#中高效的excel导入sqlserver的方法

    将oledb读取的excel数据快速插入的sqlserver中,很多人通过循环来拼接sql,这样做不但容易出错而且效率低下,最好的办法是使用bcp,也就是System.Data.SqlClient.S

    2021年12月27日
  • linux tty设备_centos开启ftp

    linux tty设备_centos开启ftp准备工具  0.下载ttylinux系统。  http://minimalinux.org/ttylinux/downloadX86.html (ttylinux-i686-11.1.iso.gz)(bootcd-i386-5.3.iso.gz)  1.下载thttpd。  http://minimalinux.org/ttylinux/addons.html (thttpd-2.25b-i48…

    2022年8月12日
  • 反编译微信小程序(最新)[通俗易懂]

    首先声明:本文章仅供学习之用,不可它用。一、前言看到人家上线的小程序的效果,纯靠推测,部分效果在绞尽脑汁后能做出大致的实现,但是有些细节,费劲全力都没能做出来。很想一窥源码?查看究竟?看看大厂的前端大神们是如何规避了小程序的各种奇葩的坑?那么赶紧来试试吧反编译,其实还是简单的,要想拿到微信小程序源码,找到源文件在手机存放的位置就行,源文件拿到,用反编译脚本跑一下,微…

    2022年4月18日
  • Google 离线地图_谷歌地图离线包下载手机版

    Google 离线地图_谷歌地图离线包下载手机版google离线地图展示和渲染由于项目的需要,在线地图无法满足业务需要,于是要做离线地图。经过一段时间的调研,最后选择了谷歌离线地图原因是通过现成的工具便可完成。感谢前人栽的树,在此整理总结。以下内容和代码是调研时准备的,仅供参考使用。离线地图制作技术:googlemapapi准备:googlemapapiv3离线版,地图切图工具,Google_Maps_API

    2022年9月19日
  • 企业微信通讯录回调密文解析及微信支付回调密文解析异常处理

    企业微信通讯录回调密文解析及微信支付回调密文解析异常处理企业微信通讯录回调密文解析及微信支付回调密文解析异常处理产生异常表现:javax.crypto.IllegalBlockSizeException:Inputlengthmustbemultipleof16whendecryp原因:因为某些国家的进口管制限制,Java发布的运行环境包中的加解密有一定的限制解决方案:替换jdk和jre中的local_policy.jar,US_export_policy.jar具体目录:1、jre目录/lib/security/policy/

    2022年5月18日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号