最新消息:20210917 已从crifan.com换到crifan.org

【整理】安卓安全 Smali

安卓 crifan 547浏览 0评论
[原创]FART:ART环境下基于主动调用的自动化脱壳方案-Android安全-看雪论坛-安全社区|安全招聘|bbs.pediy.com
但jd-guid无法将核心的smali代码转为java代码。
所以只能通过阅读smali来了解脱壳思路,使用dex2smali将dex转换为smali,我们主要看ActivityThread.smali;
smali
Smali 语法解析——Hello World – 掘金
JesusFreke/smali: smali/baksmali
Smali语法介绍_Java_singwhatiwanna-CSDN博客
Android逆向基础:Smali语法 – 简书
Smali 语法解析——Hello World – 掘金
Android smali
dalvik – What is Smali Code Android – Stack Overflow
Dalvik VM, dex and Smali.
Dalvik VM运行的是 字节码 bytecode
对于Android就是dex文件 = binary Dalvik bytecode
Smali:相当于 Android内部的 汇编代码 -》把二进制的bytecode转换成一种 人类可读的 Smali代码
Smali: Assembler for Android’s VM | Medium
Smali: Assembler for Android’s VM
smali/baksmali is an assembler/disassembler for the dex format used by dalvik, Android’s Java VM implementation
[Android][Security] Android 逆向之 smali | wOw的博客 (wossoneri.github.io)
【总结】
  • Smali
    • 背景
      • Android
        • 代码语言:Java
          • Java
            • JVM
      • Android:处于性能考虑:没用JVM,用了自己的虚拟机VM
        • Android虚拟机
          • Android < 5.0:Dalvik
            • 旧:Dalvik VM=DVM
            • 概述
              • Dalvik是google专门为Android操作系统设计的一个虚拟机,经过深度的优化。虽然Android上的程序是使用java来开发的,但是Dalvik和标准的java虚拟机JVM还是两回事
          • Android >= 5.0:ART
            • 新:ART=Android RunTime
      • JVM vs DVM
        • 编译流程对比
        • JVM:
          • 逻辑上:基于栈帧Stack-based
          • 文件格式:java字节码=java bytecode
          • 效率:相对低
        • DVM:
          • 逻辑上:基于寄存器 Register-based
          • 文件格式:(专属的)dex
          • 效率:DVM效率比JVM高
            • 速度更快,占用空间更少
      • dex=Dalvik EXecutable
        • =dex文件=dex字节码
        • dex反汇编后:Smali代码
          • Android(虚拟机中的dex文件)反汇编(后的)代码:Smali
    • 学习Smali用途
      • 分析Apk:静态分析,不够
        • 需要动态分析,涉及Smali
      • 修改Apk逻辑:修改Smali代码,重新编译打包Apk
        • Android逆向基础:掌握Smali
          • 能阅读 smali 代码对进行 android 逆向十分重要
  • smali/baksmali
    • 针对dex
      • smali:assembler=汇编器
        • smali语言=汇编语言
      • baksmali:disassembler=反汇编器

转载请注明:在路上 » 【整理】安卓安全 Smali

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
90 queries in 0.221 seconds, using 23.42MB memory