smali相关内容
我对一些 android apk 进行了逆向工程,以添加一些用于功能测试的工具.我想知道给定一个 smali 如下如何添加类似 Log.e(TAG, "一些描述", e); .smali 文件中的每个方法. .class public Ld;.super Landroid/view/View;.source "源文件"# 实例字段.field a:Z.field b:Lcom/rovio/k
..
我下载了 APK 管理器,它可以让我解压 APK 文件. 但它只是解压,不会将 .smali 文件反编译为 .java. 是否可以将 .smali 反编译为 .java? 解决方案 不,APK 管理器反编译 .dex 文件到 .smali和二进制 .xml 到人类可读的 xml. 顺序(基于APK Manager 4.9)是22选择包,然后9反编译.如果您按 1 而不是
..
我知道Java,并且学习过C,但从未使用过.我不知道任何形式的汇编,无论是虚拟机还是真实的汇编. 学习如何破解Smali的最佳方法是什么? 解决方案 更新:正如我昨天承诺的那样,我在列表中添加了更多链接. Ufff.周围没有太多文档!最好的建议?进行反编译,读取和调整,看看它是如何工作的,然后一次又一次地开始循环.但是您没有要求该建议,对吗? ;) 现在,有一些地方会有所
..
.method private a()Landroid/content/Intent; .locals 5 .prologue .line 297 :try_start_0 iget-object v0, p0, Lcom/myapp/c/f;->b:Lcom/myapp/context/ApplicationContext; iget-object v0, v0, Lcom/myapp/co
..
背景:我们有一个代码,我们试图在其中插入一些调试日志.每个方法我们需要两个额外的寄存器来启用这些日志. 到目前为止我们尝试过的是: 1)增加寄存器-由于寄存器> v15破坏了代码,因此无法使用. 2)将v0和v1寄存器值移动到某些高值寄存器,例如v250或其他内容,然后使用v0-v1并将值从vTMP重新分配回v0-v1-没有错误,但应用程序崩溃,出现编译时验证错误. 解决方案
..
问:此smali类是否解密数据?它使用什么加密? 我需要帮助找出此代码用于解密接收到的文件文本的内容吗? 加密的文本会像混乱中的预期那样打印出来,是否有一种方法可以使用我需要帮助理解的信息来手动解密文本? 谢谢 >
..
我想从Android应用程序的apk中提取所有API调用.我已经使用apktool从apk获取smali代码文件.手动可以发现一些API调用,但是我需要一种自动方法.例如,我可以在以下代码行中看到getNetworkInfo调用: invoke-virtual {p0, v0}, Landroid/net/ConnectivityManager;->getNetworkInfo(I)
..
.method public c()Ljava/lang/String; .locals 3 const/4 v1, 0x0 const-string v0, "wifi" invoke-virtual {p0, v0}, Lcom/genwen/looltv/start/Appstart;->getSystemService(Ljava/lang/String;)Ljava/lang/Ob
..
我需要一个额外的寄存器来以smali方法存储字符串.我知道smali代码中的寄存器逻辑(请参见 https://github.com/JesusFreke/smali/wiki/Registers ),但是我仍然想知道如何归档增加的寄存器数. 假设我有一个 .locals n 的方法.现在我想拥有 .locals n + 1 .首先,我想遍历该方法,并向每个v寄存器加1(v0-> v1,v1
..
我正在尝试将else状态的代码复制到if语句中. 在这里,我将if-eqz视为if条件,但不知道else条件在哪里.有人可以帮我找到其他情况,以便我也可以将其复制为if代码. 我还想知道else语句主体的开始和结束在哪里 if-eqz v1, :cond_1 .line 103 :goto_1 return-object v0 .line 82 :cond_0 invoke-sta
..
我有一个使用外语的应用程序,我想完全迁移它,例如在smali文件中,我有以下编程代码: const-string v1, "Hello" 如何从此smali代码添加对string.xml文件的引用? 解决方案 如果您需要在com.xxx.yyy.HomeActivity中进行此操作,并且R.java中的本地化字符串'id为0x7f050000.使用下面的代码替换代码const-
..
我从Google Play下载了一些Android应用程序。我有 Smali 代码通过逆向工程工具 apktool 。我想为这些应用程序生成调用图。我已经看到很多关于堆栈溢出和谷歌的链接,大多数建议的工具要么是 c / c ++ ,要么是 Java ,他们当然需要我没有的源代码。 有没有办法自动生成调用图?谢谢。 解决方案 apkinspector - http://code.goo
..
我需要修改从smali代码到条件的“if语句”为真,在java中可能是这样的: if(a> b){ ..... } 转换为: if(true){ ... } 如果可以在smali代码中执行吗?并且有人知道如何在smali代码中修改这个结构? 非常感谢。 解决方案 在dalvik字节码中,if语句将表示为某种条件跳转。在这种情况
..
序言 我想了解如何使用Smali / Baksmali组装/分解为DEX文件DalvikVM说明。 问题 从这个.java文件 包GD;您好类{ 公共静态无效的主要(字串[] args) { 的System.out.println(“你好!”); } } 我已经生成以下smali汇编文件:的.class LGD /您好; 。超Ljava /郎/对象;
..
我试图破解硬件的关键支撑到现有的应用程序,但感悟到我知道的太少Android应用开发的继续。结果 我可以反编译,并重新编译应用程序,而无需使用APKtool问题,我做了一个小的应用程序自己用的硬件关键支撑拉动编译smali code出来。作为参考,这部分是这样的: 。方法公开的onkeydown(ILandroid /查看/ KeyEvent的;)z 如果我想有应用程序监听硬件钥匙“全
..
我反向工程了一些安卓的apk添加一些仪器进行功能测试。 我想知道给予smali如下如何添加像 Log.e(TAG,“有些descritpion”,E); 在.smali文件中的每个方法。 的.class公共LD; 。超Landroid /视图/视图; .source“的SourceFile” #实例字段 技术领域一个:Z 点域B:LCOM / Rovio公司/ ka3d /应用
..
我反向工程一个Android应用程序与APKTool并获得.Smali文件作为源$ C $ C输出。我转换了.Smali文件与应用程序进行.java文件。我能够成功地编辑.java文件,但现在我想将它们转换回到.Smali这样我就可以重新编译与新.Smali文件的应用程序。当我刚刚离开的.java文件中,有不重新编译,并给出了一些错误。我找不到任何有关在互联网上进行编译的.java到.Smal
..
我知道Java和教训C,但从来没有使用过。我不知道任何形式的组件,无论是对一个虚拟机或一个实际 什么是学习如何破解Smali最好的方法是什么? 解决方案 更新:正如我昨天答应,我增加了一些更多的链接列表 Ufff。没有太多的文档身边!最好的建议?反编译,并阅读,和调整,并看看它是如何做的,一次又一次开始循环。但你没有问他的意见,对不对? ;) 现在,也有一些地方在那里,WIL lhelp
..
我正与baksmali / smali工具。 但有时我需要的.java类纂要.smali文件。所以我先用Eclipse编译和第二拆开.apk文件到一组.smali文件。 是否有可能直接编译的.java到.smali一个单一的工具? 我无法找到一个解决方案,我自己... 解决方案 “的javac”或类似的程序可以用来转换源$ C $ C到的.class。 Android的的“dx”用于
..
我下载 APK管理器,让我解压APK文件。 但它只是解包并不会反编译.smali文件的.java。 是否有可能反编译.smali到的.java? 解决方案 否,APK管理器反编译的 .dex 文件到 .smali 和二进制的.xml 来人类可读的XML。 序列(基于APK管理器4.9)是 22 以选择包,然后 9 以反编译。如果preSS 1而不是9,那么你只会解压缩(用于只有当你想交换
..