Android逆向环境搭建

news2025/3/15 20:31:04

逆向工具

手机root

Android逆向必要条件是你需要有个Root的手机,最好是真机。没有root的手机,逆向工作很难继续下去,手机的话,能解锁OEM的都可以。手机Root的话一般有以下几步:

  1. 解锁OEM
  2. 解锁BootLoader
  3. 安装Magisk
  4. 制作root包
  5. 刷入手机

详细的内容可以参考这篇文章。

Android系统的话,不推荐用最新的,因为有的逆向工具没有支持最新版的系统。

反编译工具

反编译工具有很多,老牌的apktool、jeb及一些小众的反编译工具,这里我推荐使用MT文件管理器,真的很好用,可以提取apk、反编译、查看源码、smali转java,打包签名等,功能很多,使用起来也很方便,美中不足的就是需要开通会员,不过终身会员也很便宜。还是那句话,好的工具可以省很多时间。

Hook工具

Hook的工具也有很多,Android的话有分为jvm层的Hook和native层的Hook。这里我只列举一些我常用的Hook工具

  • java层的Hook工具有:算法助手.apk、JSHook.apk,Frida
  • native层的Hook工具有:Frida、Unidbg

这些工具都可以在星球中获取。

WebView工具

我这里说的WebView的工具,指的是可以使应用内的H5可以调试,这样就可以使用inspect来做调试了。

这类的工具有:

  • 算法助手.apk
  • WebViewPP.apk

抓包工具

抓包工具的话,也分两类,一类是手机端,一类是电脑端。

  • 手机端:HttpCanary(android)、Stream(ios)
  • 电脑端:Charles、Fiddler

动态调试工具

先说下什么是动态调试,动态调试就是在程序运行的时候,在代码中下断点,这时可以一步步的调试,看一些变量的值及代码的业务逻辑。

Android逆向常用的动态调试工具有:AndroidStudio和IDA,AS主要是动态调试smali语言,IDA的话是调试so库,汇编语言。

总结

磨刀不误砍柴工,在开始逆向前,先把逆向的环境和工具准备好,在逆向的过程中才会得心应手。本篇主要是介绍逆向用到的工具,一些工具的使用方法会在后面的文章中讲解。

像Smali指令、加壳和脱壳、Xposed框架、Frida、抓包、加密与解密算法等等,这些都是Android逆向安全开发工程师必须掌握的知识点。

至于学习笔记也是有的,我根据上述中所提到的知识点进行整理了,这样大家学习起来也比较方便,大家可以综合起来一起学习。参考方式:https://qr18.cn/CQ5TcL

Android 逆向安全学习笔记

Android 逆向模拟器环境搭建(详解)
Smali指令详解

加壳和脱壳入门

NDK与逆向:https://qr18.cn/CQ5TcL

Xposed框架

Frida-逆向开发的屠龙刀

安卓逆向之常用加密算法:https://qr18.cn/CQ5TcL

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/645757.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Win11的两个实用技巧系列之夜间模式怎么定时、如何卸载重装应用商店?

Win11如何卸载重装应用商店? Win11删除重装Microsoft Store的命令 Win11如何卸载重装应用商店?Win11中的应用商店想要卸了重装,该怎么操作呢?下面我们就来看看Win11删除重装Microsoft Store的命令 Microsoft Store也就是微软的应用商店&…

Redis的主从复制和哨兵机制详解

目录 一、CAP 原理二、Redis主从同步1、主从同步是什么能干嘛?2、Redis是如何实现数据同步的?2.1.增量同步2.2.快照同步2.3.无盘复制2.4.通过Wait 指令保证强一致性 3、搭建Redis 1主2从3.1.安装Redis3.2.创建1主2从配置文件3.3.启动Redis3.4.验证主从同…

算法分析和大O简介

在本文中,我们将讨论如何分析算法以及为什么这样做很重要! 为什么要分析算法? 在我们开始之前,让我们澄清一下什么是算法。在本文中,算法只是解决问题的过程或公式。有些问题非常有名,以至于算法都有名字…

JMeter参数化4种实现方式

目录 前言: 1 参数化释义 2 参数化实现 CSV实例 注意事项 前言: 在使用JMeter进行测试时,参数化允许您模拟不同的用户、不同的数据、不同的操作等,从而增加了测试的灵活性和复用性 1 参数化释义 什么是参数化?…

软件系统开发包括哪些步骤?

在传统的理解中,企业内数字化应用的开发和迭代应该是 IT 部门的工作,但事实并非如此。一方面,激烈的市场竞争和反复出现的疫情给数字化提出了新的要求;另一方面,五花八门的零代码、低代码工具正如雨后春笋一般出现&…

NB-lot和LoRa真正的差别在哪里?

就像要把大象装冰箱一样,物联网,万物互联也是要分步骤的。 一、感知层(信息获取层),即利用各种传感器等设备随时随地获取物体的信息; 二、网络层(信息传输层),通过各种电信网络与互联网的融合,将物体的信息实时准确地…

[AI语音克隆] 5秒内克隆您的声音并生成任意语音内容

前言 随着人工智能技术的不断发展,语音克隆技术也得到了越来越多的关注和研究。目前,AI语音克隆技术已经可以实现让机器模拟出一个人的声音,甚至可以让机器模拟出一个人的语言习惯和表情。 然而,AI语音克隆技术仍然面临着许多难…

BB84协议:量子秘钥分发

文章目录 为什么需要量子密钥分发通讯工具基本通讯 BB84协议为什么这样做能防止通讯被窃听?在传统信道上的窃听在量子信道上的窃听 内容来源: 为什么需要量子密钥分发 BB84协议是一种“密钥分发协议”,所以从功能上来讲,它要实现的目标与之…

618大促 | 解析平台、商家和消费者必须面对的三大风险

目录 618年中大促的三大风险 商家乐此不疲的“刷单炒信” 消费者无计可施的“薅羊毛” 平台恨之入骨的“恶意爬虫” 618三类欺诈风险的特点 618电商平台的业务安全防控之道 618大促再次开启,各平台及商家的促销大战如火如荼。 2023年618,京东推出…

【状态估计】用于非标量系统估计的最优卡尔曼滤波(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

leetcode数据结构题解(Java实现,第一天和第二天)

文章目录 第一天217. 存在重复元素53.最大子数组和 第二天1. 两数之和88. 合并两个有序数组 第一天 217. 存在重复元素 题解思路:首先题目需要的是判断数组中是否存在相同的数字,存在返回true,不存在就返回false。 那么显然可以这样做,先进行…

内网IM即时通讯软件WorkPlus,快速连接工作的沟通利器

在当今信息高度发达的时代,企业内部沟通的重要性不言而喻。随着企业团队的扩大和分布式办公的兴起,即时通讯软件成为了一种必不可少的工具。通过即时通讯软件,团队成员可以实时交流和协作,快速解决问题,加快决策过程。…

Echarts的地图实现拖拽缩放同步功能(解决多层geo缩放、拖动卡顿问题)

项目场景: 大屏项目显示云南省3D的地图,可拖拽缩放、地图打点、点击图标弹框等等功能 问题描述 多图层拖拽时会上下层会分离,延迟卡顿 原因分析: 1、拖拽时不同图层的中心坐标没有保持一致, 2、卡顿是数据更新动画时…

玩业余无线电时,突然听到有人呼救,该怎么办?

不管是在玩业余无线电还是在其他活动当中,突然遇到有人求救,都是一件非常重要的事情,因为救援行动的效率快慢和是否及时,都有可能影响到别人的生命安全。 下面是河南宝蓝小编给出的一些思考和建议,希望对大家会有一些帮…

软件测试-测试用例

目录 测试用例的四个要素 测试用例设计方法 基于需求进行测试用例的设计 等价类 边界值 判定表 正交表 通过allpirs画正交表 场景设计法 错误猜测法 面试题 如何模拟弱网 接口如何测试 zip命令测试 测试用例万能公式 水杯测试用例 微信发朋友圈 测试用例的四个…

Java实现的五子棋游戏 ~java.awtjava.swing

文章目录 Java实现的五子棋游戏1.实现效果2.实现源码2.1运行主函数main.java2.2 棋盘布局Chessboard.java3.Algorithm算法 点击下载链接:Java实现的五子棋游戏源码下载 Java实现的五子棋游戏 作业要求: (1)课题代号: …

老Mac电脑安装macOS Ventura实战

前提说明:此实战适用于老旧Mac电脑(2015年之前的,无法在系统设置中升级macOS Ventura系统的电脑)安装macOS Ventura系统! 软件:OpenCore-Patcher-GUI.app.zip 工具:16G U盘、或者移动硬盘&a…

Spring MVC拦截器Interceptor使用(判断用户登录)

文章目录 一 概念二 3步使用三 HandlerInterceptor接口四 代码实现 一 概念 Spring MVC中的拦截器(Interceptor)类似于Servlet中的过滤器(Filter),它主要用于拦截用户请求并作相应的处理。例如通过拦截器可以进行权限验…

superset链接本地数据库

打开图中 选择database 先解释SQLlite的格式 如下 SQLALCHEMY_DATABASE_URI mysql://username:password127.0.0.1:3306/gmall_report’ 请将 username 和 password 替换为实际的 MySQL 数据库的用户名和密码。 mysql则为如下

我有过密接的9个博士

我有过密接的9个博士 是我人生中留下的印迹和谈资 其中一个是中科大少年班的学神 趣讲大白话:多点谈资 【趣讲信息科技196期】 **************************** 我密接过的哪些博士们: 1、科大少年班刘雪峰博士。1998年,创智公司(当…