摘要: android在应用层实现按键钩子的方案为:获取android sdk提供的com_example_android_softkeyboard例子程序,然后,修改OnPress()函数就可以实现了。如果把这个恶意的软键盘发布出去,人家安装了之后,我们还是可以截获到按键信息的。public void onPress(int primaryCode) { int iKeyboardResId; int iCode; String sLabel; String name ; LatinKeyboard CurrentKeyboard; StringBuilder sb = new... 阅读全文
posted @ 2011-09-05 16:21 ctou45 阅读(1364) 评论(0) 推荐(0) 编辑
摘要: android的.registers定义了方法中总共使用了几个寄存器;.locals定义了方法中有几个非参数寄存器;如果一个方法有5个寄存器,即.registers==5,v0-v4,而且该方法有两个参数,那么这两个参数将使用最后的两个寄存器,即v3和v4。对于非static方法,那么第一个寄存器肯定是this,比如方法LMyObject;->callMe(II)V有两个整形参数,那么它就会用三个寄存器。为了动态调试android代码,有时候需要动态的注入代码,但是,代码注入时候,有几次发现会崩溃,后来,经过研究,发现是寄存器用错。一个方法可能本身就用了5个寄存器,v0-v4,而你用v5 阅读全文
posted @ 2011-09-05 16:18 ctou45 阅读(1529) 评论(1) 推荐(0) 编辑