App之Hook反调试解决办法

1、Hook报错(反调试)

Ⅰ:可能反调试是由于so文件引起(真机):

import frida
import sys

rdev = frida.get_remote_device()
pid = rdev.spawn(["包名"])
session = rdev.attach(pid)

scr = """
Java.perform(function () {
    
    var dlopen = Module.findExportByName(null, "dlopen");
    var android_dlopen_ext = Module.findExportByName(null, "android_dlopen_ext");
    
    Interceptor.attach(dlopen, {
        onEnter: function (args) {
            var path_ptr = args[0];
            var path = ptr(path_ptr).readCString();
            console.log("[dlopen:]", path);
        },
        onLeave: function (retval) {
    
        }
    });
    
    Interceptor.attach(android_dlopen_ext, {
        onEnter: function (args) {
            var path_ptr = args[0];
            var path = ptr(path_ptr).readCString();
            console.log("[dlopen_ext:]", path);
        },
        onLeave: function (retval) {
    
        }
    });
    

});
"""
script = session.create_script(scr)


def on_message(message, data):
    print(message, data)


script.on("message", on_message)
script.load()
rdev.resume(pid)
sys.stdin.read()

删除 libmsaoaidsec.so 文件

在这里插入图片描述

2、监测到之后就会直接闪退

尝试使用strongR-frida-android来绕过监测。

https://github.com/hzzheyang/strongR-frida-android/releases

3、app脱壳

安装模块

pip install frida-dexdump

想要使用frida-dexdump来进行脱壳,必须做如下两个步骤:

  • 手机端,启动frida-server

  • 电脑端

    • 端口转发

    • 执行脱壳命令

frida-dexdump  -U -f 包名称

脱壳后,会生成相应的dex文件

4、ptrace占坑

标志:

unable to access process with pid 17124 due to system restrictions; 
try `sudo sysctl kernel.yama.ptrace_scope=0`, or run Frida as root
  • 方法1:速度快点让frida先附加。
frida -U -f cmt.chinaway.com.lite -l hook.js
  • 方法2:修改ASOP源码,让它自己附加自己失败,编译并刷入自己手机。
### 回答1: Android Hook是一种技术,可以通过修改或替换第三方应用程序的代码,来实现对其行为的控制和监控。这种技术可以用于安全测试、应用程序性能优化、反编译等方面。但是,使用Android Hook技术需要谨慎,因为它可能会违反应用程序的使用协议或法律法规。 ### 回答2: Android Hook 是一种技术,用于修改和扩展第三方应用程序的功能和行为。通过 Hook,我们可以在不修改应用程序源代码的情况下,注入自己的代码进行改变。 通过Hook,可以实现以下功能: 1. 动态修改应用程序行为:通过在目标应用程序的关键方法中插入自己的代码,我们可以改变应用程序的行为,如修改某个变量的值、替换某个方法的实现等。 2. 拦截和修改应用程序的数据:通过Hook,我们可以截获应用程序发送和接收的数据包,实现数据的篡改、替换等操作。这对于进行数据分析和调试非常有用。 3. 绕过应用程序的限制:有些应用程序会对某些功能进行限制,通过Hook,我们可以绕过这些限制,获得更多的操作权限。 4. 添加额外的功能:比如,可以通过Hook在应用程序中添加广告拦截的功能、自动点击的功能等。 实现Hook的方式多种多样,常见的有Xposed框架和Frida工具。Xposed框架通过修改系统的ClassLoader,实现对应用程序代码的动态替换和修改。Frida则通过动态插入JavaScript代码,实现对应用程序的动态分析和修改。 需要注意的是,对第三方应用进行Hook可能会触及到法律和道德的底线,如隐私侵犯、数据篡改等。因此,在进行Hook操作时,我们要遵守相关法律法规,并且尊重其他人的权益和隐私。另外,由于Hook操作需要对应用程序的运行时进行修改,如果不小心操作不当,可能会导致应用程序崩溃或无法正常运行,因此需要谨慎使用。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值