Android-黑客技术-实现类似电脑版软件破解版

2023-11-02

首先先看看什么叫做Android的黑客技术效果:

游戏:修改正版apk代码,实现破解免支付买道具。

应用:修改添加自己的信息,和应用市场应用看起来一样

最近趁着清闲,学了段时间的Android逆向技术,发现了新世界,所以现在就算手机app也是可以像电脑exe一样,实现破解绿色版本,或者病毒版本,然后就可以嘿嘿嘿了。 

二次修改apk地址:链接:(不好意思,公共场合我们是正经的开发人员)
接下来讲讲实现核心,脱壳和smali代码。

 

前言

现在市场中加固apk的方式主要是360加固,其次还有乐固,爱加密,娜迦加固等,替换dex包,更换加载入口的方式,而360加固将入口的activity的oncreate()方法直接更换成native方法,存在到libjiagu.so中对入口进行篡改,还需要通过ida工具来分析。

 

----dumpDex脱壳apk,在root+xpose的手机上安装,实现脱壳获取dex

下载地址:https://github.com/WrBug/dumpDex

 

 

使用方式

下载源码编译或者下载apk包并安装,应用xposed模块后重启,运行加固的应用后,插件会自动将dex文件dump到 /data/data/包名/dump 目录

二、脱壳过程

  1. 打开【Xposed Installer】App,在【模块】菜单中勾选DumpDex插件,然后重启设备。
  2. 打开需要脱壳的App(此App应该已加固)。
  3. 打开【MT管理器】,在根目录/data/data目录下搜索dump,如果脱壳成功,就可以搜索到一个或多个dump文件夹,里面就是目标dex。(系统自带文件浏览器,大多找不到root后的data目录)

 

 

-----全选复制到图片的目录

 

通过共享文件,在新弹窗中 打开电脑的目录,拿到dex文件

 

 

-----------------------------windows10反编译工具Jadx-----------------------

在gitbash命令窗口中

git clone https://github.com/skylot/jadx.git

在下载完的目录下

cd jadx(打开项目) ./gradlew dist

----使用1:可视化操作

在目标路径下找到jadx-gui.bat双击可以打开可视化窗口来操作

----使用2:使用cmd命令操作,指令使用

jadx-d out xxx.apk(out为输出的目录名) jadx-gui xxx.apk(直接打开可视化界面对目标apk进行反编译查看源码

----效果如下:dex包拉进窗口即可显示

三、Dex转Jar相关

  1. 上面三步是脱壳过程。如果前面已顺利得到dex文件,那么现在就要把dex文件取到PC上。

由于dex文件在root目录下, Android Studio的Device File Explorer没有copy权限,一个便捷的方法是在手机上把这些文件拷贝到外面的一些可见目录中。然后在Android Studio的Device File Explorer中copy这些文件到PC。

  1. 把dex文件存copy到d2j目录下,在终端执行反编译命令,生成jar文件后用jd-gui打开。

 

------------------Android逆向助手 v2.2--将dex包转为smali文件,替换原本------------

将原本的source-xxx.dex改名为smali.dex

 

-----------------------Androidkiller之更换smali代码,并且重新编译

删除原本的360的壳smali文件,把反编译出来的拿过来替换

腾讯乐固的壳:

 

 

360加固壳:

将application的name更换为原本的:

 

 

总结:app就算使用各种三方加固工具,对于小白还是有效果,但是实际上还是可以被分析的透透测测,而且为了防止应用被篡改成破解版,这就衍生了签名验证操作,但是只要花费时间就去找去看还是有办法的,安全与逆向从来都是双向攻守的。

大部分人都有一个黑客梦,不过虽说确实可以黑入,但是乱搞的会被请去喝茶,所以逆向开发xpose入侵不能乱搞,无奈中,微信被封了,可悲可泣。。。。。。所以得慎重

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android-黑客技术-实现类似电脑版软件破解版 的相关文章

  • 模拟器中 Google Wear 上的语音识别器没有语音输入

    我试图使用 Google Wear 网站上的自由形式语音输入 在 hello world 示例中 我刚刚添加了对 textView 的单击 它确实从语音意图中调出 立即发言 活动 但模拟器无法检测到我的麦克风发出的任何声音 我使用的是 Ma
  • Android EditText 和 addTextChangedListener

    我目前正在将数据库管理器移植到 Android 由于性能原因 我喜欢 仅更新已修改的属性 我尝试使用 addTextChangedListener 执行此操作 以便将修改后的条目添加到列表中 但我的程序从未输入其任何方法 EditText
  • 用于 Kotlin 中单元测试的 BuildConfigField 模拟

    我正在尝试尽可能多地涵盖Kotlin Android 库我遇到了有关自定义 BuildConfig 变量的问题 更广为人知的是buildConfigField 我想模拟这个变量来测试两者true and false values 从 Gra
  • 升级到最新支持库后Android JACK编译器错误

    Android Studio 2 2 3 Windows 10 64位 构建工具版本 25 Android Gradle插件版本2 2 3 升级到最新的支持库 从 23 4 0 到 25 1 0 并更改编译版本 从 23 到 25 后 我收
  • 音频流的最佳实践

    我正在编写一个应用程序来播放远程服务器的音频 我尝试了多种方法来实现流音频 但它们对我来说都不够好 这就是我尝试过的 幼稚地使用 MediaPlayer 就像是 MediaPlayer player new MediaPlayer play
  • Android Camera.takePicture() 有时不返回?

    我正在编写一个Android 拍照应用程序 该代码在 onPreviewFrame byte data Cameracamera 中从预览中获取帧后进行一些处理 问题在于 android hardware Camera 的函数 takePi
  • 虚拟回调接口

    在 Eclipse 为您创建的来自 Google 的示例主从流代码中 片段中包含以下内容 private Callbacks mCallbacks sDummyCallbacks public interface Callbacks pub
  • 蓝牙 BLE Android 以最大吞吐量写入外设

    我们公司开发了一个具有蓝牙 BLE 的硬件单元 并且我们在 Nexus 7 2013 中有一个服务应用程序 我们希望使用它向该单元发送固件文件 文件最大可达 500kb BT芯片是德州仪器CC2540 我浏览了大量的页面 并扫描了 Stac
  • relativelayout导致动画不起作用?

    我有一个活动 其布局仅包含一个 VideoView 这是 XML
  • VOIP通话录音

    我正在开发一个在 android 中录制 VOIP 通话的项目 我没有找到任何解决方案 有很多应用程序支持手机上的 VOIP 录音 我找不到任何教程和帮助 立方体通话记录器 https play google com store apps
  • 如何使用 Google 的 GithubBrowserSample 方法在片段之间共享视图模型?

    我对 Android 架构组件的使用非常陌生 因此我决定使用 GithubBrowserSample 来构建我的应用程序来实现我的许多用例 但我有一个问题 我不知道使用这种方法在片段之间共享视图模型的正确方法是什么 我想共享视图模型 因为我
  • 使用 OkHttp 下载损坏的文件

    我编写的下载文件的方法总是会产生损坏的文件 public static String okDownloadToFileSync final String link final String fileName final boolean te
  • 什么是 Android 测试协调器?

    谷歌最近发布了Android测试支持库1 0 读完后overview https android developers googleblog com 2017 07 android testing support library 10 is
  • Android:WebView/BaseInputConnection 中的退格键

    我在 Android 4 2 中遇到软键盘退格问题 我在 WebView CodeMirror 中有一个自定义编辑器 它使用一个空的
  • Android - 存储对ApplicationContext的引用

    我有一个静态 Preferences 类 其中包含一些应用程序首选项和类似的内容 可以在那里存储对 ApplicationContext 的引用吗 我需要该引用 以便我可以在不继承 Activity 的类中获取缓存文件夹和类似内容 你使用的
  • Expresso 的 Android 测试首选项片段

    我在通过 Expresso 测试我的代码时遇到问题 我写了这段代码 public class SettingsActivity extends Activity Override protected void onCreate Bundle
  • 以 HTML 格式发送电子邮件

    我想发送 HTML 格式的电子邮件 如下图所示 我怎样才能做到这一点 请帮我 提前致谢 String body new String table tr td br header td tr br br Get b Best Score b
  • 如何知道我的应用程序的活动计数?

    我的应用程序中有多项活动 请考虑以下案例 Activity A 调用 Activity B B 调用 C 当用户按后退键时 C 生成通知并转到 B 现在再次按后退 因此将显示 A 再次按后退键也会终止 A 并显示通知 现在 当用户按下通知图
  • 我想测量 ListView 的高度 (getHight() = 0)

    我无法自己决定任务将是问 我想测量 ListView 的高度 无法捕捉渲染 ListView 的时刻 rssListView getHight 0 public class RSSactivity extends Activity publ
  • Android 的代码覆盖率[重复]

    这个问题在这里已经有答案了 可能的重复 Android测试代码覆盖率 Eclipse https stackoverflow com questions 3282702 android test code coverage eclipse

随机推荐

  • edge浏览器如何设置始终在新标签页中打开?

    方法1 在IE浏览器里设置 方法2 用鼠标滚轮点击打开 但是这种方法 只能在旁边的新窗口打开 你还需要自己手动切换页面 因为页面不会自动显示新窗口的内容 所以建议使用第一种方法
  • Qt中使用三角函数

    哈哈 今天发现 Qt可以很方便的使用三角函数 只需要 include math h 然后就可以 double a 0 0 double b 0 0 b sin a So easy 决心用Qt进行图像处理了 QImage类很好很强大 转载于
  • Xshell 5 注册码

    留着用 Xftp 5 注册码 101210 450789 147200 Xshell 5 注册码 690313 111999 999313 Xmanager 5 注册码 101210 450789 147200 Xshell4 0
  • linux find 输出文件目录名称到txt文件(yolo图片名称)

    利用find命令得到文件夹内文件名称 find 文件夹路径 name jpg gt txt文件名 输出结果
  • python入门基础

    作者介绍 作者 小刘在C站 每天分享课堂笔记 一起努力 共赴美好人生 夕阳下 在最美的绽放 目录 一 python是什么 二 为什么使用python 1 软件质量 2 提高开发者的效率 3 程序的可移植性 4 标准库的支持 5 组件集成 6
  • Anaconda3如何安装keras

    当下机器学习很火 机器学习编程最流行的就是python语言 yangqiang200608打算自学机器学习 于是与python有了缘 对于初学者来说 配置环境是最让人头痛的事情 一周前参照网上的资料折腾一番 终于安装上了python3 为了
  • 1696:逆波兰表达式——递归(atof)

    描述 逆波兰表达式是一种把运算符前置的算术表达式 例如普通的表达式2 3的逆波兰表示法为 2 3 逆波兰表达式的优点是运算符之间不必有优先级关系 也不必用括号改变运算次序 例如 2 3 4的逆波兰表示法为 2 3 4 本题求解逆波兰表达式的
  • SLAM 轨迹评估工具——EVO安装、使用介绍

    一 概述 evo是一款用于视觉里程计和SLAM问题的轨迹评估工具 核心功能是能够绘制相机的轨迹 或评估轨迹与真值之间的误差 支持多种数据集的轨迹格式 TUM KITTI EuRoC MAV ROS的bag 同时支持这些数据格式之间的相互转换
  • Unsupported character encoding ‘UTF‐8‘

    1 无法识别utf 8 2 在保证链接与mysql链接驱动包都正确时 查看数据库编码 右键编辑数据库即可查看 发现是由于数据库字符集不为utf 8 所以把链接信息的指定utf 8删除即可
  • Android工程师学习路线

    Android工程师学习路线 1 第一行代码 2 Android编程权威指南 3 Android群英传 神兵利器 4 Android开发艺术探索 5 Android项目开发实战 6 Android源码设计模式解析与实战 7 App研发路 相
  • Python 数据分析与数据可视化(一)Python 开发环境搭建与编码规范

    文章目录 1 Python 开发环境搭建与编码规范 1 1 Python 开发环境搭建与使用 1 1 1 Python 语言的特点 1 1 2 Python 开发环境 1 1 3 安装扩展库 1 2 Python 编码规范 1 2 1 缩进
  • Maya模型导入到Unity3d 的秘诀

    看过不少文章谈论这个问题 各种复杂操作 简直想让你 Abandon 到最后还不是再Unity中一个个加材质 解决方案 大家应该都留意到了 Maya自从2016版本开始 有一个功能叫 发送到Unity 发送到UE 第一步 再Maya 中正确打
  • Python修饰符 (一)—— 函数修饰符 “@”

    今天被问到Python函数修饰符 顺手写写 Python函数修饰符 与其说是修饰函数倒不如说是引用 调用它修饰的函数 举个栗子 下面的一段代码 里面两个函数 没有被调用 也会有输出结果 def test f print before f p
  • 分类统计的controller和service

    SpringMVC框架下的 部分代码 Controller控制器 Resource ReviewTitleService reviewTitleService 调用ReviewTitleService 类时 先定义一个对象 Gson gso
  • 构筑无所不在计算的基础 —TRON技术体系结构

    本文转载至 http www zlgmcu com philips ARMStud T Kernel TRON T Kernel pdf 东京大学教授 日本泛在网络计算环境研究所所长 坂村健 日本泛在网络计算环境研究所中国室室长 梁 青 一
  • [MFC]对CString::GetBufferSetLength方法的探究,需要ReleaseBuffer,GetLength才正确!

    在使用CString的GetBufferSetLength方法时 遇到了一个问题 代码如下 CString path GetCurrentDirectory MAX PATH path GetBufferSetLength MAX PATH
  • 矩阵乘法与应用

    矩阵乘法 在数学中 一个矩阵说穿了就是一个二维数组 一个n行m列的矩阵可以乘以一个m行p列的矩阵 得到的结果是一个n行p列的矩阵 其中的第i行第j列位置上的数等于前一个矩阵第i行上的m个数与后一个矩阵第j列上的m个数对应相乘后所有m个乘积的
  • python王者归来 pdf_OpenStack开源云:王者归来 PDF 下载

    资料目录 第1篇 基 础 篇 第1章 OpenStack概述 1 1 云计算简介 1 1 1 什么是云计算 1 1 2 什么是云存储 1 1 3 私有云与公有云 1 2 为什么使用云计算 1 2 1 方案1 简单的服务部署 1 2 2 方案
  • des加密算法c语言源码,des加密算法c语言源代码(11页)-原创力文档

    include int IP 64 58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 4 62 54 46 38 30 22 14 6 64 56 48 40 32 24 16 8 57 49 41 3
  • Android-黑客技术-实现类似电脑版软件破解版

    首先先看看什么叫做Android的黑客技术效果 游戏 修改正版apk代码 实现破解免支付买道具 应用 修改添加自己的信息 和应用市场应用看起来一样 最近趁着清闲 学了段时间的Android逆向技术 发现了新世界 所以现在就算手机app也是可