このプロジェクトについて
# Qualcomm Sahara / Firehose 攻撃クライアント / Diag ツール
これはQualcomm Emergency Download (EDL)モードを扱うための非公式ツールセットで、SaharaおよびFirehoseプロトコルを使用してデバイスのダンプ、書き込み、デバッグを行う低レベルアクセスを提供します。GPLv3でライセンスされており、許可なく商用利用することを禁じる追加制限があります。
## 主な機能
- **Sahara V3サポート**: 新しいQualcommデバイスでチップ情報(MSM_ID、OEM_ID、MODEL_ID)を読み取れない問題を修正。拡張情報のためにコマンド0x0A(CHIP_ID_V3_READ)を使用します。
- **パーティション管理**: eMMCおよびUFSフラッシュメモリ上のパーティションのダンプ、書き込み、管理。
- **ローダー自動検出**: HWID/MSM_ID/PKHashの一致に基づいて適切なローダーを自動的に検出して使用します。
- **Diagポートツール**: NVバックアップ、EFSディレクトリ一覧などの診断操作のための`qc_diag`を含みます。
- **ストリーミングモード**: デバイスメモリとの間でデータをストリーミングするサポート。
- **生XMLコマンド**: 高度な操作のためにカスタムXML文字列を送信します。
## インストール
### Linux (Debian/Ubuntu/Mint)
```bash
sudo apt install adb fastboot python3-dev python3-pip liblzma-dev git
sudo apt purge modemmanager
sudo systemctl stop ModemManager
sudo systemctl disable ModemManager
git clone https://github.com/bkerler/edl.git
cd edl
git submodule update --init --recursive
pip3 install -r requirements.txt
```
### macOS
```bash
brew install libusb git
git clone https://github.com/bkerler/edl.git
```
### Windows
自動PowerShellインストーラー、またはPython 3.10+、git、UsbDkを使用した手動セットアップを使用します。
## 使用例
- `edl rl dumps --memory=ufs --lun=0 --skip=userdata,vendor_a` - lun0から全パーティションをdumpsディレクトリにダンプし、userdataとvendor_aをスキップ
- `edl rs 0 15 data.bin` - セクター0から15セクターをファイルdata.binにダンプ
- `edl w boot boot.img --memory=ufs --lun=4` - boot.imgをlun 4のbootパーティションに書き込み
- `edl wl dumps --memory=ufs --lun=0` - dumpsフォルダの全ファイルをパーティションに書き込み
- `edl qfil rawprogram0.xml patch0.xml image_dir` - QFIL XMLファイルを使用してフルイメージを書き込み
- `edl pokeqword 0x200000 0x400000` - メモリオフセットにq-word値を書き込み
- `edl secureboot` - securebootヒューズを表示(EL3ローダーのみ)
- `edl pbl pbl.bin` - PBLをダンプ(EL3ローダーのみ)
- `edl qfp qfp.bin` - QFPROMヒューズをダンプ(EL3ローダーのみ)
- `edl modules oemunlock enable` - configパーティションが存在する場合にOEMをアンロック
## ローダー管理
- ローダーはgitサブモジュールまたは[Loadersリポジトリ](https://github.com/bkerler/Loaders)から自動的に取得されます
- カスタムEDLローダーを自動使用に変換するには`fhloaderparse`を使用します
- ローダーは`Loaders`ディレクトリに`msmid_pkhash[8 bytes].bin`という命名規則で保存されます
## 対応デバイス(一部)
- OnePlus 3T/5/6T/7T/8/8t/9/Nord CE/N10/N100(読み取り専用)
- BQ X、BQ X5、BQ X2
- Gigaset ME Pure
- ZTE MF210、MF920V
- Sierra Wireless EM7455
- Netgear MR1100-10EUS、MR5100
- 各種Xiaomiデバイス(SM8350、SM8450、SM8550でテスト済み)
## 制限事項
- XiaomiのSDM660搭載セキュアローダーは未対応(EDL認証)
- VIP Programmingは未対応
- EFSディレクトリ書き込みとファイル読み取りは未実装
- 一部の操作にはEL3ローダーが必要
## ライセンス
GPLv3に追加制限付き:事前の許可なく商用製品での使用を禁止。コンパイル形式での使用にはコードのオープンソース化が必要です。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.