1. ida 포트 모니터링 시작
1.1 Android_server 서비스 시작
1.2 포트 전달
1.3 소프트웨어가 디버깅 모드로 들어갑니다
2.
2.1 첨부파일 첨부 프로세스
2.2 세 가지 항목 나누기
2.3 프로세스 선택
2.4 모듈 열기
아트 검색
PS : 지식이 거의 없음
안드로이드 이전의 시스템 기능 4.4 버전은 libdvm.so
안드로이드 5.0 이후 시스템 함수는 libart.so
2.5
libart.so에서 Openmemory() 함수를 검색해서 따라오시면 됩니다.
PS: 지식이 거의 없음
일반적으로 이 함수에서는 시스템 dex가 로드되지만 문제가 발생할 수 있으며 이에 대해서는 나중에 설명하겠습니다.
2.6 다음 중단점
3. 마지막 중단점까지 프로그램을 실행합니다.
3.1 jdb 실행 중인 프로그램을 전달합니다.
3.2 IDA 작업을 확인합니다
중단할 때까지 성공적으로 중단하고 실행합니다.
3.3 dex 위치 확인
등록 창을 열면 R1이 우리 dex
Hex 창에서 R1을 엽니다.
dex 파일의 바이너리 구조를 보면 알 수 있습니다. 이해가 안된다면 이전 dex 파일 분석을 보시면 됩니다.
3.4 키 정보 추출
첫 번째 키 정보: 주소 오프셋: 0xF35CA328
두 번째 키 정보: 파일 오프셋: 70 35 01 00, 0x00013570
16진수 가산기를 사용하세요 게다가, F35DD898
4.dump
4.1 스크립트를 사용하여 dump
static main(void){ auto fp, Begin, end, dexbyte; //파일 열기 또는 생성 fp = fopen("d: \dump.dex", "wb"); //dex 기본 주소 시작 = 0xF34C6320; //dex 기본 주소 + dex 파일 크기 end = 시작 + 0x00013570; for (dexbyte = 시작; dexbyte
4.2 Script dump run
스크립트를 작성한 후 Just run을 클릭합니다.
4.3 성공적인 덤프
위 내용은 Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!