mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
80 lines
3.8 KiB
Markdown
80 lines
3.8 KiB
Markdown
# iOS Corellium に接続する方法
|
||
|
||
{{#include ../../banners/hacktricks-training.md}}
|
||
|
||
## **前提条件**
|
||
- Corellium の iOS VM(jailbroken 可)。このガイドでは Corellium へのアクセスがあることを前提とします。
|
||
- ローカルツール: **ssh/scp**.
|
||
- (オプション)パスワードレスログイン用に **SSH keys** を Corellium プロジェクトに追加しておく。
|
||
|
||
|
||
## **ローカルホストから iPhone VM に接続する方法**
|
||
|
||
### A) **Quick Connect (no VPN)**
|
||
0) **`/admin/projects`** に ssh key を追加する(推奨)。
|
||
1) デバイスページを開く → **Connect**
|
||
2) Corellium に表示される **Quick Connect SSH command** をコピーして端末に貼り付ける。
|
||
3) パスワードを入力するか、(推奨)SSH key を使用する。
|
||
|
||
### B) **VPN → direct SSH**
|
||
0) **`/admin/projects`** に ssh key を追加する(推奨)。
|
||
1) デバイスページ → **CONNECT** → **VPN** → `.ovpn` をダウンロードし、TAP モードをサポートする任意の VPN クライアントで接続する。(問題がある場合は [https://support.corellium.com/features/connect/vpn](https://support.corellium.com/features/connect/vpn) を確認)
|
||
2) 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 — **Scripted via 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 (適切な署名 / Sideloadly)**
|
||
- プロビジョニングプロファイルがない場合、**Sideloadly** を使って Apple ID で再署名するか、Xcode にサインインしてください。
|
||
- また、**USBFlux** を使って VM を Xcode から利用できるようにすることもできます(§5参照)。
|
||
|
||
|
||
- SSH がなくても素早くログやコマンドを確認したい場合は、UI のデバイス **Console** を使用してください。
|
||
|
||
## **補足**
|
||
|
||
- **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 signing** は **non-jailbroken** デバイスで必要です。unsigned IPAs は起動しません。
|
||
- **Quick Connect vs VPN**: Quick Connect が最も簡単です。デバイスをローカルネットワーク上で使う必要がある場合(例: ローカルプロキシ/ツール)は **VPN** を使用してください。
|
||
- Corellium デバイスには **App Store** がありません。自分で (re)signed IPAs を用意してください。
|
||
|
||
|
||
|
||
{{#include ../../banners/hacktricks-training.md}}
|