首页
学习
活动
专区
圈层
工具
发布

【APP 逆向百例】Frida 初体验,root 检测与加密字符串定位

与调试框架,首先电脑端使用命令 pip install frida-tools 安装 frida 模块(此命令默认会安装最新版的 frida 和 frida-tools,如),然后下载 frida-server...,下载地址:https://github.com/frida/frida/releases frida-server 要根据你电脑端安装的 frida 版本和手机的 CPU 架构来选择对应的,使用命令...某些 Android 低版本使用高版本 frida 可能有问题,遇到问题可尝试降低 frida 版本来解决。...的提示,如下图所示: 图片 使用 JEB、JADX、GDA 等工具反编译 apk,直接搜索关键字 Root detected!...图片 frida 命令 不使用 Python,也可以直接使用 frida 命令来实现,和前面 Python 一样也有两种模式,同样的一个是 APP 名一个是包名: frida -U Uncrackable1

2.2K20

Android逆向分析从入门到深入

https://www.pnfsoftware.com/ 1.3 实例 这里以一个实例说明下反反编译和反反反编译: 使用早期ApkTool反编译apk时,可能会遇到反编译失败, 出现如下问题: Exception...Frida是一个DBI工具, 使用其进行动态分析时, 被分析进程的TracerPid仍为0....下图是Frida原理, 其最初建立连接时通过ptrace向相关进程注入代码, 其后使用其特有的通道来通信, 如下图. Frida-Gadget支持Android下非root和iOS下非越狱的逆向....而且Frida支持脚本, 这样可以更方便的复现结果. 比如Frida的这个Android示例. 将下面的代码放到一个py脚本中, 随时运行都可以获得结果. 不像IDA还需要恢复现场....比较长,hash后比较) 运行时校验保护(校验classes.dex的md5) 反反重编译: 查关键函数, 注释掉或nop掉 如果到这一步, 光靠本地的检测基本无效, 可以考虑在http请求时加入对apk

4.8K96
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android逆向分析概述

    https://www.pnfsoftware.com/ 1.3 实例 这里以一个实例说明下反反编译和反反反编译: 使用早期ApkTool反编译apk时,可能会遇到反编译失败, 出现如下问题: Exception...Frida是一个DBI工具, 使用其进行动态分析时, 被分析进程的TracerPid仍为0....下图是Frida原理, 其最初建立连接时通过ptrace向相关进程注入代码, 其后使用其特有的通道来通信, 如下图....而且Frida支持脚本, 这样可以更方便的复现结果. 比如Frida的这个Android示例. 将下面的代码放到一个py脚本中, 随时运行都可以获得结果. 不像IDA还需要恢复现场. ?...比较长,hash后比较) 运行时校验保护(校验classes.dex的md5) 反反重编译: 查关键函数, 注释掉或nop掉 如果到这一步, 光靠本地的检测基本无效, 可以考虑在http请求时加入对apk

    1.7K31

    134_ 移动恶意软件分析技术指南:从样本捕获到行为分析的完整流程

    公开可用的已知样本 中 2.2 合法与道德考量 获取和分析恶意软件样本时必须遵守法律和道德规范: 法律与道德准则: 1..../ -type f -mtime -1" 4.4 进程和系统调用监控 监控恶意软件的进程活动和系统调用: # 使用frida跟踪应用的系统调用 frida -U -f com.malware.package...: // Frida脚本:绕过Root检测 Java.perform(function() { // 绕过常见的Root检测API var file = Java.use("java.io.File...分析恶意软件的代码混淆和保护机制: 常见的代码混淆技术: ├── 类名/方法名混淆 (使用无意义的短名称) ├── 字符串加密 (运行时解密敏感字符串) ├── 控制流混淆 (插入无意义的控制结构)...互动环节:您在进行移动恶意软件分析时遇到过哪些棘手的样本?有什么独特的分析方法?欢迎在评论区分享您的经验!

    19110

    137_移动应用逆向工程实战指南:从APKIPA文件分析到代码还原的完整流程

    其主要目标包括: 理解应用的内部工作原理和实现机制 分析应用的安全防护措施和可能的漏洞 研究应用的通信协议和数据处理流程 提取和学习优秀的开发技术和架构设计 1.2 移动应用逆向工程的道德与法律边界 进行移动应用逆向工程时...,必须严格遵守道德和法律规范: 仅对您拥有合法权限的应用进行逆向分析 遵守软件许可协议和知识产权法律 不得利用逆向获得的信息进行恶意活动 在团队或企业内部进行逆向分析时,确保获得适当授权 1.3 移动应用逆向工程的挑战...使用apktool反编译获取资源和Smali代码 apktool d app.apk -o apktool_output 2.3 Smali代码分析与修改 分析和修改Android应用的Smali代码:...绕过应用的反调试和反逆向保护措施: // Android反调试保护绕过示例 Java.perform(function() { // 1....本专题内容基于行业最佳实践和公开资料,旨在帮助安全专业人员和开发者深入理解移动应用的内部机制,提升应用的安全性。 互动环节:在进行移动应用逆向工程过程中,您遇到过哪些有趣的挑战或发现?

    37800

    TL安卓逆向第三期

    :Java与Native层联动调试三纵深度:基础Hook:方法替换、参数修改、返回值篡改高级Hook:多线程Hook、内存补丁、动态下发脚本反反Hook:检测Hook框架、隐藏Hook行为2....核心突破点Frida高级玩法:使用Interceptor.attach实现函数级监控通过Java.perform跨进程Hook结合Memory.scan实现内存搜索与修改Native层攻坚:解析ELF文件结构...破解方法论采用“五步攻坚法”:环境搭建:配置模拟器(如MuMu、夜神)与调试工具链脱壳准备:使用Frida-dexdump动态提取Dex文件静态分析:通过JADX反编译Java代码,定位关键逻辑动态调试...build.prop文件模拟真实设备案例2:某游戏外挂开发防护机制:内存数据加密、定时校验破解方案:使用Frida脚本动态解密内存数据Hook关键计算函数实现自动操作通过ptrace注入防止进程被杀四、...工具链创新自主研发三大辅助工具:TL-Hooker:可视化Hook脚本生成器TL-DexDumper:动态Dex提取增强版TL-SignTool:一键式APK重打包工具3.

    19410

    【愚公系列】2023年04月 攻防世界-MOBILE(ill-intentions)

    ---- 前言 下面介绍两个反编译工具 jadx是一个用于反编译Android APK文件的开源工具,静态反编译,查找索引功能强大 jeb和IDA很像,属于动态调试,可以看java汇编也可以生成伪代码...,还可以动态attach到目标调试 对于so文件的逆向工具选择 IDA逆向工具是一款反汇编器,被广泛应用于软件逆向工程领域,能够反汇编各种不同平台的二进制程序代码,并还原成可读的汇编代码。...安装命令 pip3 install objection frida是一款便携的、自由的、支持全平台的hook框架,可以通过编写JavaScript、Python代码来和frida_server端进行交互..., 1).show(); } } } 广播接收就跳转到各个activity,直接使用objecttion来实现直接跳到对应的activity 三个类逻辑差不多相同,只是调用的native...//tt.js //出自https://blog.csdn.net/Palmer9/article/details/122464683 //别问脚本什么意思,frida脚本还不太会写 function

    39820

    实用FRIDA进阶:脱壳、自动化、高频问题

    命令时多台设备的id都会出现,最终可以使用frida.get_device(id)的API来选择设备,如下图所示。...,将接受到的JSON数据解析,提取出其中的密码部分保持不变,然后将用户名替换成admin,这样就实现了将admin和password发送给服务器的结果。...在一些(网络)接口的模糊测试的场景中,一些字典和畸形数据的构造也会在电脑上完成,app端最多作为执行端接受和发送这些数据,这时候也需要使用到Frida互联互通动态修改的功能。...3 Frida更多技巧 最后收集和整理一下大家在学习Frida的过程中可能会遇到的几个高频问题,以餮读者。...3.1 必须上版本管理 Frida从面世到现在已经有四五年了,大概17~18年那会儿开始火爆起来,大量的脚本和工具代码都是那段时间写出来的,而Frida又升级特别快,新的Frida对老的脚本兼容性不是很好

    5.1K00

    Frida Internal - Part 1: 架构、Gum 与 V8

    - Part 3: frida-java-bridge 与 ART hook 项目总览 在 frida 的主仓库中,我们一般是直接在其 release 页面下载 CI 的成品使用,其中可以看到有许多可供下载的组件...gum-js; 运行时进程注入、脚本加载、RPC 通信管理等功能: frida-core; 针对特殊运行环境的 js 模块及其接口,如 frida-java-bridge、frida-objc-bridge...后续针对 frida-core 和 frida-java-bridge 都会有单独的文章进行分析。...大多数人一开始接触 frida 应该也和笔者一样很奇怪为什么 frida 使用 JavaScript 作为编写 hook 的语言,为什么还特地集成了一个 JS 脚本引擎,具体是如何实现的,…… 其实这个问题可以简化成...早期 gum-js 默认使用 Duktape 作为脚本引擎进行集成,后来也增加了对 QuickJS 和 V8 的支持,实际上 frida 对于不同的脚本引擎也做了一层封装,可以对不同引擎的接口实现透明的切换

    2K21

    多种姿势花样使用Frida注入

    在实战中使用Frida会遇到各种各样的问题来对你进行限制,因此在这里总结和对比一下自己在实战中使用过的一些frida的注入方式。...127.0.0.1:12345连接 遇到无法attach目标进程时尝试使用-f参数spawn一个进程 优点: 简单 可应对大部分app 缺点: 需要root 容易被检测 适用场景:   适用大部分场景...中的so文件 适用场景: 当遇到一个app有root检测和签名校验而无法轻松绕过时,可以尝试这种方式,前提是app没有检测bl锁,如果检测了bl锁且无法绕过,还是直接放弃这个方案吧。...总结   在实战中可以根据app自身的保护情况来选择合适的方式来注入,前提是app没有针对frida。以上情况并不一定都能百分之百成功,不同app可能会有自己独特的保护方式。...当没有读取到配置文件时,frida-gadget会使用默认配置。

    5.9K30

    【愚公系列】2023年05月 攻防世界-MOBILE(Ph0en1x-100)

    前言 下面介绍两个反编译工具 jadx是一个用于反编译Android APK文件的开源工具,静态反编译,查找索引功能强大 jeb和IDA很像,属于动态调试,可以看java汇编也可以生成伪代码,还可以动态...attach到目标调试 对于so文件的逆向工具选择 IDA逆向工具是一款反汇编器,被广泛应用于软件逆向工程领域,能够反汇编各种不同平台的二进制程序代码,并还原成可读的汇编代码。...安装命令 pip3 install objection frida是一款便携的、自由的、支持全平台的hook框架,可以通过编写JavaScript、Python代码来和frida_server端进行交互...frida的安装可以参考:https://www.jianshu.com/p/60cfd3f6afde 一、Ph0en1x-100 1.题目 2.答题 2.1 jadx反编译apk文件 import...-jar apktool.jar b f6adc401d0eb472892a4ac4481f76a85 的文件夹里会出现一个 dist 文件夹,里面就是重新生成的 APK,但是此时的 APK 是不可以使用的

    55620

    140_卫星通信与导航系统安全分析与防护实战指南

    target_position, satellite_info) print(f"生成了 {len(spoofed_signals)} 个欺骗信号") 2.3 移动终端定位服务漏洞 移动终端在使用卫星导航系统时存在的安全漏洞...寻找信号处理漏洞 echo "检查信号验证机制的缺陷" 3.2 移动应用漏洞挖掘 挖掘使用位置服务的移动应用中的安全漏洞: // 使用Frida分析位置服务API调用 Java.perform(function...}") # Frida脚本 hook_script = """ Java.perform(function() { console.log('[*] 开始位置欺骗测试...() process = device.attach(package_name) # 注入脚本 script = process.create_script...本专题内容基于行业最佳实践和公开资料,旨在帮助安全专业人员和研究人员提升卫星导航系统安全分析能力。 互动环节:在进行卫星导航系统安全分析过程中,您遇到过哪些有趣的挑战?

    21110

    Frida - App逆向 JavaScript代码注入 基本语法以及数据类型介绍

    可以通过将JavaScript 脚本插入到APP的内存中来对APP的逻辑进行跟踪和监视乃至修改原程序的逻辑,实现逆向开发和分析人员想要实现的功能称之为HOOK(钩子 即通过钩子机制与钩子函数建立联系);...---- 提示:以下是本篇文章正文内容,下面案例可供参考 一、逆向步骤 逆向流程: 拿到App应用的apk; 使用ApkScan-PKID或其他工具进行查壳, 有壳需要先进行脱壳,拿到dex文件进行反编译...; 使用Jadx-Gui或其他工具进行反编译,分析源码; 根据App的抓包情况拿到加密的关键词参数在Jadx-Gui内进行搜索定位; 分析反编译的Apk源码进行Hook代码的编写(使用JavaScript...().attach(3179) # 'App名称', 或 App应用的 Process Pid script = process.create_script(java_code) # 把js的hook...核心补充 java.perform(function(){}) 是 frida的main,所有的脚本必须放在这个里面; Java.use(“com.cmstop.cloud.b.b”); // 定位至类文件处

    5K10

    一些APP渗透测试时的小tips

    ("adb forward tcp:27043 tcp:27043") 使用spawn方案 但是这时会发现只要运行hook脚本,APP就闪退了,这是因为做了frida反调试,那我们此时就要绕过frida...我们在尝试删除操作时,要测试app是否能正常使用,如果能正常使用,说明这个so跟业务无关,如果app不能使用了,说明这个so跟业务有关,我们不能删除。...通过hook安卓底层,依次打印运行app时加载的so文件,一个个打印出so文件,当打印到某个so文件时,如果app退出了,这个so文件,就是在检测frida是否运行 import frida import...,会发现加载到/lib/arm64/libmsaoaidsec.so时程序崩了,删除该文件即可 方案二 在面对检测frida的APP的时候,我们可以使用frida的增强版(strongR-frida-android...APP做了代理的检测 这时我们需要绕过代理的检测,抓更底层的包,不抓https的包,抓socket的包,需要使用APP进行,这里我们使用SocksDroid.apk,使用之前关闭手机系统代理 打开开关

    1.2K10

    android 壳特征

    保护核心代码,防止被逆向,泄密 防止逆向分析-防止核心代码被反编译 防止营销作弊 防止代码被修改 控制被二次打包-校验完整性,签名,防止盗版 防止调试和注入-防止动态调试,注入获取关键数据 防止应用数据窃取...脱壳题目实战 链接: https://pan.baidu.com/s/1CELe8HRpGVmjg3NcuXpQGw 密码: 51o7 第一题 java_crackme.apk java_crackme.apk...首先安装apkadb install java_crackme.apk 随便输入个值发现显示sorry,try again?...再用jadx打开 发现使用了加固找不到入口类 尝试脱壳使用葫芦娃大佬的FRIDA-DEXDump 手机运行frida frida adb shell su cd /data/local/tmp ....hostname 127.0.0.1 port 23946 在选择Debugger-Attach tp process选择要调试的应用 .

    1.5K31

    翻译——N种脱壳安卓恶意软件的方式

    因此,应该尽快安装frida以赶上解包过程。幸运的是,frida中的-f选项使frida能够生成目标应用程序本身。frida接受带有-l参数的脚本。...静态 手动干(作者应该是写脚本的意思吧) 动态的拦截是最简单的办法 通过挂钩:Java级别 当我第一次遇到Anubis并意识到它正在删除文件时,我的第一个解决方案是挂钩到file.delete...截获后,我们就可以知道文件路径,获取到那个jar了 除此之外,我们还可以使用python调用frida使工作自动化,并浏览目标文件所在的文件夹。这些c&c服务器通常会生成数千个apk。...让我们从安装和运行APK开始。然后启动GameGuardian,然后从左上方的按钮中选择应用程序名称。选择最右边的按钮及其下面的按钮。现在,您可以在菜单中看到转储内存选项。...这是我的脚本的输出,用于从Anubis示例中获取c2和密钥。

    58010

    Arcaea的逆向分析

    3.6.2版本   3.6.2版本在安全等级三,SSL部分使用的是OpenSSL,也就是说客户端会在apk里自己带一个证书然后自己验证自己的证书,完全无视其他证书,旧版本的办法是完全失效了,还是得深入进去看它的校验逻辑...于是我使用Frida修改这个返回值 //sub_6133B4 Interceptor.attach(Module.findBaseAddress("libcocos2dcpp.so").add(0x6133B4...前提是SO文件的架构要对,否则脚本将失效。...平时分析Java层代码在遇到这种情况的话,首先会使用dumpsys activity top | grep ACTIVITY命令先康康要分析的目标activity的类名,然后使用Objection来hook...具体如何剔除就是自己写个简单的脚本操作一下就行了,考虑到以后应该也会用到最好还是认真写个轮子,以便复用。这边我写的太烂了,用java写的,怕丢人就不贴代码了。

    3.2K20
    领券