iOS에서 Corellium에 연결하는 방법

Reading time: 3 minutes

tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE) Azure 해킹 배우기 및 연습하기: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks 지원하기

사전 요구사항

  • Corellium iOS VM (탈옥 여부 무관). 이 가이드에서는 Corellium에 접근할 수 있다고 가정합니다.
  • 로컬 도구: ssh/scp.
  • (선택) Corellium 프로젝트에 추가된 SSH keys (무비밀번호 로그인용).

localhost에서 iPhone VM에 연결하기

A) Quick Connect (VPN 없음)

  1. **/admin/projects**에 ssh 키를 추가하세요 (권장).
  2. 디바이스 페이지 → Connect
  3. Corellium에 표시된 Quick Connect SSH command를 복사하여 터미널에 붙여넣으세요.
  4. 비밀번호를 입력하거나 키를 사용하세요(권장).

B) VPN → direct SSH

  1. **/admin/projects**에 ssh 키를 추가하세요 (권장).
  2. Device page → CONNECTVPN.ovpn 파일을 다운로드한 다음 TAP 모드를 지원하는 VPN 클라이언트로 연결하세요. (문제가 있으면 https://support.corellium.com/features/connect/vpn 를 확인하세요.)
  3. VM의 10.11.x.x 주소로 SSH 접속:
bash
ssh root@10.11.1.1

네이티브 바이너리 업로드 및 실행

2.1 업로드

  • Quick Connect이 host/port를 제공했다면:
bash
scp -J <domain> ./mytool root@10.11.1.1:/var/root/mytool
  • VPN (10.11.x.x)를 사용하는 경우:
bash
scp ./mytool -J <domain> root@10.11.1.1:/var/root/mytool

iOS 앱(.ipa) 업로드 및 설치

방법 A — Web UI (가장 빠름)

  1. Device 페이지 → Apps 탭 → Install App → 자신의 .ipa 선택.
  2. 동일한 탭에서 launch/kill/uninstall할 수 있습니다.

방법 B — 스크립트로 Corellium Agent 사용

  1. API Agent를 사용해 upload한 다음 install:
js
// Node.js (pseudo) using Corellium Agent
await agent.upload("./app.ipa", "/var/tmp/app.ipa");
await agent.install("/var/tmp/app.ipa", (progress, status) => {
console.log(progress, status);
});

Path C — Non-jailbroken (proper signing / Sideloadly)

  • 프로비저닝 프로파일이 없다면, Sideloadly로 Apple ID로 재서명하거나 Xcode에 로그인하세요.

  • 또한 USBFlux를 사용해 VM을 Xcode에 노출할 수 있습니다 (섹션 §5 참조).

  • SSH 없이 빠른 로그/명령 확인을 위해 UI의 기기 Console을 사용하세요.

Extras

  • Port-forwarding (다른 도구들이 VM을 로컬처럼 인식하도록):
bash
# Forward local 2222 -> device 22
ssh -N -L 2222:127.0.0.1:22 root@10.11.1.1
# Now you can: scp -P 2222 file root@10.11.1.1:/var/root/
  • LLDB remote debugging: 장치 페이지 하단에 표시된 LLDB/GDB stub 주소를 사용하십시오 (CONNECT → LLDB).

  • USBFlux (macOS/Linux): VM을 Xcode/Sideloadly에 유선 장치처럼 연결하세요.

일반적인 함정

  • Proper signingnon-jailbroken 장치에서 필요합니다; unsigned IPAs는 실행되지 않습니다.
  • Quick Connect vs VPN: Quick Connect가 가장 간단합니다; 장치를 로컬 네트워크에서 사용해야 할 때(예: 로컬 프록시/도구)는 VPN을 사용하세요.
  • Corellium 장치에는 App Store가 없으므로, (re)signed IPAs를 직접 준비하세요。

tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE) Azure 해킹 배우기 및 연습하기: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks 지원하기