通过smali注入log和函数调用堆栈

本文介绍了如何通过smali注入技术来添加log并查看Android应用的函数调用堆栈。首先,解释了crack.smali的来源,并提出可以通过编写Java代码、编译成dex再反编译为smali的方式来注入自定义类。接着,展示了将Java代码`new Exception("print trace").printStackTrace();`转换为smali语句的过程,这些语句在插入后,通过`adb logcat *:e`命令可以观察到调用堆栈。
摘要由CSDN通过智能技术生成

    0x00

    smali注入log,看本文前,请大家先看Android安全–加强版Smali Log注入

    有几点要说明:

    1、在上文中,crack.smali,并不是作者直接写的smali文件,而是先写java代码然后编译成dex,再用apktool把dex反编译成smali得到的。我们也可以用这种方法来注入我们自己定义的类。

    2、使用crack.smali时,要先修改寄存器的数量,然后再插入smali语句。


    0x01

    我们在反编译apk时,常常要知道函数的调用堆栈,对应的java代码如下:

    new Exception("print trace").printStackTrace();

    将其转换成smali语法的反汇编代码为

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值