Question [CLOSED] Read this before rooting your Raven ***OBSOLETE***

Status
Not open for further replies.
Search This thread

V0latyle

Forum Moderator
Staff member
Firmware is out
I don't have the experience with messing with dm-verity so I can't answer for sure (someone else correct me if I'm wrong), but I think it's a one time thing, so long as you don't flash vbmeta again without it? So basically don't use flash-all and flash the images manually, skipping vbmeta.

V0latyle was also saying that the requirement was worked around on the other Pixels anyway so it might not even be required by the next monthly patch.

In fact, re-reading his message again I could probably have got stock to boot again if I re-flashed vbmeta, which just shows my lack of experience with the newer Pixels.
The solution, if you can call it that, was to avoid the automatic OTA; instead, sideload the OTA via ADB, then enter fastboot without rebooting, and flash /vbmeta and /boot.

Still not 100%, I tested this on my Pixel 5 and got stuck at rescue party too...with the stock images.

If it makes you feel any better, those of us who updated to Android 12 already have another update notification, but the OTA hasn't been posted to Google yet, so there's no way to compare the build number.
 

Quinny899

Recognized Developer / Recognized Contributor
Jan 26, 2011
9,428
8,754
26
Salford, Greater Manchester, UK
quinny898.co.uk
1635445408510.png


Confirmed.
 

Quinny899

Recognized Developer / Recognized Contributor
Jan 26, 2011
9,428
8,754
26
Salford, Greater Manchester, UK
quinny898.co.uk
Awesome.

Did you get the "your system may be corrupted" message after flashing /vbmeta and /boot?

I'm wondering if perhaps the issue was the previous version of Magisk.
Yes, after flashing just boot (before I realised you had to do vbmeta too), and also after. Not sure if the latter was due to the former, but I'd guess it probably still happens if you flash boot *and* disable vbmeta in one swoop.

FYI, "Your system may be corrupted" is what I refer to as Rescue Party, because it does the same thing (though it might be something different as Rescue Party is in the system and it didn't get that far): https://source.android.com/devices/tech/debug/rescue-party
 

V0latyle

Forum Moderator
Staff member
Yes, after flashing just boot (before I realised you had to do vbmeta too), and also after. Not sure if the latter was due to the former, but I'd guess it probably still happens if you flash boot *and* disable vbmeta in one swoop.

FYI, "Your system may be corrupted" is what I refer to as Rescue Party, because it does the same thing (though it might be something different as Rescue Party is in the system and it didn't get that far): https://source.android.com/devices/tech/debug/rescue-party
Yeah, that's Rescue Party. Us Pixel 5 guys still haven't figured out why that's happening.

Might be something to do with Magisk and ramdisk, I have no idea.
 

Lughnasadh

Senior Member
Mar 23, 2015
6,174
7,673
Google Nexus 5
Huawei Nexus 6P
Firmware is out

The solution, if you can call it that, was to avoid the automatic OTA; instead, sideload the OTA via ADB, then enter fastboot without rebooting, and flash /vbmeta and /boot.

Still not 100%, I tested this on my Pixel 5 and got stuck at rescue party too...with the stock images.

If it makes you feel any better, those of us who updated to Android 12 already have another update notification, but the OTA hasn't been posted to Google yet, so there's no way to compare the build number.
If I'm understanding this right, then flashing the factory image with the -w removed from the flash-all.bat file "may" not work because after you do that it automatically reboots and you want to avoid rebooting before disabling dm-verity? Or did this just pertain to going from Beta to Stable 12?

Trying to understand this because it seems that if you flash the factory image with the -w removed, you are on an unrooted/unmodified boot.img so having to disable dm-verity shouldn't be needed at that point because you aren't rooted when it automatically boots up after flashing the factory image. And that when disabling dm-verity is needed is before you boot up with a patched boot image.

Does that make any sense?
 

V0latyle

Forum Moderator
Staff member
If I'm understanding this right, then flashing the factory image with the -w removed from the flash-all.bat file "may" not work because after you do that it automatically reboots and you want to avoid rebooting before disabling dm-verity? Or did this just pertain to going from Beta to Stable 12?

Trying to understand this because it seems that if you flash the factory image with the -w removed, you are on an unrooted/unmodified boot.img so having to disable dm-verity shouldn't be needed at that point because you aren't rooted when it automatically boots up after flashing the factory image. And that when disabling dm-verity is needed is before you boot up with a patched boot image.

Does that make any sense?
You can dirty flash the system image if you want; honestly I don't see the point vs sideloading the OTA. So far, the only way of (possibly) avoiding Rescue Party and a data wipe is to use the OTA > fastboot method.

However, if you want to start completely clean, you can add the disable flags when you flash the system image:
Code:
fastboot update -w --disable-verity --disable-verification raven-image.zip

When the update completes, you can force bootloader via key combo, flash the patched boot.img, and boot into fresh Android 12 with root.

On the other hand, if you don't care about root, then yes, you can either OTA or dirty flash factory, it makes no difference.
 

Lughnasadh

Senior Member
Mar 23, 2015
6,174
7,673
Google Nexus 5
Huawei Nexus 6P
You can dirty flash the system image if you want; honestly I don't see the point vs sideloading the OTA. So far, the only way of (possibly) avoiding Rescue Party and a data wipe is to use the OTA > fastboot method.

However, if you want to start completely clean, you can add the disable flags when you flash the system image:
Code:
fastboot update -w --disable-verity --disable-verification raven-image.zip

When the update completes, you can force bootloader via key combo, flash the patched boot.img, and boot into fresh Android 12 with root.

On the other hand, if you don't care about root, then yes, you can either OTA or dirty flash factory, it makes no difference.
Thanks for that info. Yeah, for the last several years I'm just used to flashing the factory image without the -w to keep data, having it automatically boot without being rooted, then patching the boot image, and going back an flashing that.

But it sounds like now may be the method du jour would be to just sideload the OTA and go from there.

Sounds good 👍
 
Last edited:

Quinny899

Recognized Developer / Recognized Contributor
Jan 26, 2011
9,428
8,754
26
Salford, Greater Manchester, UK
quinny898.co.uk

V0latyle

Forum Moderator
Staff member
On the Magisk note, I just tried using Magisk stable to see if I could get Hide working, but it fails to extract the boot image. I would guess that the patching updates mentioned in the changelog are important: https://cdn.jsdelivr.net/gh/topjohnwu/magisk-files@9537c5d8cedfc09ca723ae0392b1219e75d9b636/notes.md

This does mean we're "stuck" with zygisk, though modules are adding support pretty fast so it's not the end of the world.
I was able to use Canary 23001 on the Pixel 5.

To pass SafetyNet on 23010/23011, you'll have to use pre-Riru Universal SafetyNet Fix (v1.2.0) and MagiskHide Props Config. USNF 2.0.0+ was written for Riru, which is not compatible with Zygisk.
 

Quinny899

Recognized Developer / Recognized Contributor
Jan 26, 2011
9,428
8,754
26
Salford, Greater Manchester, UK
quinny898.co.uk
I was able to use Canary 23001 on the Pixel 5.

To pass SafetyNet on 23010/23011, you'll have to use pre-Riru Universal SafetyNet Fix (v1.2.0) and MagiskHide Props Config. USNF 2.0.0+ was written for Riru, which is not compatible with Zygisk.
23001 doesn't work either sadly. USNF 1.2.0 also rejects Android 12, but there's an early build of 2.0 here that is pre-riru and installs fine. Someone on Reddit linked that. Not got it to pass yet, working on it.
 

V0latyle

Forum Moderator
Staff member
Whoa--so you are seeing that with >P4a (and P6/P), one can update via OTA sideload and gain permanent root without having to wipe (with verity flags, of course)?
Potentially. Not a guarantee by any means.

The trick is to sideload the OTA, then immediately enter fastboot and flash vbmeta and boot.
 

Ingenium13

Senior Member
Dec 25, 2006
384
161
Pittsburgh, PA
You can dirty flash the system image if you want; honestly I don't see the point vs sideloading the OTA. So far, the only way of (possibly) avoiding Rescue Party and a data wipe is to use the OTA > fastboot method.

However, if you want to start completely clean, you can add the disable flags when you flash the system image:
Code:
fastboot update -w --disable-verity --disable-verification raven-image.zip

When the update completes, you can force bootloader via key combo, flash the patched boot.img, and boot into fresh Android 12 with root.

On the other hand, if you don't care about root, then yes, you can either OTA or dirty flash factory, it makes no difference.
You can likely remove -w and add --skip-reboot so that you can flash patched boot without rebooting. That's how I historically did the updates: extract boot.img and patch. Reboot to bootloader, replace -w with --skip-reboot in the flash-all script, then fastboot flash magisk patched boot. That might be enough to avoid Rescue Party?
 

V0latyle

Forum Moderator
Staff member
You can likely remove -w and add --skip-reboot so that you can flash patched boot without rebooting. That's how I historically did the updates: extract boot.img and patch. Reboot to bootloader, replace -w with --skip-reboot in the flash-all script, then fastboot flash magisk patched boot. That might be enough to avoid Rescue Party?
Unsure, although probably not TBH.
 
  • Like
Reactions: roirraW "edor" ehT
You guys are amazing. Fastest from open box brand new phone to root I've ever had.

FYI, the patching process works for Fi as well as Verizon, though I hadn't accepted the OTA prior to patching. I did have to do the wipe after the verity, but I'd just opened the box and wiped for the unlocked bootloader anyway, so literally lost zero data.

root working, I'm transferring files now. Not sure about banking apps, etc., but I only had a few apps in my MagiskHide on my old Pixel 3 (Peacock, Google Pay and my banking apps). Guessing they'll work with deny now.
 

Cares

Senior Member
Dec 2, 2010
1,537
283
Google Pixel 4 XL
Google Pixel 8 Pro
You guys are amazing. Fastest from open box brand new phone to root I've ever had.

FYI, the patching process works for Fi as well as Verizon, though I hadn't accepted the OTA prior to patching. I did have to do the wipe after the verity, but I'd just opened the box and wiped for the unlocked bootloader anyway, so literally lost zero data.

root working, I'm transferring files now. Not sure about banking apps, etc., but I only had a few apps in my MagiskHide on my old Pixel 3 (Peacock, Google Pay and my banking apps). Guessing they'll work with deny now.

All my apps work fine with MagiskHide and Zygist. Unfortunately I can't pass any part of SafetyNet so I can't use GPay and Chase bank also prevents biometrics with root detected.
 

bd177

Senior Member
Jan 26, 2010
482
145
Tonawanda NY
Incorrect. DM verity and vbmeta verification MUST be disabled to run a patched boot image. This is true regardless of whether it's the 12 Beta or the public release.


Remove Magisk via the Uninstall option within the app; first use Restore Images, then use Complete Uninstall. This will restore the boot image, so you don't have to. It will then reboot the phone.

At that point, yes, you would install the older version of Magisk, then root as usual by patching the boot image.
I rooted the android 12 release version on my Pixel 4XL by patching the boot image. I first adb sideloaded the OTA image then rebooted from recovery to bootloader and fastboot flashed the magisk boot image. I didn't do anything else. The only thing that doesn't work are GPay etc.
 
Status
Not open for further replies.

Top Liked Posts

  • There are no posts matching your filters.
  • 18
    Update 12-16-21: As of Magisk 23016, the below is no longer relevant; verity/verification need not be disabled for root.

    For instructions on rooting your Pixel 6 Pro, see this guide.


    This thread will be closed.



    For those of you who are planning on rooting:

    Be aware that Android 12 changed the way boot images are loaded, at least on the Pixel 4, 4a, and 5. We have no reason to believe the Pixel 6/Pro will be any different.

    Two new Verified Boot features implemented in Android 12 will interfere with attempts to root.

    Dm-verity (device-mapper-verity) is a method by which an image on block devices (the underlying storage layer of the file system) can be checked to determine if it matches an expected configuration, using a cryptographic hash tree. If the hash doesn't match, dm-verity prevents the stored code from loading.

    Vbmeta verification is the other half of this - it provides a cryptographically signed reference hash which is used to verify the integrity of /boot, /system, and /vendor partitions. The vbmeta image is only used to verify /boot, while vbmeta-system is used to verify /system.

    This was implemented to prevent persistent rootkits by means of a hardware level security check, to prevent "potentially harmful applications" such as Magisk from evading detection, as such applications residing within the kernel will have higher privileges than the detection applications.

    What this means is that with these two enabled, a modified boot image will cause a verification error when flashed to the device, preventing boot. Interestingly, this check is not performed against "live" boot images loaded via ADB, so with dm-verity and vbmeta verification enabled, a modified image can be booted as long as the image in /boot is intact.


    Dm-verity and vbmeta verification will need to be disabled in order to flash a rooted boot image. Unfortunately, this means that you will have to wait for the factory firmware to be released.

    fastboot flash vbmeta --disable-verity --disable-verification vbmeta.img

    We also discovered that a data wipe is required in order to get permanent root; flashing /vbmeta with the disable flags gets you stuck in recovery with "Unable to load Android system, your data may be corrupted" error if you didn't wipe /data when you upgraded. To be clear, this only happens in a specific circumstance:
    * You updated to Android 12 without a wipe, AND
    * You reflash vbmeta with the disable flags


    Here are some threads in the Pixel 5 forum on the matter:
    12
    Cheers for this, much appreciated. I can confirm (yet again) that you have to do disable-verity to root the P6 Pro. It's early enough since getting the phone (literally today) that wiping data isn't too much of a hassle at this stage IMO.

    Factory images are now up, I've just booted a freshly wiped phone with a magisk patch image, transferring stuff again now :)
    8
    Alright, so it's possible. Props to @snovvman for linking the vvb2060 repo, because if you read into the bits in English on the telegram, you'll discover that it has MagiskHide still, as an option.

    So:
    Download the latest alpha build from https://t.me/magiskalpha
    Install it by patching the boot image and flashing in fastboot. You might be able to do a direct install, but I patched it manually and checked it booted with fastboot first first to be safe.
    After it boots, you may need to uninstall a hidden Magisk manager if you didn't already - at this point the alpha build will take over, and tell you it needs to install some files and reboot, allow it.
    After rebooting, go into the Magisk settings and disable Zygisk. A magisk hide option will magically appear. Reboot.
    Install Riru and the latest Universal SafetyNet Fix. There's no repo in the build, so you need to get these from GitHub. I also have MagiskHide Props Config installed, but not with any BASIC spoofing enabled, just installed - not sure if that's required. Doesn't seem to be required.
    Reboot.
    Make sure you have Play Services unstable and snet added to your DenyList (it's still called DenyList, but it's Hide)

    Job done!

    1635533860772.png
    6
    The loss of "Hide Magisk" in the lastest release means a few of my apps (banking and work expense) are not going to work if I root my Pixel 6 P. So disappointing. I will miss GravityBox the most, but will learn to live without it.
    Magisk 23010 has DenyList, which works exactly like MagiskHide. However, getting Safetynet to pass is more complicated, as Riru is not compatible with 23010, so you can't use Universal SafetyNet Fix 2.0.0 or newer. So, I went back to Magisk 23001.