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

    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语法的反汇编代码为:

    new-instance v0, Ljava/lang/Exception;

    const-string v1, "print trace"

    invoke-direct {v0,v1}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V

    invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V

   

     插入后,通过logcat就可以观察到堆栈,使用命令adb logcat *:e。

转载于:https://www.cnblogs.com/ljbguanli/p/7305569.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值