1.安卓逆向-说明

news/2024/10/3 23:39:58/文章来源:https://blog.csdn.net/qq_36301061/article/details/142110808

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!

内容参考于:图灵Python学院

正常来爬一个app的数据,在没有加密的情况下,就不需要去逆向,app没有加密也就可以正常爬数据不需要解密,遇到加密的情况下就需要一些逆向的技术去跟它进行对抗,只有对抗成功才能拿到想要的(得到解密的方式),然后有些app有签名有加固,但是不管app怎么处理,它的加密或加固的操作全部都是在前端做的(app里做的),也就是说在app里(或者说是客户端里)肯定能找到它们的一些信息,所以才对逆向来说有迹可循,假设这些东西都在服务器这逆向就没法做了,在服务器的东西需要搞渗透

app逆向的流程

首先对于逆向来说要先去下载app,以安卓为例,app的安装包是.apk后缀,可以去各个网站下载,比如豌豆荚,下图是豌豆荚的官网,豌豆荚就可以下载很多app

比如想下载大麦app,在下图红框就搜索大麦

然后会搜索很多app,然后点查看

点了查看之后,然后一个app它会有很多版本,然后再点下图红框位置可以下载app的历史版本

然后点下图红框

然后会出来很多历史版本,如果有些app强制更新可以逆向找它更新的地方给hook掉

然后为什么要说历史版本这件事呢?如果逆向搞不定,可以去搞它历史的版本,比较低的版本,app会向下兼容,搞不定高版本可以搞低版本,到这就是怎么下载app,下载完之后它是一个.apk文件,这种.apk文件可以直接装到安卓手机里面,前端(客户端)的代码也都在apk文件里面,下图是一个apk文件,它就可以直接放到安卓手机里进行安装

然后如果豌豆荚里没有想要的app咋办?百度搜索 app名字 + app下载,比如淘宝app下载这样的关键字,去搜索,如下图红框是通过搜索的是淘宝app下载 ,会搜出很多下载地址,然后这种的搜索可能下载到有病毒的app,app是可以重新打包的,所以要专门准备一个手机或者模拟器,不要用再用的手机,这样如果下载到病毒直接初始化手机就完了

以上是怎么下载app文件,然后接下来是查看apk有没有壳,如果有壳的话要把壳砸开才能看源码,有砸壳的工具后面会给,砸了壳之后就可以看到源码了,源码一般是用java语言写的,然后假设没有壳的话就可以用jadx-Gui对apk进行反编译,发编译之后就可以看到源代码了

然后假设把源码分析完了,如果有签名加密的东西就给它们hook掉获取到明文,然后就可以写爬虫了,这是app逆向的一个流程

下图是通过jadx反编译apk之后的源码,是java代码

前言:

然后安卓逆向电脑需要16G内存以上,要不然有些apk因为太大在加载的时候会打不开或者内存就满了

然后app反编译之后的源码是java语言,所以后面会写java基础,java基础只写到可以应付逆向位置并不会把java基础写全

java基础搞完会写安卓开发基础,如果不会正向(安卓开发)逆向也没法逆,因为完全不知道app是怎么个写法逆向的时候也就不知道怎么下手

然后安卓基础完了之后再写java爬虫

java爬虫完了之后会是frida hook,使用jadx反编译之后它的数据和走向使用jadx没法关联起来就不好分析,这个时候frida的作用就来了,frida可以把参数(代码)hook掉这样就能看到参数的值是什么了,然后有些app会检测frida所以还会写绕过frida的检测,公司里上班也会用frida这个技术

然后Xposed hook,它是跑在安卓手机里的,它会采用LSPosed框架

整完这些安卓逆向就差不多了

然后设备:

一加 ace2 安卓13,也可以使用模拟器 雷电、雷神都可以模拟器使用安卓9,然后如果买不起一加 ace2,可以在淘宝买个pixel4它是安卓10系统(要找商家确认好安卓10系统),大约500元左右,买的时候记得让商家给root和解锁一下

安卓7往后它就不信任用户证书了,这就需要把抓包证书放到系统下面,手机需要root,然后模拟器它是可以直接开启root权限的,开启完之后就可以直接把证书放到系统下了

然后有个scrcpy软件可以把手机屏幕投到电脑上

以上是安卓逆向的说明


img

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

如若内容造成侵权/违法违规/事实不符,请联系编程新知网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【人工智能学习笔记】4_4 深度学习基础之生成对抗网络

生成对抗网络(Generative Adversarial Network, GAN) 一种深度学习模型,通过判别模型(Discriminative Model)和生成模型(Generative Model)的相互博弈学习,生成接近真实数据的数据分…

4 模拟——54. 螺旋矩阵 ★★

4 模拟 54. 螺旋矩阵 ★★ 给你一个 m 行 n 列的矩阵 matrix ,请按照顺时针螺旋顺序,返回矩阵中的所有元素。 示例1: 输入:matrix [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5] 示例 2: 输入…

HC-SR04超声波传感器详解(STM32)

目录 一、介绍 二、传感器原理 1.原理图 2.引脚描述 3.工作原理介绍 三、程序设计 main.c文件 ultrasonic.h文件 ultrasonic.c文件 四、实验效果 五、资料获取 项目分享 一、介绍 HC-SR04超声波传感器是通过发送和接收超声波,利用时间差和声音传播速度…

自然语言处理系列六十三》神经网络算法》LSTM长短期记忆神经网络算法

注:此文章内容均节选自充电了么创始人,CEO兼CTO陈敬雷老师的新书《自然语言处理原理与实战》(人工智能科学与技术丛书)【陈敬雷编著】【清华大学出版社】 文章目录 自然语言处理系列六十三神经网络算法》LSTM长短期记忆神经网络算…

Kafka原理剖析之「Topic创建」

一、前言 Kafka提供了高性能的读写,而这些读写操作均是操作在Topic上的,Topic的创建就尤为关键,其中涉及分区分配策略、状态流转等,而Topic的新建语句非常简单 bash kafka-topics.sh \ --bootstrap-server localhost:9092 \ // …

Eclipse WEB项目在IDEA中使用

bolg前景 发现很多老邓教学喜欢用eclipse来作为javaweb课程的编译软件,但是我相信有很大一部分人都跟我一样喜欢用IDEA这款编译软件的,同时我发现很多文章都无法确确实实的解决“Eclipse WEB项目在IDEA中使用”这一问题,所以专门写了这篇文章…

安卓玩机工具-----ADB方式的刷机玩机工具“秋之盒”’ 测试各项功能预览

秋之盒 安卓玩机工具-秋之盒是一款ADB刷机工具箱,基于谷歌ADB的一款绿色安装,具备了海量扩展模块,支持ADB刷机救砖、一键激活黑域、adb指令修复等功能,是一款开源、免费、易用的手机刷机工具! 并且是一款开源、免费、易用的图形化…

基于SpringBoot+Vue的房屋租赁管理系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于JavaSpringBootVueMySQL的房屋租赁…

Android相关线程基础

线程基础 进程与线程 进程:可以被看做是程序的实体, 是系统进行资源分配和调度的基本单位. 线程:是操作系统调度的最小单元, 也叫轻量级进程 使用多线程的优点 可以减少程序的响应时间。如果某个操作很耗时, 能够避免陷入长时间的等待, 从而有着更好的交互性. 线程较之进…

基于Spring搭建SpringMvc框架

SpringMvc Spring MVC 是 Spring 框架的一部分,它是一个设计用来构建 web 应用的框架。Spring MVC 实现了 Model-View-Controller(MVC)设计模式,帮助开发者将业务逻辑、用户界面以及输入处理等职责分离,从而提高代码的…

ES6标准---【四】【学习ES6标准看这一篇就够了!!!】

目录 ES6以往文章 rest参数 注意事项 函数的name属性 函数参数的尾逗号 Function.prototype.toString() catch命令的参数省略 尾调用优化 什么是尾调用? 尾调用优化 尾递归 递归函数的改写 方法一: 方法二: ES6以往文章 ES6标…

即插即用篇 | YOLOv8 引入并行的分块注意力 | 北京大学 2024 | 微小目标

本改进已同步到YOLO-Magic框架! 摘要:红外小目标检测是一项重要的计算机视觉任务,涉及在红外图像中识别和定位通常仅包含少量像素的微小目标。然而,由于目标体积小且红外图像背景通常复杂,这一任务面临诸多挑战。本文提出了一种深度学习方法,HCF-Net,通过多个实用模块显…

CNSS Recruit 2024 Web方向 题解WriteUp

文章首发于【先知社区】:https://xz.aliyun.com/t/15586 babyHTTP 开题,Http传参问题 GET: ?CNSShackersPOST: webfunCookie: admintruePHPinfo 开题 根据题目描述,猜测phpinfo.php文件有东西。 phpinfo…

【VUE】pinia持久化存储

前言:状态持久化存储的意义在于它能够确保用户在与应用程序交互时,其操作状态、用户偏好、应用数据等关键信息在页面刷新、浏览器关闭或重新启动后依然得以保留,从而提供连贯、无缝的用户体验,避免因状态丢失导致的不便和重复操作…

Matlab程序练习

Part1 1.求 [100,999] 之间能被 21整除的数的个数。 程序: 主文件:main.m clear; start_num 100; end_num 999; div_num 21; res div(start_num,end_num,div_num); fprintf("[%d,%d]之间能被%d整除的数的个数为%d个\n",start_num,end_…

对抗性EM用于变分深度学习:在低剂量PET和低剂量CT中的半监督图像质量增强应用|文献速递--Transformer架构在医学影像分析中的应用

Title 题目 Adversarial EM for variational deep learning: Application to semi-supervised image quality enhancement in low-dose PET and low-dose CT 对抗性EM用于变分深度学习:在低剂量PET和低剂量CT中的半监督图像质量增强应用 01 文献速递介绍 医学影…

appium历史版本地址链接

appium / Appium.app / Downloads — Bitbucket ios的appium界面图 链接: https://pan.baidu.com/s/1i8BRaZgQA3ImLUhKZjfhiA 提取码: 5c8b

链路追踪可视化利器之火焰图

随着现代化技术的发展,为了能够保证 IT 系统的稳定性、高扩容性,企业往往采用分布式的方式来构建 IT 系统。但也正因为如此,IT 系统中涉及到的服务和组件可能被分布在不同的服务器、数据中心甚至不同的地理位置,这导致应用发生故障…

说一下解除docker限制内存警告

有时候docker要对容器使用的内存做出限制,通常的做法是使用参数 -m 例如: docker run -m 512M表示容器内存最大不能超过512M。 但这样做,在ubuntu会看到以下警告 WARNING: Your kernel does not support swap limit capabilitiesdocker官方…

最受欢迎的10款电脑监控软件大揭秘,员工电脑监控软件真心推荐

随着科技的迅猛发展,越来越多的企业和个人开始关注电脑监控软件的使用。这类软件能够帮助企业管理者更好地了解员工的工作状况,提升工作效率,并确保公司数据安全;个人用户也可以利用这些软件监控电脑活动,保护家人尤其…