本章将指导使用由bkerler所创建的非官方高通Sahara / Firehose Attack Client / Diag Tools
在Linux发行版安装
配置依赖
- Debian系列(Debian/Ubuntu/Mint/etc)
sudo apt install adb fastboot python3-dev python3-pip liblzma-dev git sudo systemctl stop ModemManager sudo systemctl disable ModemManager sudo apt purge ModemManager
- Arch系列
sudo pacman -S android-tools python python-pip git xz sudo pacman -R modemmanager
安装
git clone https://github.com/bkerler/edl.git --recursive cd edl sudo cp Drivers/51-edl.rules /etc/udev/rules.d sudo cp Drivers/50-android.rules /etc/udev/rules.d python3 setup.py build sudo python3 setup.py install
使用EDL
请先利用edl工程线或其它任意方式进入0x9008 mode
GitHub上详细教程:https://github.com/bkerler/edl?tab=readme-ov-file#run-edl-example
server 启动一个TCP/IP服务器,具体参见下文
printgpt 显示出磁盘上的gpt分区表信息
gpt 将gpt文件保存至指定文件夹
r 从闪存读出文件的指定文件名
rl 读取闪存上所有分区的磁盘镜像至指定目录
rf 将整个磁盘的数据读取至文件
rs 读取指定扇区开始的指定扇区数的数据到给定文件名的文件中
w 将给定文件写入到闪存
wl 将目录内所有的文件写入闪存
wf 将文件写入整个闪存
ws 将文件写入到指定闪存扇区位置
e 擦除闪存指定分区
es 擦除闪存指定扇区
ep 擦除闪存的扇区计数
footer 从闪存中读取crypt footer结构体
peek 从内存指定偏移量读取指定长度的数据到给定文件名
peekhex 从内存中指定偏移量读取指定长度的数据到屏幕
peekdword从指定内存偏移量处读取dword
peekqword 从指定内存偏移量处读取qword
memtbl 读取内存表至文件