Proxyman으로 Android API 36 Google Play 에뮬레이터 HTTPS 캡처하기
이 튜토리얼에서는 Proxyman과 Magisk를 사용해 Android 16 API 36 Google Play 에뮬레이터의 HTTPS 트래픽을 캡처하고 복호화하는 방법을 알아봅니다.
문제 상황
Android Studio는 자주 쓰이는 에뮬레이터 이미지 두 가지를 제공합니다:
- Google APIs 이미지: 일반적인
adb root명령을 지원하지만, Google Play 스토어는 포함하지 않습니다. - Google Play 이미지: Play 스토어가 포함되어 있지만, 일반적인
adb root명령은 허용하지 않습니다.
Proxyman은 모든 앱의 HTTPS 트래픽을 복호화하기 위해 인증서를 Android 시스템 인증서 저장소에 설치해야 합니다. Google Play 에뮬레이터에서는 일반적인 설정으로 루트 권한을 얻을 수 없어서, 인증서를 시스템 저장소에 복사할 수 없습니다.
그 결과는 다음과 같습니다:
- Proxyman이 HTTP 트래픽은 캡처할 수 있지만, HTTPS 트래픽은 여전히 암호화된 상태로 남습니다.
- 일부 앱에서 SSL 또는 인증서 오류가 표시될 수 있습니다.
- Google Play에서 설치한 앱이 Proxyman 인증서를 신뢰하지 않을 수 있습니다.
Magisk로 에뮬레이터를 직접 루트화할 수도 있지만, 설정이 까다롭습니다. Magisk를 내려받고, 에뮬레이터 ramdisk에 패치를 적용하고, 패치된 이미지로 에뮬레이터를 시작하고, 루트 권한을 설정하고, 인증서를 설치한 뒤, 작업이 끝나면 모든 것을 원래대로 되돌려야 합니다. 수동으로 해야 할 단계가 많아 실수하기 쉽습니다.
Proxyman 6.14.0에는 Google Play 에뮬레이터용 새 Magisk 옵션이 추가되었습니다. 이제 Android Emulator Guide에서 몇 번의 클릭만으로 설정을 마칠 수 있습니다.
이 튜토리얼에서 얻을 수 있는 결과는 다음과 같습니다:
- ✅ 클릭 한 번으로 Google Play Store 에뮬레이터 오버라이드
- ✅ 지원되는 최신 Magisk 버전을 자동으로 사용해 에뮬레이터를 루트화
- ✅ Google Play에서 설치한 앱의 HTTP 및 HTTPS 트래픽 캡처
- ✅ Android 16 API 36 Google Play 에뮬레이터 사용
- ✅ Proxyman이 HTTP 프록시를 설정하고 시스템 저장소에 인증서를 설치하도록 설정
- ✅ Android 앱 코드를 변경할 필요 없음
사전 준비 사항
- Proxyman macOS 6.14.0 이상
- Android Studio
- Android Debug Bridge (
adb) - Google Play 시스템 이미지가 포함된 Android 16 API 36 에뮬레이터
1. Proxyman 설정하기
- Proxyman 웹사이트에서 최신 Proxyman macOS 앱을 다운로드합니다.
- Proxyman을 실행합니다.
Certificate->Install Certificate on this Mac으로 이동합니다.- 안내에 따라 Proxyman 인증서를 설치하고 신뢰하도록 설정합니다.
- 녹색 Installed & Trusted 상태가 표시되는지 확인합니다.

2. Android API 36 Google Play 에뮬레이터 만들기
- Android Studio를 실행합니다.
- Device Manager를 열고 새 가상 기기를 만듭니다.
- Pixel 기기를 선택합니다.
- Google Play 시스템 이미지가 있는 Android 16, API 36을 선택합니다.
- 설정을 마치고 에뮬레이터를 시작합니다.
이번에는 반드시 Google Play 이미지를 선택해야 합니다. 그래야 에뮬레이터 안에서 Play 스토어 앱을 사용할 수 있습니다.

3. Proxyman에서 Magisk 옵션 활성화하기
- Android 에뮬레이터를 켜 둡니다.
- Proxyman에서
Certificate->Install Certificate on Android->Emulators로 이동합니다. - Proxyman이 에뮬레이터를 찾을 수 있는지 확인합니다.
- Root Google Play Emulators with Magisk를 체크합니다.
- Override All Emulators를 클릭합니다.

Root Google Play Emulators with Magisk 옵션은 이번에 새로 추가된 중요한 단계입니다. 이 옵션이 없으면 Google Play 에뮬레이터에서 Proxyman이 Android 시스템 저장소에 인증서를 설치할 수 없습니다.
터미널 창이 열립니다. Proxyman이 변경 사항을 설명하고 권한을 요청합니다. y를 입력하고 Return 키를 눌러 계속합니다.

스크립트는 다음 작업을 수행합니다:
- Magisk로 Google Play 에뮬레이터를 임시로 루트화
- 에뮬레이터 재시작
- 에뮬레이터의 HTTP 프록시를 Proxyman으로 설정
- Android 시스템 저장소에 Proxyman 인증서 설치
터미널 스크립트가 끝나고 에뮬레이터가 재시작될 때까지 기다립니다.

Magisk 루트는 임시로만 적용되지만, Play Integrity, Google 앱, 그리고 루트 여부를 확인하는 앱에 영향을 줄 수 있습니다. 테스트용 에뮬레이터를 사용하고, 개인 계정이나 민감한 데이터를 추가하지 마세요.
4. HTTPS 트래픽 캡처하기
- 에뮬레이터에서 Play 스토어를 엽니다.
- 테스트하려는 앱을 설치하거나 엽니다.
- 앱을 사용한 뒤 Proxyman으로 돌아갑니다.
- 이제 해당 앱의 HTTP 및 HTTPS 요청과 응답을 볼 수 있습니다.
요청이 여전히 암호화되어 있다면, Proxyman에서 해당 요청을 선택하고 Enable SSL Proxying 기능을 켭니다. 그런 다음 Android 앱을 종료했다가 다시 실행합니다.
직접 만든 Android 앱, Google Chrome, YouTube 등 Google Play에서 설치한 여러 앱의 트래픽을 캡처할 수 있습니다.
일부 앱은 SSL 피닝을 사용합니다. Proxyman 인증서를 설치한다고 해서 SSL 피닝이 우회되지는 않습니다. 테스트가 허용된 앱과 트래픽만 검사하세요.
5. 에뮬레이터 되돌리기
테스트를 마치면 다음과 같이 진행합니다:
- Proxyman에서 Android Emulator Guide를 다시 엽니다.
- Revert All Changes를 클릭합니다.
- 터미널에서 작업을 확인합니다.
- 에뮬레이터가 원래 시스템 이미지로 재시작될 때까지 기다립니다.
이 작업으로 임시 Magisk 루트가 제거되고 프록시 설정이 초기화됩니다. Proxyman을 종료하기 전에 항상 변경 사항을 되돌리세요. 그렇지 않으면 에뮬레이터가 인터넷에 연결되지 않을 수 있습니다.
문제 해결
Proxyman이 에뮬레이터를 찾지 못하는 경우
터미널에서 adb devices를 실행합니다. 에뮬레이터가 emulator-#### 기기로 표시되는지 확인하세요. 표시되지 않으면 Android Studio와 에뮬레이터를 다시 시작하세요.
Magisk 스크립트가 끝나지 않는 경우
Android Studio Device Manager를 열고 Cold Boot Now를 사용한 뒤, Android가 시작될 때까지 기다리고 다시 시도하세요. 공식 Android Studio Google Play 이미지를 사용하고 있는지도 확인하세요.
Magisk를 활성화한 뒤 앱이 동작하지 않는 경우
앱이 루트 여부나 Play Integrity를 확인하고 있을 수 있습니다. Revert All Changes를 클릭한 뒤, 루트화된 에뮬레이터를 지원하는 앱으로 테스트하세요.
다음 단계
- Android Emulator Automatic Script 문서를 읽어 보세요.
- 간단한 HTTPS 요청을 테스트하려면 샘플 Android 앱을 내려받으세요.
Proxyman은 개발자가 Android 기기, Android 에뮬레이터, iOS 기기, iOS 시뮬레이터, 웹 브라우저에서 HTTP, HTTPS, WebSocket 트래픽을 캡처하고 검사할 수 있도록 돕는 고성능 macOS 앱입니다.
https://proxyman.com에서 다운로드하세요.
