
MediaTek NVRAMファイルやパーティションイメージ内のIMEIレコードおよびWiFi/Bluetoothアドレスを読み書きします。root化済みデバイス向けの対話型ADBツールと、biloba向けのバージョン別モデム/LKパッチャーを別途含みます。
MediaTek NVRAMファイルまたはパーティションイメージ内のIMEIレコードとWiFi/Bluetoothアドレスを読み書きします。root化されたデバイス向けの対話型ADBツールと、biloba向けのバージョン別モデム/LKパッチャーを別途含みます。
git clone https://github.com/alltechdev/mtk-imei-switcheroo
cd mtk-imei-switcheroo
python3 -m pip install -r requirements.txt
NVRAMツールにはPython 3.6以上が必要です。IMEI操作にはpycryptodomeが必要で、
WiFi/Bluetooth操作は標準ライブラリのみを使用します。ライブツールには
ADBとroot化されたデバイスも必要です。Bilobaの完全な検証ワークフローには
別途の依存関係があります。
| タスク | コマンド | ガイド |
|---|---|---|
| ローカルファイルまたはパーティションイメージ内のIMEI | python3 tools/nvram/imei_tool.py | オフラインIMEI |
| root化されたデバイス上のIMEI | ./tools/nvram/live_patch.sh | ライブIMEI |
| ローカルファイルまたはイメージ内のWiFi/BTアドレス | python3 tools/nvram/mac_tool.py | オフラインMAC |
| root化されたデバイス上のWiFi/BTアドレス | ./tools/nvram/live_patch_mac.sh | ライブMAC |
| 正確なbilobaモデム/LKファームウェアのペア | バージョン管理されたPythonパッチャー | Bilobaパッチャー |
リポジトリのルートから実行します:
python3 tools/nvram/imei_tool.py read LD0B_001
python3 tools/nvram/imei_tool.py read nvdata.img
python3 tools/nvram/imei_tool.py write LD0B_001 350859600862948 -s 1 -o LD0B_001_new
# Dual-SIM: use -s 2 for the second slot.
python3 tools/nvram/mac_tool.py read WIFI
python3 tools/nvram/mac_tool.py write WIFI --wifi 02:11:22:33:44:66 -o WIFI.patched
python3 tools/nvram/mac_tool.py write BT_Addr --bt 02:11:22:33:44:55 -o BT_Addr.patched
オフラインツールは個別のレコードまたは対応するパーティションイメージを受け付けます。検出ルール、重複レコード、バックアップ、エラー処理についてはガイドを参照してください。
./tools/nvram/live_patch.sh と ./tools/nvram/live_patch_mac.sh はレコードを取得し、変更内容を確認したうえで、パッチ適用済みファイルを書き込み、再起動を提案します。要件と検証については、ライブ IMEI または ライブ MAC ガイドに従ってください。
| デバイス | 記録された結果 |
|---|---|
| F21 Pro | IMEI および WiFi/BT フローを実機で検証済み |
| F25 | IMEI はテスターで検証済み。WiFi/BT は Java ポートで確認済み |
| TIQ M5 | デュアル SIM の IMEI および WiFi/BT フローを実機で検証済み |
| Biloba V12 モデム + 提供された LK | ペアのファームウェアパッチは動作報告あり。モデムのみのパッチはブートループ発生 |
| Biloba V13 モデム + 同梱の LK | オフラインチェックは合格。ハードウェアでの結果報告なし |
| Biloba V14 モデム + 同梱の LK | オフラインチェックは合格。ハードウェアでの結果報告なし |
詳細な検証では、直接テスト、外部報告、オフラインチェックを区別しています。同じチップセットであることは互換性を証明するものではありません。Biloba は署名付きクリティカルデータチェックを追加していますが、NVRAM ツールはそのファームウェア変更を適用しません。biloba の状況と制限を参照してください。
Android のネットワークごとの MAC ランダム化により、デバイスのアドレスが隠れる場合があります。Android 12 以降では出荷時の WiFi MAC もキャッシュされ、ライブスクリプトはそのキャッシュを更新しますが、オフラインでのパーティション編集だけでは更新されません。ライブ MAC の動作およびデバイスの知見を参照してください。
| 場所 | 目的 |
|---|---|
| tools/nvram/ | オフライン NVRAM ツールとライブ ADB スクリプト |
| docs/ | ガイド、フォーマット、デバイスの知見、調査解説 |
| firmware/biloba/ | バージョン管理されたファームウェアパッチャーと再現ランナー |
| research/biloba/ | 分析ヘルパー、実行ハーネス、保存された証拠 |
| tests/ | NVRAM 回帰ドライバーとリポジトリチェック |
tmp/、runs/ | 無視されるローカルサンプル、バックアップ、生成結果 |
ファームウェアイメージ、パーティションダンプ、秘密鍵は含まれていません。