android dump内存办法大全
来源:互联网 发布:淘宝天猫怎么抢红包 编辑:程序博客网 时间:2024/06/05 21:16
1.ida运行脚本
autoi,fp,begin,end;
fp=fopen("D:\\xx.so","wb");
begin=0xAC338000;
end=0xAC393000;
for(i=begin;i<end;i++)
{
fputs(Byte(i),fp);
}
2.gdb dump
dump binary memoryC:\Users\DW\Desktop\baidu_jiagu\so\baidu 0xa8878000 0xA8B9C000
3.dd命令
dd if=/proc/1214/mem of=mmm skip=a8878000 ibs=1 count=324000 这个不行,网上误传
4.修改内核
dalvik/vm/oo/Class.cpp此文件的
initclass在加载cinit类的时候加入下面的代码
我们将so dump
5 自己写工具dump内存
#include<unistd.h>
#include<stdio.h>
#include<stdlib.h>
#include<android/log.h>
#include<elf.h>
#include<fcntl.h>
#include<android/log.h>
//#define LOG_TAG"snow"
//#defineLOGE(...) __android_log_print(ANDROID_LOG_ERROR, LOG_TAG,__VA_ARGS__)
//使用办法
//xx pid beginaddrendaddr
int main(intargc,char *argv[]) {
char filename[256] = {0};
if(4!=argc)
{
printf("please input xx pid beginaddr endaddr\n");
exit(1);
}
printf("argv[2]=%s-->argv[3]=%s-\n",argv[2],argv[3]);
long long beginaddr = strtoll(argv[2],NULL,16);
long long endaddr=strtoll(argv[3],NULL,16);
long long length=endaddr-beginaddr;
//printf("-fuck-length=%x---\n",length);
//printf("beginaddr=%x,endaddr=%x-\n",beginaddr,endaddr);
sprintf(filename,"/proc/%s/mem",argv[1]);
printf("will open filepath=%s\n",filename);
FILE* fpsrc=fopen(filename,"r");
FILE* fpdest=fopen("dumpMemory","wb");
if(NULL==fpsrc||NULL==fpdest)
{
printf("open file error!!!\n");
exit(1);
}
int c;
fseek(fpsrc,beginaddr,SEEK_SET)
while((c=fgetc(fpsrc))!=EOF&&length-->0)
{
fputc(c, fpdest);
}
fclose(fpsrc);
fclose(fpdest);
return 0;
}
LOCAL_PATH :=$(call my-dir)
include $(CLEAR_VARS)
LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
#LOCAL_ARM_MODE := arm
LOCAL_MODULE := dump
LOCAL_SRC_FILES := dump.c
include $(BUILD_EXECUTABLE)
注意以上五种办法,目前的加壳都有反调试模块,会对mem文件进行检测,比如360会检测/proc/pid/mem文件,和监控maps文件故此上面读mem文件会导致闪退,,总的来说第四种办法最管用!!!!!
- android dump内存办法大全
- Android 反调试反内存dump总结
- Android内存优化大全
- Android内存优化大全
- Android内存优化大全
- Android内存优化大全
- Android内存优化大全
- Android内存优化大全
- android释放内存的一个办法
- Android解决内存溢出的办法
- android释放内存的一个办法
- Android WebView 内存不回收处理办法
- android 获取系统可用内存的办法
- dump 命令大全
- Android动态调试so之dump内存数据
- Android内存优化大全(中)
- Android内存优化大全(全)
- Android内存优化大全(全)
- 【数据库SQL】数据库修复,DBCC(常规正常修复)
- 软键盘的应用
- 2016看雪等安全网站android安全最新经典文章第一期总结
- 广药白云山素葆膳食 创业新机遇
- 单机安装greenplum记录
- android dump内存办法大全
- 修改android源码过百度加固jdb失败
- 242. Valid Anagram
- 2016年上学期程序设计实训报告1
- 此博客说明
- ckeditor 工具栏配置
- vs2013输出string类问题
- oracle创建表,字段有特殊关键字的处理
- Jetty java.lang.IllegalStateException: Committed