首页
社区
课程
招聘
[讨论] 注入代码寄存器v0-v9都用光了,如何注入log.i调试了?
发表于: 2012-6-25 14:37 7811

[讨论] 注入代码寄存器v0-v9都用光了,如何注入log.i调试了?

2012-6-25 14:37
7811
要注入代码时发现寄存器v0-v9都用光了
而且都非const-string定义,有时真得会这样具体的...
如何注入log.i调试了?
如:
const-string v0, "tag"
const-string v1, "debugging"
invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 335
活跃值: (263)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
以前一直都不知道smali或Dalvik有多少个寄存器,直到看到这样篇之后:
http://rednaxelafx.iteye.com/blog/492667
2012-6-25 23:08
0
雪    币: 354
活跃值: (301)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
3
http://blog.csdn.net/winsunxu/article/details/6771905
2012-6-26 10:24
0
雪    币: 2307
活跃值: (1013)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
4
这里我需要澄清一下,Dalvik虚拟机中可用的寄存器范围是v0~v65535,
http://rednaxelafx.iteye.com/blog/492667

这篇文章说可能会用到256个是不太准确的,比如这个情况,我有个switch就有256个分支!!很显然这个时候寄存器是不够用的,实际上Opcode中如move/from16 vAA, vBBBB这条指令,一个B是4位,4个B就是16位,2的16次方是65536!
2012-7-6 17:46
0
雪    币: 118
活跃值: (106)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
5
你说的很对,Claud Xiao的文章中有说明。
2012-7-6 18:04
0
游客
登录 | 注册 方可回帖
返回
//