zoukankan      html  css  js  c++  java
  • IDA Pro 简单dump文件

    安装IDA调试服务: adb push android_server /data/local/tmp

    运行IDA调试服务:adb shell & cd /data/local/tmp & ./android_server   (确保 adb是root权限下运行调试服务)

    设置端口转发: adb forward tcp:23846 tcp:23946

    运行程序:  adb shell am start -D -n com.ali.tg.testapp/com.ali.tg.testapp.MainActivity

    IDA设置:

    IDA附加进程:Debugger->Attach->Remote ARMLinux/Android debugger 

             Ctrl + F -> ali  选择进程附加

          在模块视图中搜索 libdvm.so 

          在libdvm.so中搜索 dvmDexFileOpenParth

          双击函数调转到位置下断点

    运行jdi调试服务:jdb -connect com.sun.jdi.SocketAttach:hostname=localhost,port=8700

    在IDA中使之运行到断点处,查看寄存器的值,R0对应着dex的内存地址,R1对应着dex文件大小

    运行脚本dump文件:

      static main(void)
        {
            auto fp, begin, end, dexbyte;
            fp = fopen("d:\dump.dex", "wb"); //打开或创建一个文件
            begin =  R0;              //dex基址
            end = begin + R1;            //dex基址 + dex文件大小
            for ( dexbyte = begin; dexbyte < end;dexbyte ++ )
            {
                fputc(Byte(dexbyte), fp);     //按字节将其dump到本地文件中
            }
        }
  • 相关阅读:
    GOOGLE's Olympics Symbols
    写在九月的第一篇
    有点沉重的topic:出国,考研,工作?
    放弃的选择
    面临选择
    中秋节快乐!
    我该做一些改变
    使用Docker搭建一个WordPress博客
    三层架构小示例
    SQL联合查询
  • 原文地址:https://www.cnblogs.com/NigelX/p/6586123.html
Copyright © 2011-2022 走看看