smali加入日志】的更多相关文章

const-string v0, "aaatag"const-string v1, "msg"invoke-static {v0,v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I 如果寄存器不够需要扩大寄存器,smali开头local对应的数,寄存器最大有限,超过会报错.…
一.smali目录下新建crack.smali,内容如下: .class public Lcrack; .super Ljava/lang/Object; .source "crack.java" .method public static log1(Ljava/lang/String;)V #打印出info 1字符串 .locals 1 .prologue const-string v0, "crack_log_str" invoke-static {v0, p0…
打造smali代码库辅助分析 在分析Android应用程序的时候,我们往往会插入代码重打包apk来辅助我们分析的工作 一个比较取巧的方法就是先用java写好代码以及相关的调用之后, 然后直接扣出代码 然后可以制作成各种代码模版,放在Android Killer中使用(代码模版管理器) Android Killer 自带3种代码模版 1. LoadLibrary const-string v0, "so name" invoke-static {v0}, Ljava/lang/Syste…
转自 : http://blog.sina.com.cn/s/blog_5674d18801019i89.html 应用场景 Smali代码注入只能应对函数级别的移植,对于类级别的移植是无能为力的.具体的说,如果你想修改一个类的继承.包含关系,接口结构等是非常困难的.但对于修改类成员变量访问控制权限,类方法实现,Smali代码注入的方法是可以实现的.这主要是因为Samli级代码的灵活性已经远低于java源代码,而且经过编译优化后,更注重程序的执行效率.   Smali代码注入 本质上讲,Smal…
Kali 2.0昨天已经在BlackHat 2015 USA上正式发布了.无论是粉丝们还是Kali官方都对这个2.0版本抱有极大的期待和热情.这是第一个基于Debian Jessie的Kali版本,此次升级最大的特点就是系统界面的设计理念更加先进,以及系统的升级方式变为滚动升级. 官方的Kali2.0介绍 1.将会保持滚动升级. 这是Kali 2.0最重要的更新,滚动升级的方式将会保证Debian的稳定性,同时保证Kali自身是个强有力的工具. 2.不断更新工具,工作流程将会极大增强. 3.Ka…
从来没有想过反编译apk是来的如此方便,并且还可以修改后重新编译运行,这比在win下修改pe容易多了,感谢apktool和smali工具的作者提供这么好的工具. 跟踪apk一般的做法是在反编译的smali代码中插入log输出,然后重新编译运行看输出日志,这种方法费时费力,如果能够实时调试是最好的了.搜了一下,目前比较好的方法是使用NetBeans+DDMS.我尝试过可以调试,但不大认识NetBeans的操作,eclipse估计很多人都会吧,其实设置跟NetBeans大同小异. 调试步骤: 1.对…
当smali修改代码出错举例1,log如下: 虚拟机层次: 1.本身做出了预测,寄存器v2是符合要求入参,暗示你这个也许是你想要的.VFY: register1 v2 type 17, wanted ref 2.下一句:报参数1不对,应该是String类型. VFY: bad arg 1 (into Ljava/lang/String;) 3.第三行,拒绝调用初始化.VFY:  rejecting call to Ljava/lang/StringBuilder;.<init> (Ljava/…
.NetCore中的日志(2)集成第三方日志工具 0x00 在.NetCore的Logging组件中集成NLog 上一篇讨论了.NetCore中日志框架的结构,这一篇讨论一下.NetCore的Logging组件中第三方日志工具的集成.只要按照Logging组件中相关接口的要求提供相应的实现(ILogger.ILoggerProvider),然后把实现的ILoggerProvider加入到LoggerFactory就可以使用了,非常方便.这里以NLog为例进行实践.关于NLog的详细教程可以参考h…
.NetCore中的日志(1)日志组件解析 0x00 问题的产生 日志记录功能在开发中很常用,可以记录程序运行的细节,也可以记录用户的行为.在之前开发时我一般都是用自己写的小工具来记录日志,输出目标包含控制台.文本文件.数据库,一般都是创建全局的Logger,在需要记录日志的地方调用相应的Logger输出至相应目标.遇到输出目标多了有时候也感觉挺麻烦的,不过也还能接受.开始学习.NetCore后接触到了日志记录框架(Logging组件),虽然完全可以用之前的方式记录日志,不过应该使用更通用的方式…
文/赵杰 2015.11.04 1. 前言 服务端日志你有多重视? 我们没有日志 有日志,但基本不去控制需要输出的内容 经常微调日志,只输出我们想看和有用的 经常监控日志,一方面帮助日志微调,一方面及早发现程序的问题 只做到第1点的,你可以洗洗去睡了.很多公司都有做到第2点和第3点,这些公司的服务端程序基本已经跑了很长时间了,已比较稳定,确实无需花太多时间去关注.如果一个新产品,在上线初期,我觉得就有必要做到第4点. 日志怎么看? 都说了,我们没有日志 线上日志逐个tail+grep 编写脚本,…