1. ida 포트 모니터링 시작
1.1 Android_server 서비스 시작
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677324659.jpg)
1.2 포트 전달
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677364387.jpg)
1.3 소프트웨어가 디버깅 모드로 들어갑니다
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677346989.jpg)
2.
2.1 첨부파일 첨부 프로세스
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677445441.jpg)
2.2 세 가지 항목 나누기
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677417386.jpg)
2.3 프로세스 선택
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677450087.jpg)
2.4 모듈 열기
아트 검색
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677449614.jpg)
PS : 지식이 거의 없음
안드로이드 이전의 시스템 기능 4.4 버전은 libdvm.so
안드로이드 5.0 이후 시스템 함수는 libart.so
2.5
libart.so에서 Openmemory() 함수를 검색해서 따라오시면 됩니다.
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677411619.jpg)
PS: 지식이 거의 없음
일반적으로 이 함수에서는 시스템 dex가 로드되지만 문제가 발생할 수 있으며 이에 대해서는 나중에 설명하겠습니다.
2.6 다음 중단점
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677466950.jpg)
3. 마지막 중단점까지 프로그램을 실행합니다.
3.1 jdb 실행 중인 프로그램을 전달합니다.
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677579589.jpg)
3.2 IDA 작업을 확인합니다
중단할 때까지 성공적으로 중단하고 실행합니다.
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677513314.jpg)
3.3 dex 위치 확인
등록 창을 열면 R1이 우리 dex
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677574393.jpg)
Hex 창에서 R1을 엽니다.
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677542104.jpg)
dex 파일의 바이너리 구조를 보면 알 수 있습니다. 이해가 안된다면 이전 dex 파일 분석을 보시면 됩니다.
3.4 키 정보 추출
첫 번째 키 정보: 주소 오프셋: 0xF35CA328
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677538838.jpg)
두 번째 키 정보: 파일 오프셋: 70 35 01 00, 0x00013570
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677623531.jpg)
16진수 가산기를 사용하세요 게다가, F35DD898
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677633266.jpg)
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을 클릭합니다.
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677678766.jpg)
4.3 성공적인 덤프
![Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까](https://img.php.cn/upload/article/000/887/227/168543677637110.jpg)
위 내용은 Android에서 dex 파일을 동적으로 내보내는 방법은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!