如何在 iOS 9.3.5 iPod Touch 5 上找到内核映射偏移量?
How can I find the Kernel Map offset on iOS 9.3.5 iPod Touch 5?
我正在尝试围绕 GitHub 前一段时间发布的 v0rtex 漏洞构建一个工具,我需要找到 Kernel Map 和 Realhost 的偏移量。
我已经从 ipsw 解密了内核文件并将其加载到 IDA 中,但是我获得的偏移量似乎从来都不正确。 phone 错误。
我设法找到的偏移量:0x2b2b
这不是有效的偏移量。
我假设你的意思是 KERNEL_MAP
和 REALHOST
偏移量。
如果您的桌面上已经有解密的 kernelcache
文件,并且您正在 macOS 上执行此操作(我假设您这样做,因为您正在构建一个 iOS 应用程序,这是其中之一查找偏移量的方法:
- 将您的
kernelcache
文件放在桌面上,并确保它名为“kernelcache”。
- 打开终端并粘贴以下命令:
对于KERNEL_MAP
:
nm kernelcache | grep ' _kernel_map$' | awk '{ print "0x" }'
对于REALHOST
:
这有点棘手。 REALHOST
实际上是 host_priv_self_addr
您需要确保已安装 Radare2。
如果您没有 radare2,请安装
brew install radare2
之后,运行:
host_priv_self_addr=$(nm kernelcache | grep host_priv_self | awk '{ print "0x" }')
r2 -q -e scr.color=false -c "pd 2 @ $host_priv_self_addr" kernelcache 2> /dev/null | sed -n 's/0x//gp' | awk '{ print $NF }' | tr '[a-f]\n' '[A-F] ' | awk '{ print "obase=16;ibase=16;" "+" }' | bc | tr '[A-F]' '[a-f]' | awk '{ print "0x" }'
将其放入 .sh 文件中,使用 chmod +x
赋予它适当的权限。
重要提示:必须使用 https://www.theiphonewiki.com/wiki/Genoa_13G36_(iPod5,1)
中的正确 KEY + IV 解密内核文件
花了一些时间 运行 这些是针对我手头的第 5 代 iPod Touch 9.3.5 的 IPSW。 KERNEL_MAP
偏移量为 0x80412010
.
你必须自己找到另一个。
我正在尝试围绕 GitHub 前一段时间发布的 v0rtex 漏洞构建一个工具,我需要找到 Kernel Map 和 Realhost 的偏移量。
我已经从 ipsw 解密了内核文件并将其加载到 IDA 中,但是我获得的偏移量似乎从来都不正确。 phone 错误。
我设法找到的偏移量:0x2b2b
这不是有效的偏移量。
我假设你的意思是 KERNEL_MAP
和 REALHOST
偏移量。
如果您的桌面上已经有解密的 kernelcache
文件,并且您正在 macOS 上执行此操作(我假设您这样做,因为您正在构建一个 iOS 应用程序,这是其中之一查找偏移量的方法:
- 将您的
kernelcache
文件放在桌面上,并确保它名为“kernelcache”。 - 打开终端并粘贴以下命令:
对于KERNEL_MAP
:
nm kernelcache | grep ' _kernel_map$' | awk '{ print "0x" }'
对于REALHOST
:
这有点棘手。 REALHOST
实际上是 host_priv_self_addr
您需要确保已安装 Radare2。
如果您没有 radare2,请安装
brew install radare2
之后,运行:
host_priv_self_addr=$(nm kernelcache | grep host_priv_self | awk '{ print "0x" }')
r2 -q -e scr.color=false -c "pd 2 @ $host_priv_self_addr" kernelcache 2> /dev/null | sed -n 's/0x//gp' | awk '{ print $NF }' | tr '[a-f]\n' '[A-F] ' | awk '{ print "obase=16;ibase=16;" "+" }' | bc | tr '[A-F]' '[a-f]' | awk '{ print "0x" }'
将其放入 .sh 文件中,使用 chmod +x
赋予它适当的权限。
重要提示:必须使用 https://www.theiphonewiki.com/wiki/Genoa_13G36_(iPod5,1)
中的正确 KEY + IV 解密内核文件花了一些时间 运行 这些是针对我手头的第 5 代 iPod Touch 9.3.5 的 IPSW。 KERNEL_MAP
偏移量为 0x80412010
.
你必须自己找到另一个。