Yeah but honestly that's not really a logical solutionNo...we can still temp boot the patched image without flashing it. Reboot obviously loses root but it's a good temporary solution.
Yeah but honestly that's not really a logical solutionNo...we can still temp boot the patched image without flashing it. Reboot obviously loses root but it's a good temporary solution.
Why not? If you rarely reboot your phone, it's at least enough to use it with root until we find a permanent solution. It's working for several people here who don't want to wipe data.
I can say for sure it's working for me until a permanent solution is discovered.Why not? If you rarely reboot your phone, it's at least enough to use it with root until we find a permanent solution. It's working for several people here who don't want to wipe data.
It would be nice to know if that works upgrading from 11 to 12; I'm guessing it does.I have found that I was able to go from 12b5 to 12 release without wipe and keeping root.
The main difference I am seeing between what I have done and others is that I manually applied the OTA update withadb sideload
then I was able to flash vbmeta (with verity disabled) as well as the patched boot img from the factory image, all in one go WITHOUT a reboot.
It would be nice to know if that works upgrading from 11 to 12; I'm guessing it does.
My guess is that when a system is upgraded to 12 via the OTA software update, verification is installed before reboot, and after the reboot the verification doesn't allow for removal of verification without a data wipe. The key is to install first, remove verification, root, then - and only then - reboot. That way verification is never allowed to execute before it is disabled. Perhaps someone would give that a try... (and document the commands)
vbmeta_system.img
? I've never seen it mentioned.I would guess that it's used to verify the integrity of /system. I don't think it really affects what we are trying to do, because Magisk is systemless.In this line of thought, I don't think I've seen this discussed, but... has anyone tried also flashing system besides boot and vbmeta? Would that work for removal of verification?
Edit: also, what's up withvbmeta_system.img
? I've never seen it mentioned.
Magisk Canary 23001: Click 3 dot Menu => Click app-debug.apk => Click 3 dot Menu above View raw => Click downloadSpeaking of older Magisk releases...Does anyone know how to get to the old Canary/beta versions? I'm pretty terrible at navigating Github, and I can only seem to find the stable releases.
Thanks!Magisk Canary 23001: Click 3 dot Menu => Click app-debug.apk => Click 3 dot Menu above View raw Click download
I think that this is unclear. Certainly once the upgrade has been performed and the system rebooted it does look like a wipe is needed (because verification is active). And taking the offered OTA would reboot automatically IIRC and thus root would require a wipe. But as I posted earlier if the OTA is sideloaded and then verification is turned off and boot.img flashed before reboot, verification should never be active (i.e. it would be disabled before it was ever executed).Data wipe is required for permanent root after upgrading to Android 12. That much we know.
Well, that's why data wipe is required when unlocking the bootloader. If what you're saying about verification is correct, then you would have to wipe /data every time there's a new system configuration, such as an update.I think that this is unclear. Certainly once the upgrade has been performed and the system rebooted it does look like a wipe is needed (because verification is active). And taking the offered OTA would reboot automatically IIRC and thus root would require a wipe. But as I posted earlier if the OTA is sideloaded and then verification is turned off and boot.img flashed before reboot, verification should never be active (i.e. it would be disabled before it was ever executed).
As for whether security updates can be installed and rooted without a wipe I think we will have to wait to find out. For an update we do have to remove root but I don't think we know yet if verification has to be enabled first for the OTA to start - it all depends on what Google decides to do. As long as the OTA doesn't check or enable verification then we should be good to update and root without a wipe. If an OTA enables verification then a sideload of the update followed by disabling verification and root before reboot might do the job. Even if verification must be enabled before the OTA it might still be possible to enable, sideload, disable, root in one go before reboot.
The whole point of verification is to ensure that Google-signed images are used to boot and for system. This ensures that the system has not been rooted or persistent malware installed, in order to protect the user data from compromise. If the device could be rooted without a data wipe then verification could be circumvented. Hence when rooting one must turn off verification, and when turning off verification the data must be wiped to ensure that the rooting is not done for the purpose of unauthorized access to the user data. Since they just added verification in 12 as a default we are having to work around that either with a sideload or just a wipe. The question is whether going forward future updates respect the verification status or whether they require or re-enable it - which is unnecessary but Google does have a history of unilaterally imposing security decisions. We''ll have to wait to find out.
No, that is not so. There is no reason an update can't be done that preserves /data and verification status. That is a choice that Google will make but is not inherent to verification. The whole point is to protect user data, which is why /data is wiped when verification is removed: that data is protected and protection extends to removal when that defense is removed. 12 installs verification across the board, but if it is then removed (and the data wiped) then any later data is in an unverified environment - as chosen by the user. There is no need to re-install verification - the user's decision should be respected - but Google might anyway.Well, that's why data wipe is required when unlocking the bootloader. If what you're saying about verification is correct, then you would have to wipe /data every time there's a new system configuration, such as an update.
Another problem with this theory is the fact that we can still live boot a rooted kernel on an otherwise stock system, without modifying any partitions.
I'm not sure I follow. Unlocked bootloader has always permitted live boot of an image regardless of what's actually in the /boot partition. This has been true of all Pixel phones, and in fact many other devices from other OEMs. In the case of the Pixel 5 (and 4a and 5a), you can live boot a patched image on an otherwise stock ROM without wiping data - as long as the image actually in /boot is stock. Once you decide you want permanent root by flashing a patched image, you have to disable verification, which will require a data wipe, at least in the case of an upgrade.No, that is not so. There is no reason an update can't be done that preserves /data and verification status. That is a choice that Google will make but is not inherent to verification. The whole point is to protect user data, which is why /data is wiped when verification is removed: that data is protected and protection extends to removal when that defense is removed. 12 installs verification across the board, but if it is then removed (and the data wiped) then any later data is in an unverified environment - as chosen by the user. There is no need to re-install verification - the user's decision should be respected - but Google might anyway.
Yes, there are probably still some ways around verification but your example is flawed. That vulnerability only exists if you are sloppy enough to leave USB debugging enabled. And enabling USB debugging requires device access through the user authentication, so is not a work-around to authenticated access if you just know what you are doing - an assumption for developer mode. For the great majority of users that never enable developer mode (and thus never enable USB debugging) this is not a vulnerability - the stock system can't be accessed from a PC via USB for fastboot or adb (at least that is my understanding). And Google has been very clear that USB debugging should be disabled when not actively being used, because it is a vulnerability.
The main job of avbtool is to create vbmeta.img which is the top-level object for verified boot. This image is designed to go into the vbmeta partition (or, if using A/B, the slot in question e.g. vbmeta_a or vbmeta_b) and be of minimal size (for out-of-band updates). The vbmeta image is cryptographically signed and contains verification data (e.g. cryptographic digests) for verifying boot.img, system.img, and other partitions/images.
Rescue Party receives information about boot and crash events and starts if:
When one of these situations is detected, Rescue Party escalates to the next rescue level, processes the task associated with that level, and lets the device proceed to see if it recovers. Each level is progressively more aggressive in what it clears or resets. The final level prompts the user to factory reset the device.
- The system_server restarts more than 5 times in 5 minutes.
- A persistent system app crashes more than 5 times in 30 seconds.
No special hardware support is required to support Rescue Party. If implemented, a device's recovery system must respond to the --prompt_and_wipe_data command and devices must surface a way for users to confirm any destruction of user data before proceeding. The recovery system should also give the user the option of attempting to boot their device again.
If you aren't worried about wiping, then yes. Follow the instructions at the beginning of this thread.I'm not sure to understand, I have just updated my new Pixel 5 to Android 12, so I'm not worry to wipe my data or reset the phone, can I install Magisk and root my phone?
Thank you
Thank you it worked like a charm.If you aren't worried about wiping, then yes. Follow the instructions at the beginning of this thread.
Just updated my Pixel 5 to the November Sec Patch without any data loss. Since I'd disabled vbmeta before, steps were simple:@Anonshe posted ths method in the Pixel 6 Pro thread. Does this work for the Pixel 4a 5(G), Pixel 5 or the Pixel 5a?
fastboot --disable-verification --disable-verity flash vbmeta vbmeta.img
fastboot boot magisk_patched.img
For all the updates from beta 2 - 3 I've followed this process without fail:Has anyone sucefully rooted beta 3?
Patched boot image with magisk canary if I only boot the image it starts
Then tried to flash patched boot image and get stuck in bootloader
Yeah I wouldn't do this unless you've started from the initial process op outlined. I did this moving from beta 2 to 2.1 and then beta 2.1 to beta 3. However beta 2 was my first android 12 install, which I used ops procedure to achieve.