安卓逆向 - Frida反调试绕过

news2025/1/18 2:07:21

本文仅供学习交流,只提供关键思路不会给出完整代码,严禁用于非法用途,谢绝转载,若有侵权请联系我删除!

本文案例 app:5Lqs5LicYXBwMTEuMy4y

一、引言:

Frida是非常优秀的一款 Hook框架,人红是非多,市面上很多app都有相应的检测方案。本人在分析某东app时,android端启动frida-server后,打开app直接卡在首页。

尝试hook: 执行 frida -U -l Hook.js -f  com.jingdong.app.mall

报 Process terminated退出

二、常见检测:

1、检测文件名

2、检测端口

3、双进程保护

4、检测D-Bus

5、检测/proc/pid/maps映射文件

6、检测/proc/pid/task/tip/status

7、检测/data/local/tmp目录

三、绕过

针对以上的检测方式,我们可以尝试改文件名,改端口,spawn启动,隐藏frida特征等方式来绕过检测。

1、使用Frida的魔改版本 Hluda来隐藏Frida特征,其介绍:跟随 FRIDA 上游自动修补程序,并为 Android 构建反检测版本的 frida-server。使用方式跟官方Frida没有区别。

github地址:https://github.com/hzzheyang/strongR-frida-android/

2、修改端口

本人使用的是模拟器,官方Frida默认端口是27042,现在我们来修改启动端口,android端使用命令启动hluda:

 ./hlu-server_x8664 -l 0.0.0.0:8080

本地映射端口:

adb forward tcp:8080 tcp:8080

启动 js hook脚本指定端口:

frida -H 127.0.0.1:8080 -f com.jingdong.app.mall -l Hook.js

使用的hook脚本示例:

function hook1() {
    var URL = Java.use('java.net.URL');
    console.log("进入hook1")
    URL.$init.overload('java.lang.String').implementation = function (a) {
        console.log('加密前:' + a)
        showStacks()
        this.$init(a)
    }
}

function showStacks() {
    Java.perform(function () {   console.log(Java.use("android.util.Log").getStackTraceString(Java.use("java.lang.Exception").$new()));
    });
}

 成功打印出堆栈信息,app也是正常启动,说明我们已经成功绕过检测,收工!

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

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

相关文章

iperf 测试网络性能

Iperf 是一个网络性能测试工具。Iperf可以测试最大TCP和UDP带宽性能,具有多种参数和UDP特性,可以根据需要调整,可以报告带宽、延迟抖动和数据包丢失。 官网:iperf.fr https://iperf.fr 支持参数 参数说明-p, --port #Server 端监…

设计模式入门(二)观察者模式

设计模式入门 本系列所有内容参考自《HeadFirst设计模式》。因为书中的代码是采用java语言写的,博主这里用C语言改写。 这里采用讲故事的方式进行讲解。若有错误之处,非常欢迎大家指导。 设计模式:模式不是代码,而针对设计问题的…

A Mathematical Framework for Transformer Circuits—Part (1)

A Mathematical Framework for Transformer Circuits 前言Summary of ResultsREVERSE ENGINEERING RESULTSCONCEPTUAL TAKE-AWAYS Transformer OverviewModel SimplificationsHigh-Level ArchitectureVirtual Weights and the Residual Stream as a Communication ChannelVIRTU…

用树形dp+状压维护树上操作的计数问题:0902T3

发现操作数 k ≤ 6 k\le6 k≤6,可以考虑对操作进行状压。 然后找找性质,发现要么删掉一棵子树,要么进去该子树。可以视为每种操作有两种情况。 然后分讨一下当前该如何转移。 树形dp的顺序: 合并子树考虑当前往上的边的方向 …

自定义类型:结构体、枚举、联合

目录 结构体 结构体的基础知识 结构的声明 特殊的声明 结构体的自引用 结构体变量的定义和初始化 结构体内存对齐 修改默认对齐数 结构体传参 位段 什么是位段 位段的内存分配 位段的跨平台问题 位段的应用 枚举 枚举类型的定义 枚举的优点 联合体(共…

Mysql创建用户并且给指定用户添加某个库的所有权限

注意: 运行以下命令首先运行的用户需要有以下操作权限才可以执行 创建用户 创建用户:命令中的’username’替换为您要创建的用户名,‘host’替换为用户的主机名或IP地址如果都可以访问则配置’%,password’替换为用户的密码 CRE…

WoW GM

当年黑翼被人黑G以后,后来我就自己开团,今天整理电脑还发现截图。。。。

AI绘画:StableDiffusion实操教程-斗罗大陆2-江楠楠-常服(附高清图下载)

前段时间我分享了StableDiffusion的非常完整的教程:“AI绘画:Stable Diffusion 终极宝典:从入门到精通 ” 尽管如此,还有读者反馈说,尽管已经成功安装,但生成的图片与我展示的结果相去甚远。真实感和质感之…

h5页面使用js注入企业微信sdk

let script document.createElement(script); //定义script标签 script.type text/javascript; script.src http://res.wx.qq.com/open/js/jweixin-1.2.0.js; document.getElementsByTagName(body)[0].appendChild(script); //将script标签插入到body下面

ISO/IEC标准组织介绍(三十七)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药. 更多原创,欢迎关注:Android…

[论文笔记]SiameseNet

引言 这是Learning Text Similarity with Siamese Recurrent Networks的论文笔记。 论文标题意思是利用孪生循环神经网络学习文本相似性。 什么是孪生神经网络呢?满足以下两个条件即可: 输入是成对的网络结构和参数共享(即同一个网络)如下图所示: 看到这种图要知道可能代…

C语言:截断+整型提升+算数转换练习

详情关于整型提升、算数转换与截断见文章: 《C语言:整型提升》 《C语言:算数转换》 一、代码一 int main() { char a -1; signed char b -1; unsigned char c -1; printf("%d %d %d", a, b, c); return 0; } 求…

mp代码生成插件

mp代码生成插件 1.下载下面的插件 2.连接测试 3.生成代码的配置 4.生成代码 红色的是刚刚生成的。 我觉得不如官方的那个好用,唯一的好处就是勾选的选项能够看的懂得。

代码随想录第36天|435. 无重叠区间 (需要二刷),763.划分字母区间,56. 合并区间

435. 无重叠区间 (需要二刷) 本题其实和452.用最少数量的箭引爆气球 (opens new window)非常像,弓箭的数量就相当于是非交叉区间的数量,只要把弓箭那道题目代码里射爆气球的判断条件加个等号(认为[0,1][1&a…

公司电脑文件自动加密——「天锐绿盾」

「天锐绿盾」是一种文件自动加密工具,可以与天锐绿盾应用服务器安全接入系统结合使用,实现只有安装了加密客户端的电脑才能访问应用服务器。此外,该工具还可以指定办公人员在对某些类型的文件进行新建、编辑时,自动备份到天锐绿盾…

没有使用sniffer dongle在windows抓包蓝牙方法分享

网上很多文章都是介绍买一个sniffer dongle来抓蓝牙数据,嫌麻烦又费钱,目前找到一个好方法,不需要sniffer就可以抓蓝牙数据过程,现分享如下: (1)在我资源附件找到相关安装包或者查看如下链接 https://learn.microsoft.com/zh-cn/windows-hardware/drivers/bluetooth/testing-bt…

2023开学礼《乡村振兴战略下传统村落文化旅游设计》许少辉八一新书海口经济学院图书馆

2023开学礼《乡村振兴战略下传统村落文化旅游设计》许少辉八一新书海口经济学院图书馆

通过Docker Compose安装MQTT

一、文件和目录说明 1、MQTT安装时的文件和目录 EMQX 安装完成后会创建一些目录用来存放运行文件和配置文件,存储数据以及记录日志。 不同安装方式得到的文件和目录位置有所不同,具体如下: 注意: 压缩包解压安装时,目…

第 3 章 栈和队列(顺序栈,算法 3.3,使用栈解答迷宫问题)

1. 背景说明 若迷宫 maze 中存在从入口 start 到出口 end 的通道,则求得一条存放在栈中(从栈底到栈顶),并返回 TRUE;否则返回 FALSE,注意,该解并非最优解, 最优解需要求得最短路径且可能并非一条。 迷宫…

Auto DevOps介绍

1 Preface/Foreword 随着国际化,信息化,当今是一个VUCA时代。 VUCA:Volatile (易变的),Uncertain (不确定的),Complicated (复杂的)&#xff0c…