Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ubl-itel-s23 — CVE-2022-38694 を使用した Itel S23 (S665L) / Unisoc T606 のブートローダーアンロック | Kitploit
ツール/GitHubGitHub/aureliusivan/ubl-itel-s23
Androidセキュリティ組み込みシステムセキュリティ脆弱性分析エクスプロイトモバイルセキュリティハードウェアセキュリティ学習と教育ファームウェア解析バイナリエクスプロイト
GitHubaureliusivan/ubl-itel-s23

ubl-itel-s23

CVE-2022-38694 を使用した Itel S23 (S665L) / Unisoc T606 のブートローダーアンロック

425ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
リポジトリを見る

ブートローダーのアンロック — Itel S23 (S665L) / Unisoc T606

Unisoc T606(UMS9230)チップセットのCVE-2022-38694脆弱性を利用して、Itel S23(S665L)のブートローダーをアンロックするガイドです。

デバイス情報

プロパティ値
ブランドItel
モデルS665L (S23)
Android12 (SDK 31)
ビルドS665L-F065OPRSUVApAqAr-S-GL-20250207V533
SoCUnisoc T606 (UMS9230)
CPU2x Cortex-A75 + 6x Cortex-A55 (ARMv8, 64-bit)
ストレージUFS
スロットA/B

前提条件

  • Linux(Fedora 43でテスト済み)
  • adb と fastboot がインストールされていること
  • USBデータケーブル(充電専用ではないもの)
  • バッテリー残量80%以上
  • 開発者オプションで OEMアンロック が有効であること
  • 開発者オプションで USBデバッグ が有効であること
  • すべてのデータをバックアップすること(アンロック後に消去されます)

ファイル構成

root@kitploit:~
ubl-itel-s23/
├── README.md
├── CLAUDE.md
├── recovery/
│   ├── TWRP_S665L.img              # TWRPリカバリーイメージ
│   └── OrangeFox_S665L.img         # OrangeFoxリカバリーイメージ
└── tools/
    └── spreadtrum_flash_linux/
        ├── spd_dump                 # BootROM通信ツール
        ├── gen_spl-unlock           # アンロックペイロード生成ツール
        ├── unlock.sh                # 自動アンロックスクリプト
        ├── fdl1-dl.bin              # 第一段階ローダー
        ├── fdl2-dl.bin              # 第二段階ローダー
        ├── fdl2-cboot.bin           # アンロック用に修正されたuboot
        ├── custom_exec_no_verify_65015f08.bin  # CVEエクスプロイトペイロード
        ├── custom_exec_no_verify_65015f48.bin  # CVEエクスプロイトペイロード(代替)
        ├── splloader.bin            # SPLバックアップ(処理中に生成)
        ├── uboot.bin                # ubootバックアップ(処理中に生成)
        ├── spl-unlock.bin           # アンロックペイロード(処理中に生成)
        └── ums9230/itel/            # Itel UMS9230用FDLバイナリ

動作原理 (CVE-2022-38694)

このエクスプロイトは、Unisoc BootROMの脆弱性を利用して、署名検証が完了する前にメモリ領域にデータを書き込むことを可能にします。

root@kitploit:~
Normal:   BootROM → verify(FDL1) → REJECT (unsigned)
Exploit:  BootROM → overwrite verify() → verify = always_true
               → accept(FDL1) → ACCEPT → unlock bootloader

custom_exec_no_verifyペイロード(96バイト)は、アドレス0x65015f08にある署名検証関数ポインタを上書きし、BootROMが署名をチェックせずに任意のFDL1を受け入れるようにします。

アンロック手順

初期設定

  1. USBアクセスのためのudevルールをインストール:
root@kitploit:~
sudo tee /etc/udev/rules.d/51-android.rules << 'EOF'
# Google/Android (ADB & Fastboot)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
# Spreadtrum/Unisoc
SUBSYSTEM=="usb", ATTR{idVendor}=="1782", MODE="0666", GROUP="plugdev"
EOF
sudo udevadm control --reload-rules && sudo udevadm trigger
  1. FDLファイルとエクスプロイトペイロードを作業ディレクトリにコピー:
root@kitploit:~
cd tools/spreadtrum_flash_linux
cp ums9230/itel/fdl1-dl.bin ums9230/itel/fdl2-dl.bin ums9230/itel/fdl2-cboot.bin .
cp ums9230/custom_exec_no_verify_65015f08.bin ums9230/custom_exec_no_verify_65015f48.bin .
chmod +x spd_dump gen_spl-unlock

ステップ1 — splloaderとubootのバックアップ、splloaderの消去

電話は電源が入り、USB接続されている必要があります。このステップの後、ステップ6まで電話は起動しません。

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f48 fdl fdl1-dl.bin 0x65000800 \
  fdl fdl2-dl.bin 0x9efffe00 exec \
  r splloader r uboot e splloader e splloader_bak reset

splder.binとuboot.binを安全な場所にバックアップ:

root@kitploit:~
cp splloader.bin uboot.bin backup_spl/

ステップ2 — アンロックペイロードの生成

root@kitploit:~
./gen_spl-unlock splloader.bin 0xfd28

出力: spl-unlock.bin

オフセット0xfd28はこのファームウェアに固有です。splder.binのサイズを確認してください — オフセットはファイルサイズと一致するはずです。

ステップ3 — 修正されたubootのフラッシュ

BROMモードに入る: 電話の電源を切り、音量ダウンを押しながらUSBを接続します。

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f08 fdl fdl1-dl.bin 0x65000800 \
  fdl fdl2-dl.bin 0x9efffe00 exec \
  w uboot fdl2-cboot.bin reset

ステップ4 — アンロックペイロードの送信

再度BROMモードに入り、次のコマンドを実行:

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f08 fdl spl-unlock.bin 0x65000800

device removed, exiting... と表示されたら、それは成功を意味します。

ステップ5 — アンロック状態の確認

再度BROMモードに入り、次のコマンドを実行:

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f08 fdl fdl1-dl.bin 0x65000800 \
  fdl fdl2-dl.bin 0x9efffe00 exec \
  verbose 2 read_part miscdata 8192 64 m.bin reset
  • recv 64 zero = まだロック済み(失敗)
  • recv 32 string + hash data = アンロック済み(成功)

ステップ6 — splloaderとubootの復元

再度BROMモードに入り、次のコマンドを実行:

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f08 fdl fdl1-dl.bin 0x65000800 \
  fdl fdl2-dl.bin 0x9efffe00 exec \
  w splloader splloader.bin w uboot uboot.bin reset

電話が再起動します。Android Recoveryが表示されたら、工場出荷時リセットを選択してください。

ADBでの確認

電話がAndroidで起動した後:

root@kitploit:~
adb shell getprop ro.boot.vbmeta.device_state
# Expected: unlocked

adb shell getprop ro.boot.flash.locked
# Expected: 0

重要な注意事項

  • アンロック後、電話は起動時に警告画面を表示します(これは正常です)
  • OTAアップデートは機能しなくなる可能性があります
  • 保証は無効になります
  • splder.binとuboot.binを削除しないでください — 何か問題が発生した場合に復元に必要です
  • ステップ1ではアドレス0x65015f48を使用し、ステップ3〜6では0x65015f08を使用します

クレジットと参考文献

ツール

  • spd_dump / CVE-2022-38694 Unlock Bootloader 作成者 TomKing062 / QuTick102 https://github.com/TomKing062/CVE-2022-38694_unlock_bootloader

  • Recovery Collections & Spreadtrum Flash Tool (Linux) 作成者 Massatriof16 https://massatriof16.github.io/recovery-collections/#alat

  • unisoc-unlock (Python alternative) 作成者 patrislav1 https://github.com/patrislav1/unisoc-unlock

ガイドと参考資料

  • Itel S23 アンロックブートローダーガイド — XDAフォーラム
  • Identifier Tokenを使用してUnisoc (SPD)ブートローダーをアンロックする方法 — Hovatek
  • SUBUT — Spreadtrum/Unisoc ブートローダーアンロックツール (Web)

リカバリーイメージ

  • Itel S23用TWRP & OrangeFox — Massatriof16 Recovery Collections より
ツールをダウンロード