在此处查找 https://github.com/CamsShaft/IonStack-S22
在我的 SM-S901W S22(5.10.168-android12-9-27760517-abS901WVLS4DWL3)上,以 selinux permissive 模式在内核域中实现了完整 root。
这次我不会深入细节或长篇大论,因为外面已经有大约 5,000 个类似的仓库了,而且据我所知,这些同一漏洞的几乎每个变体都是针对它们所适配的设备而独有的,我也厌倦了填写这些内容。我自己的这个来自这位才华横溢的先生,这种方法的所有功劳都归功于他 https://github.com/sarabpal-dev/IonStack-S22U 我会确切地展示为什么详尽的技术文章毫无意义,以及所包含的所有信息作为模板已经足够充分。下面是 sarabpal-dev 使用的设备,再下面是我的设备
设备:三星 Galaxy S22 Ultra (SM-S908W)
代号:b0q
Android:15 / SDK 35
构建号:AP3A.240905.015.A2.S908WVLS8FYG7
构建显示 ID:AP3A.240905.015.A2.S908WVLS8FYG7
构建指纹:samsung/b0qcsx/b0q:15/AP3A.240905.015.A2/S908WVLS8FYG7:user/release-keys
内核:5.10.226-android12-9-30958166-abS908WVLS8FYG7
架构:aarch64
设备:三星 Galaxy S22 (SM-S901W)
代号:r0q
Android:14 / SDK 34
构建号:UP1A.231005.007.S901WVLS4DWL3
构建显示 ID:UP1A.231005.007.S901WVLS4DWL3
构建指纹:samsung/r0qcsx/r0q:14/UP1A.231005.007/S901WVLS4DWL3:user/release-keys
内核:5.10.168-android12-9-27760517-abS901WVLS4DWL3
架构:aarch64
所以正如你所看到的,它们非常相似,但两者之间有一个非常大的区别。他的版本使用了一个完全以 32 位构建的可执行文件,而我的版本则必须将其改为 64 位,同时还要保持与其余代码的兼容性。我花了相当多的反汇编工作以及其他一些事情来验证这甚至是否是一条有效的可利用路径。幸运的是确实可行,但我不会对其他人做任何保证。我希望这仍然是一个很多人都能使用的好方法,但这取决于你们自己去摸索。README 和一些注释可能超出了该设备的范围,但代码是准确的,所以这才是对我来说重要的
附注:你需要的是 termux 中的 android-ndk,以及与你确切固件版本对应的 boot.img,用于提取内核和 kallsyms。我添加了日志记录功能,它会将文件保存到 /sdcard/cve-2026-43499.log,这样万一发生内核恐慌,你至少有一些信息可以依据,如果你不知道在重启后如何找到相关信息的话(如果是这种情况,你本不应该做这件事,但这也无关紧要了)。