Unpack Android OTA

December 17, 2023

建议 Tips

您正在查看印刷版本的博客, 印刷版本的博客可能会缺少部分交互功能, 部分内容显示不全或过时. 如果您在查看该印刷版博客时遇到了任何问题, 欢迎来此链接查看在线版: https://www.kxxt.dev/notes/unpack-android-ota/

You are viewing a printed version of this blog. It may lack some interactive features and some content might now be fully displayed or outdated. If you encounter any problems while viewing this printed version of the blog, feel free to view the online version here: https://www.kxxt.dev/notes/unpack-android-ota/

Short answer: use https://github.com/AndroidDumps/dumpyara , which will dump almost everything of interest.

To unpack individual images: use payload-dumper-go, which is available in ArchLinuxCN repo.

If you REALLY want to do it by hand, here is the way to extract individual images from super.img:

If super.img is a sparse image, then we need to unsparse it first.


$ file imgs/CN/super.img
imgs/CN/super.img: Android sparse image, version: 1.0, Total of 2228224 4096-byte output blocks in 141 input chunk
s.

Use simg2img from Arch Linux extra/android-tools package to unsparse it.


simg2img super.img super.img.unsparsed

Then we can unpack it using lpunpack from Arch Linux extra/android-tools package.


mkdir dump
lpunpack super.img.unsparsed dump