How To Guide September 12, 2022 Verizon factory image (TP1A.220905.004.A1) - PSA about Android 13 in OP - Unlocking the Pixel 6 Pro bootloader & central repository

Search This thread

Sneakyghost

Senior Member
Jul 24, 2008
8,311
13,595
InMyHead
There actually is a physical object being destroyed. Yes, there isn't a typical fuse being blown, as a typical fuse blows and opens the circuit. Instead what is implemented is an antifuse. These are the opposite of fuses ("anti") and are normally open. When enough voltage is passed they blow closed, and they actually do blow, they use oxide-breakdown cells that physically break down when the voltage threshold is met. This is more favorable for integrated circuits as blocking flow is a 0 and flowing is a 1. Old terminology hangs around and still refers to these as a fuse, from IBM's technology they named "eFuses" even though they perform opposite of a fuse. The modern terminology is to call them One-Time Programmable memory, or OTP memory. Modern processors have plenty of these. I don't know how many OTP bits are included on Tensor, but another ARM SoC the Rockchip RK3399 has 2 kibibits worth of OTP.

You can read more about them in this PDF, page 31 chapter 6 section 3.

There are OTP cells being blown, inside boot_control it is invoking a system monitor call with what I think are called contexts or secure applications, SMC_CM_OTP_CONTROL (0xC2001014UL).
OTP_CONTROL being One-Time Programmable Control.
The other things being passed are CMD_W_ANTIRBK_NS_AP (0x7UL) and CMD_W_ANTIRBK_S_AP (0x9UL), which are the bits (7 and 9) being blown. I can only infer that the NS and S are for the normal world (NS) and secure world (S).

As for when /sys/kernel/boot_control/blow_ar is being blown, it is blown inside BootControl::markBootSuccessful, which is what is setting both the fuse and writing to devinfo that the slot had booted successfully. I don't know when exactly a boot is successful, but it is being ran by a service after Android boots up enough to be considered a success.

What does it change and how does the bootloader use this? Well, we'll never know. We're not privileged enough to know this. The source code for the many (there's something like four) bootloaders are kept closed source. Anything below the kernel and device tree we just don't know. Given that there is a bricked Pixel 6 out there due to the bits being blown on A13 and the slot switched back to A12, it isn't just the Android bootloader checking this, it's below that in either the BL1 or BL2 boot firmware. This I assume lines up with the bits being blown for normal world and secure world, as BL1 operates in the secure world while the Android bootloader operates in the normal world.

What can we do about this? Really, nothing.

I have used physical eFuse's in my EE job IRL, so yeah, I wouldn't want to trip that :). Thanks for the information!
Thanks guys. Always apreciate learning new stuff. I was aware of electromigration as one mechanism but this "oxide breakdown" bit has me interested. I will have to look that up now. Learn more :)
 

V0latyle

Forum Moderator
Staff member
There actually is a physical object being destroyed. Yes, there isn't a typical fuse being blown, as a typical fuse blows and opens the circuit. Instead what is implemented is an antifuse. These are the opposite of fuses ("anti") and are normally open. When enough voltage is passed they blow closed, and they actually do blow, they use oxide-breakdown cells that physically break down when the voltage threshold is met. This is more favorable for integrated circuits as blocking flow is a 0 and flowing is a 1. Old terminology hangs around and still refers to these as a fuse, from IBM's technology they named "eFuses" even though they perform opposite of a fuse. The modern terminology is to call them One-Time Programmable memory, or OTP memory. Modern processors have plenty of these. I don't know how many OTP bits are included on Tensor, but another ARM SoC the Rockchip RK3399 has 2 kibibits worth of OTP.

You can read more about them in this PDF, page 31 chapter 6 section 3.

There are OTP cells being blown, inside boot_control it is invoking a system monitor call with what I think are called contexts or secure applications, SMC_CM_OTP_CONTROL (0xC2001014UL).
OTP_CONTROL being One-Time Programmable Control.
The other things being passed are CMD_W_ANTIRBK_NS_AP (0x7UL) and CMD_W_ANTIRBK_S_AP (0x9UL), which are the bits (7 and 9) being blown. I can only infer that the NS and S are for the normal world (NS) and secure world (S).

As for when /sys/kernel/boot_control/blow_ar is being blown, it is blown inside BootControl::markBootSuccessful, which is what is setting both the fuse and writing to devinfo that the slot had booted successfully. I don't know when exactly a boot is successful, but it is being ran by a service after Android boots up enough to be considered a success.

What does it change and how does the bootloader use this? Well, we'll never know. We're not privileged enough to know this. The source code for the many (there's something like four) bootloaders are kept closed source. Anything below the kernel and device tree we just don't know. Given that there is a bricked Pixel 6 out there due to the bits being blown on A13 and the slot switched back to A12, it isn't just the Android bootloader checking this, it's below that in either the BL1 or BL2 boot firmware. This I assume lines up with the bits being blown for normal world and secure world, as BL1 operates in the secure world while the Android bootloader operates in the normal world.

What can we do about this? Really, nothing.
Thanks for the detailed explanation. I wonder why this is the first time we are hearing of the e-fuse? It also makes one wonder why Google is taking such permanent measures, given their generally open attitude towards developers on Pixel/Nexus devices...like, who cares if someone was able to downgrade?

As far as what it does and what it changes, it sounds like this is something we'll have to find out for ourselves unfortunately. But for the time being I would think it's safe to say that everyone updating should flash the A13 bootloader to both slots just to be safe in case of a alternate slot bootloop.
 
  • Like
Reactions: Namelesswonder

roirraW "edor" ehT

Forum Moderator
Staff member
It also makes one wonder why Google is taking such permanent measures, given their generally open attitude towards developers on Pixel/Nexus devices...like, who cares if someone was able to downgrade?

tweet-about-not-being-able-to-downgrade-from-android-13-png.5687733
 

Namelesswonder

Senior Member
Jan 26, 2014
270
400
Google Pixel XL
Google Pixel 6 Pro
Thanks for the detailed explanation. I wonder why this is the first time we are hearing of the e-fuse? It also makes one wonder why Google is taking such permanent measures, given their generally open attitude towards developers on Pixel/Nexus devices...like, who cares if someone was able to downgrade?

As far as what it does and what it changes, it sounds like this is something we'll have to find out for ourselves unfortunately. But for the time being I would think it's safe to say that everyone updating should flash the A13 bootloader to both slots just to be safe in case of a alternate slot bootloop.
I don't know why, but it could be because of this: https://blog.quarkslab.com/attacking-titan-m-with-only-one-byte.html

The time frame lines up, antirollback commit was implemented in the days after Google told the researcher they are developing a fix.

And it's pretty big, allowing the ex-filtration of the secret keys inside the Titan and doing arbitrary code execution right on the Titan, a complete permanent compromise of the device. This is probably why Google is trying to stop people from downgrading to Android 12. Understandable why this is the first time Google is doing this, someone can resell this permanently compromised device to anyone, or do this to someone's phone. It's too late though, any Tensor device not updated to Android 13 could be forever compromised, so really the security theater of Pixel devices has just been torn down. We'll see if the Pixel 7 or Titan M3 fares better. Previous Pixel phones do not implement these OTP bit checks inside their bootloaders so I believe they are never going to have to worry about being stopped from downgraded, although they are susceptible to compromise.

The average person should never brick their phone from this, the GrapheneOS tester only had this happen because they were testing GrapheneOS on Android 13 and were capable of flashing a borked ROM.
But yes if you're updating to Android 13 manually via fastboot just run

  1. fastboot --slot all flash bootloader bootloader.img
  2. fastboot --slot all flash radio radio.img
  3. fastboot reboot bootloader
  4. fastboot --slot all update image.zip
    1. If using Magisk then use fastboot --slot all --skip-reboot update image.zip and select reboot to bootloader in fastbootd once fastboot is done flashing to flash your patched Magisk boot image.
If you are already on Android 13 then just perform steps 1-2-3.
 
Last edited:

rester555

Senior Member
Oct 27, 2010
483
184
Google Pixel 6 Pro
Worked like a charm for
I don't know why, but it could be because of this: https://blog.quarkslab.com/attacking-titan-m-with-only-one-byte.html

The time frame lines up, antirollback commit was implemented in the days after Google told the researcher they are developing a fix.

And it's pretty big, allowing the ex-filtration of the secret keys inside the Titan and doing arbitrary code execution right on the Titan, a complete permanent compromise of the device. This is probably why Google is trying to stop people from downgrading to Android 12. Understandable why this is the first time Google is doing this, someone can resell this permanently compromised device to anyone, or do this to someone's phone. It's too late though, any Tensor device not updated to Android 13 could be forever compromised, so really the security theater of Pixel devices has just been torn down. We'll see if the Pixel 7 or Titan M3 fares better. Previous Pixel phones do not implement these OTP bit checks inside their bootloaders so I believe they are never going to have to worry about being stopped from downgraded, although they are susceptible to compromise.

The average person should never brick their phone from this, the GrapheneOS tester only had this happen because they were testing GrapheneOS on Android 13 and were capable of flashing a borked ROM.
But yes if you're updating to Android 13 manually via fastboot just run

  1. fastboot --slot all flash bootloader bootloader.img
  2. fastboot --slot all flash radio radio.img
  3. Reboot the phone
  4. fastboot --skip-reboot update image.zip
  5. Select reboot to bootloader from inside fastbootd
  6. fastboot --set-active=other
  7. fastboot update image.zip
  8. If using Magisk then add a --skip-reboot to then boot back into the bootloader to flash your patched image.
Worked like a charm for me. Thanks for the inputs everyone. EDIT: As a side note, A13 voice to text is MUCH better than A12 and before.
 

LLStarks

Senior Member
Jun 1, 2012
1,934
1,147
The Titan exploit certainly fits the bill for Google needing to use a firmware feature they normally hate using.

And this is on top of recent reports that the Pixel 6 was thoroughly defeated their security red team right before launch.
 
  • Like
Reactions: roirraW "edor" ehT

V0latyle

Forum Moderator
Staff member
I don't know why, but it could be because of this: https://blog.quarkslab.com/attacking-titan-m-with-only-one-byte.html

The time frame lines up, antirollback commit was implemented in the days after Google told the researcher they are developing a fix.

And it's pretty big, allowing the ex-filtration of the secret keys inside the Titan and doing arbitrary code execution right on the Titan, a complete permanent compromise of the device. This is probably why Google is trying to stop people from downgrading to Android 12. Understandable why this is the first time Google is doing this, someone can resell this permanently compromised device to anyone, or do this to someone's phone. It's too late though, any Tensor device not updated to Android 13 could be forever compromised, so really the security theater of Pixel devices has just been torn down. We'll see if the Pixel 7 or Titan M3 fares better. Previous Pixel phones do not implement these OTP bit checks inside their bootloaders so I believe they are never going to have to worry about being stopped from downgraded, although they are susceptible to compromise.
Interesting. It sounds like this could potentially backdoor the new Play Integrity API as well because that relies on TEE and HKA.
The average person should never brick their phone from this, the GrapheneOS tester only had this happen because they were testing GrapheneOS on Android 13 and were capable of flashing a borked ROM.
But yes if you're updating to Android 13 manually via fastboot just run

  1. fastboot --slot all flash bootloader bootloader.img
  2. fastboot --slot all flash radio radio.img
  3. Reboot the phone
  4. fastboot --skip-reboot update image.zip
  5. Select reboot to bootloader from inside fastbootd
  6. fastboot --set-active=other
  7. fastboot update image.zip
  8. If using Magisk then add a --skip-reboot to then boot back into the bootloader to flash your patched image.
Why not update both slots at the same time? fastboot update --skip-reboot --slot=all image-device-buildnumber.zip

I always get the message Warning: slot set to 'all'. Secondary slots will not be flashed. however it does flash both slots...

1660687015061.png
 

Namelesswonder

Senior Member
Jan 26, 2014
270
400
Google Pixel XL
Google Pixel 6 Pro
Interesting. It sounds like this could potentially backdoor the new Play Integrity API as well because that relies on TEE and HKA.

Why not update both slots at the same time? fastboot update --skip-reboot --slot=all image-device-buildnumber.zip

I always get the message Warning: slot set to 'all'. Secondary slots will not be flashed. however it does flash both slots...

You are correct, it does flash correctly now. It was a habit from legacy A/B devices before dynamic partitions that fastboot didn't flash secondary slots correctly.
 
  • Like
Reactions: roirraW "edor" ehT

roirraW "edor" ehT

Forum Moderator
Staff member
If you have an unlocked bootloader, or at least have OEM unlocking enabled (in the second case, the site will unlock the bootloader for you). And you make sure the "Wipe" option gets unchecked.

Some people like me like to have a little more hands-on approach.
 

V0latyle

Forum Moderator
Staff member
If you have an unlocked bootloader, or at least have OEM unlocking enabled (in the second case, the site will unlock the bootloader for you). And you make sure the "Wipe" option gets unchecked.

Some people like me like to have a little more hands-on approach.
Additionally the online tool does not have the ability to flash external images, such as a Magisk patched boot image.
 
  • Like
Reactions: roirraW "edor" ehT

Lughnasadh

Senior Member
Mar 23, 2015
3,903
4,170
Google Nexus 5
Huawei Nexus 6P
Of course, there's also the Pixel Flasher, which can flash to both slots and keep root, among many other things.

 

i42o

Senior Member
Dec 5, 2013
756
288
Riverside
Google Pixel 6 Pro
If you have an unlocked bootloader, or at least have OEM unlocking enabled (in the second case, the site will unlock the bootloader for you). And you make sure the "Wipe" option gets unchecked.

Some people like me like to have a little more hands-on approach.
i am somewhat knowledgable on flashing process, but i am currently on Lineage 19.1 and will be jumping directly from LOS to android 13. i have to select wipe as my data is coming from custom oS no??? i would select force flash all partitions to ensure both slots get flashed??? this anti roll back thing has never worried me and i dont want to brick my 6 pro..... is the upgrade from coming from custom os???
 
  • Like
Reactions: roirraW "edor" ehT

roirraW "edor" ehT

Forum Moderator
Staff member
i am somewhat knowledgable on flashing process, but i am currently on Lineage 19.1 and will be jumping directly from LOS to android 13. i have to select wipe as my data is coming from custom oS no???
Yes, absolutely. In that case, I would also choose the Android Flash Tool's option to force flash all partitions, too.

i would select force flash all partitions to ensure both slots get flashed???
Ha! I was writing before I finished reading. Yes.

this anti roll back thing has never worried me and i dont want to brick my 6 pro.....

is the upgrade from coming from custom os???
Is there supposed to be another word in there, such as "safe"?
Like: is the upgrade safe from coming from custom os???

If that was your intended question, I have no idea from personal experience on the Pixel 6 Pro. Presumptively, yes, it's as safe as flashing stock from any custom OS I've ever used in the last 12 years has been. I don't definitively answer Yes to a scenario I haven't actually experienced myself unless it's brought up so often in the forum threads I visit that I know the answer without a doubt.

For what it's worth, I don't think the Android 13 bootloader not being able to be downgraded will have any effect on your process, since that's not what you're doing.

Hope that helps.
 

roirraW "edor" ehT

Forum Moderator
Staff member
Since we're talking about security a bit, here's what LLStarks was referring to, I believe...

Glad to know they ran *some* aspects of the P6/Pro through the relative wringer before launch! :D

That must be why they ran out of time fixing everything else. Yeah, that's it. 🙃 © @Lughnasadh
 
  • Haha
Reactions: jcp2 and Lughnasadh

Top Liked Posts

  • 5
    Looks like they finally updated the "Updating Pixel 6, Pixel 6 Pro, and Pixel 6a devices to Android 13 for the first time" section on the download page to include the correct command for Option 2 (adb reboot bootloader rather than adb reboot fastboot).
    5

    BulletinLanguagesPublished dateSecurity patch level
    September 2022Coming soonSeptember 6, 20222022-09-05

    Pixel Update Bulletin—September 2022​


    Published September 6, 2022
    The Pixel Update Bulletin contains details of security vulnerabilities and functional improvements affecting supported Pixel devices (Google devices). For Google devices, security patch levels of 2022-09-05 or later address all issues in this bulletin and all issues in the September 2022 Android Security Bulletin. To learn how to check a device's security patch level, see Check and update your Android version.
    All supported Google devices will receive an update to the 2022-09-05 patch level. We encourage all customers to accept these updates to their devices.
    Note: The Google device firmware images are available on the Google Developer site.

    Announcements​

    • In addition to the security vulnerabilities described in the September 2022 Android Security Bulletin, Google devices also contain patches for the security vulnerabilities described below.

    Security patches​

    Vulnerabilities are grouped under the component that they affect. There is a description of the issue and a table with the CVE, associated references, type of vulnerability, severity, and updated Android Open Source Project (AOSP) versions (where applicable). When available, we link the public change that addressed the issue to the bug ID, like the AOSP change list. When multiple changes relate to a single bug, additional references are linked to numbers following the bug ID.

    Kernel components​

    CVEReferencesTypeSeverityComponent
    CVE-2022-28388A-228694483
    Upstream kernel
    EoPModerateKernel

    Pixel​

    CVEReferencesTypeSeverityComponent
    CVE-2022-20231A-211485702*EoPCriticalTrusty
    CVE-2022-20364A-233606615*EoPCriticalKernel

    Qualcomm components​

    CVEReferencesSeverityComponent
    CVE-2022-25654A-223230190
    QC-CR#3075470
    ModerateKernel

    Qualcomm closed-source components​

    CVEReferencesSeverityComponent
    CVE-2022-25653A-223230071*ModerateClosed-source component

    Functional patches​

    For details on the new bug fixes and functional patches included in this release, refer to the Pixel Community forum.

    Common questions and answers​

    This section answers common questions that may occur after reading thisulletin.
    1. How do I determine if my device is updated to address these issues?
    Security patch levels of 2022-09-05 or later address all issues associated with the 2022-09-05 security patch level and all previous patch levels. To learn how to check a device's security patch level, read the instructions on the Google device update schedule.
    2. What do the entries in the Type column mean?
    Entries in the Type column of the vulnerability details table reference the classification of the security vulnerability.
    AbbreviationDefinition
    RCERemote code execution
    EoPElevation of privilege
    IDInformation disclosure
    DoSDenial of service
    N/AClassification not available
    3. What do the entries in the References column mean?
    Entries under the References column of the vulnerability details table may contain a prefix identifying the organization to which the reference value belongs.
    PrefixReference
    A-Android bug ID
    QC-Qualcomm reference number
    M-MediaTek reference number
    N-NVIDIA reference number
    B-Broadcom reference number
    U-UNISOC reference number
    4. What does an * next to the Android bug ID in the References column mean?
    Issues that are not publicly available have an * next to the Android bug ID in the References column. The update for that issue is generally contained in the latest binary drivers for Pixel devices available from the Google Developer site.
    5. Why are security vulnerabilities split between this bulletin and the Android Security Bulletins?
    Security vulnerabilities that are documented in the Android Security Bulletins are required to declare the latest security patch level on Android devices. Additional security vulnerabilities, such as those documented in this bulletin are not required for declaring a security patch level.

    Versions​

    VersionDateNotes
    1.0September 6, 2022Bulletin Published
    5
    This thread confuses me. Can one root a device that is currently sim locked?
    SIM locking, which locks your SIM card to your device, i.e. can't move that same SIM card with another device, is not the same as being Carrier locked. The ability to lock your SIM card to your device is controlled by you only - by default, SIM cards are not locked to the device. You can use the search field in the device Settings to find "SIM card lock", which is in the "More security settings" submenu.

    As the others have said, Carrier unlocking and having the ability to bootloader unlock are two separate things, but typically if a device is not carrier unlocked, then you are also not able to unlock the bootloader. Being carrier unlocked does not necessarily mean you can unlock the bootloader. Example 1: Verizon. Example 2: All Samsung devices bought in the United States that can have mobile data connections. Samsung WI-Fi-only tablets can be bootloader unlocked (at the cost of tripping KNOX permanently), but obviously, in that case, there's no carrier involved.
    4
    Changes in this month's build - quoted directly from the Google Pixel Community post (as couldn't see them anywhere).
    Thanks!

    Am I missing something though? I thought September was meant to be a feature drop update?
    No. There should be a new Beta sometime this month, which would be QPR1 Beta 1. I'll have a separate thread for that, or will maybe revive my Beta thread.
    4
    @roirraW "edor" ehT Thank you, I was just curious in case a situation appeared again where I needed to have both slots the same (I like to ask before I get stuck up a creek w/o a paddle).
    You're welcome. Understood.

    Just at minimum do (and you should do first thing):
    Code:
    fastboot flash bootloader --slot all bootloader.img
    And that'll prevent you from getting stuck. Not doing that, you could wind up being bricked to a point where only Google could repair the phone.
  • 59
    SURPRISE new Factory Image:


    13.0.0 (TP1A.220905.004.A1, Sep 2022, Verizon, Verizon MVNOs)FlashLink5e431fe5b488b48c4543a22f18356d1ad45c04fdab07bfe451ca13bdf08d0039

    I see the September update for the 6a also came out. :)

    September 2022 factory image is available:

    13.0.0 (TP1A.220905.004, Sep 2022)FlashLink4dba4ced0ea829e3d334dee55d8b15daa4cd1b57848417a8787d68a0b6ce3793

    Kush M.
    Community Manager•Original Poster

    Google Pixel Update - September 2022​

    Announcement
    Hello Pixel Community,

    We have provided the monthly software update for September 2022. All supported Pixel devices running Android 13 will receive these software updates starting today. The rollout will continue over the next week in phases depending on carrier and device. Pixel 6a devices will receive the update later this month. Users will receive a notification once the OTA becomes available for their device. We encourage you to check your Android version and update to receive the latest software.

    Details of this month’s security fixes can be found on the Android Security Bulletin: https://source.android.com/security/bulletin

    Thanks,
    Google Pixel Support Team


    Software versions

    Global
    • Pixel 4 (XL): TP1A.220905.004
    • Pixel 4a: TP1A.220905.004
    • Pixel 4a (5G): TP1A.220905.004
    • Pixel 5: TP1A.220905.004
    • Pixel 5a (5G): TP1A.220905.004
    • Pixel 6: TP1A.220905.004
    • Pixel 6 Pro: TP1A.220905.004

    What’s included

    The September 2022 update includes bug fixes and improvements for Pixel users – see below for details.

    Battery & Charging
    • Fix for issue occasionally causing increased battery drain from certain launcher background activities
    • Fix for issue preventing wireless charging mode to activate in certain conditions *[1]

    Biometrics
    • Additional improvements for fingerprint recognition and response in certain conditions *[2]

    Bluetooth
    • Fix for issue occasionally preventing certain Bluetooth devices or accessories from connecting

    User Interface
    • Fix for issue occasionally causing notifications to appear truncated on the lock screen
    ---------------------------------------------------------------

    Device Applicability

    Fixes are available for all supported Pixel devices unless otherwise indicated below.

    *[1] Included on Pixel 4, Pixel 4 XL, Pixel 5, Pixel 6 & Pixel 6 Pro
    *[2] Included on Pixel 6a


    Details
    Other

    BulletinLanguagesPublished dateSecurity patch level
    September 2022Coming soonSeptember 6, 20222022-09-05

    Pixel Update Bulletin—September 2022​


    Published September 6, 2022
    The Pixel Update Bulletin contains details of security vulnerabilities and functional improvements affecting supported Pixel devices (Google devices). For Google devices, security patch levels of 2022-09-05 or later address all issues in this bulletin and all issues in the September 2022 Android Security Bulletin. To learn how to check a device's security patch level, see Check and update your Android version.
    All supported Google devices will receive an update to the 2022-09-05 patch level. We encourage all customers to accept these updates to their devices.
    Note: The Google device firmware images are available on the Google Developer site.

    Announcements​

    • In addition to the security vulnerabilities described in the September 2022 Android Security Bulletin, Google devices also contain patches for the security vulnerabilities described below.

    Security patches​

    Vulnerabilities are grouped under the component that they affect. There is a description of the issue and a table with the CVE, associated references, type of vulnerability, severity, and updated Android Open Source Project (AOSP) versions (where applicable). When available, we link the public change that addressed the issue to the bug ID, like the AOSP change list. When multiple changes relate to a single bug, additional references are linked to numbers following the bug ID.

    Kernel components​

    CVEReferencesTypeSeverityComponent
    CVE-2022-28388A-228694483
    Upstream kernel
    EoPModerateKernel

    Pixel​

    CVEReferencesTypeSeverityComponent
    CVE-2022-20231A-211485702*EoPCriticalTrusty
    CVE-2022-20364A-233606615*EoPCriticalKernel

    Qualcomm components​

    CVEReferencesSeverityComponent
    CVE-2022-25654A-223230190
    QC-CR#3075470
    ModerateKernel

    Qualcomm closed-source components​

    CVEReferencesSeverityComponent
    CVE-2022-25653A-223230071*ModerateClosed-source component

    Functional patches​

    For details on the new bug fixes and functional patches included in this release, refer to the Pixel Community forum.

    Common questions and answers​

    This section answers common questions that may occur after reading thisulletin.
    1. How do I determine if my device is updated to address these issues?
    Security patch levels of 2022-09-05 or later address all issues associated with the 2022-09-05 security patch level and all previous patch levels. To learn how to check a device's security patch level, read the instructions on the Google device update schedule.
    2. What do the entries in the Type column mean?
    Entries in the Type column of the vulnerability details table reference the classification of the security vulnerability.
    AbbreviationDefinition
    RCERemote code execution
    EoPElevation of privilege
    IDInformation disclosure
    DoSDenial of service
    N/AClassification not available
    3. What do the entries in the References column mean?
    Entries under the References column of the vulnerability details table may contain a prefix identifying the organization to which the reference value belongs.
    PrefixReference
    A-Android bug ID
    QC-Qualcomm reference number
    M-MediaTek reference number
    N-NVIDIA reference number
    B-Broadcom reference number
    U-UNISOC reference number
    4. What does an * next to the Android bug ID in the References column mean?
    Issues that are not publicly available have an * next to the Android bug ID in the References column. The update for that issue is generally contained in the latest binary drivers for Pixel devices available from the Google Developer site.
    5. Why are security vulnerabilities split between this bulletin and the Android Security Bulletins?
    Security vulnerabilities that are documented in the Android Security Bulletins are required to declare the latest security patch level on Android devices. Additional security vulnerabilities, such as those documented in this bulletin are not required for declaring a security patch level.

    Versions​

    VersionDateNotes
    1.0September 6, 2022Bulletin Published

    Regarding Developer Support Android 12 images, see @Lughnasadh's post here.

    I am not linking directly to the Developer Support Android 12 images because I don't want them to be confused with Stable Android 12, and since the Developer Support images won't receive any OTAs...ever. They likely also will never be manually updated on the Developer Support images site, so they will forever be stuck with the security patch level they're currently on, which will become further out of date every month. You can Google search Developer Support Android images if you want to find them.

    Platform Tools has been updated slightly to v33.0.3:

    Windows: https://dl.google.com/android/repository/platform-tools-latest-windows.zip

    Mac: https://dl.google.com/android/repository/platform-tools-latest-darwin.zip

    Linux: https://dl.google.com/android/repository/platform-tools-latest-linux.zip

    Release Notes https://developer.android.com/studio/releases/platform-tools:

    33.0.3 (Aug 2022)​

    • adb
      • Don't retry adb root if first attempt failed.
      • Fix track-devices duplicate entry.
      • Add receive windowing (increase throughput on high-latency connections).
      • More specific error messages in the "more than one device" failure cases.
      • Reject unexpected reverse forward requests.
      • Fix install-multi-package on Windows.
    • fastboot
      • Remove e2fsdroid as part of SDK platform-tools.
      • Print OemCmdHandler return message on success.

    TL;DR regarding the PSA. If you update one slot to Android 13, you can fastboot reboot bootloader after and then fastboot --set-active=other to change slots in order to flash Android 13 to the new slot, but IF you have Android 13 on one slot and still have Android 12 (including Android 12 bootloader) on the other slot and you try to fully boot into Android 12, you will be permanently bricked and have to seek repair from Google. No one has yet found a way to repair this on our own. I will update if there is any progress. At least a small handful, and probably more, people have done this already.

    At a minimum, do this first: fastboot flash bootloader --slot all bootloader-devicename-slider-1.2-3456789.img (change the name of the bootloader file to the one for your device), then you *should* be much safer than without doing that first. Also note that the bootloader is NOT the same as boot.img (kernel). The bootloader image file has "bootloader" in the filename.

    IF you have already bricked your phone and the screen is blank - there is likely nothing we can do to help. You should seek to get a repair from Google, possibly under warranty.


    You CANNOT go back to Android 12 Stable. It *seems* as if you can, but Android 12 will not work 100% correctly after updating to the Android 13 bootloader.

    My tiny, early, very mini-review of Android 13 is here.

    Note that this is mainly for the officially listed "Unlocked" Pixel 6 Pro, available directly from the Google Store. All of this will also apply to any other (carrier-specific) variant of the Pixel 6 Pro which you can achieve an unlocked bootloader on. This includes T-Mobile and AT&T variants. It's likely Verizon variants will never be able to unlock their bootloader, or if so it will require paying the right person to do so.

    Feel free to ask about general questions, but for anything that's specific to your variant, you should use one of the other already existing threads. You'll find Verizon, AT&T, and T-Mobile-related threads in those respective search results.

    Here there be dragons. 🐉 I am not responsible for anything at all. 😹

    Unlocking or locking the bootloader will wipe the device every single time, so be sure to have your data backed up before doing so, or better yet, just unlock it as soon as you get the device.


    Keep in mind that unlocking the bootloader or rooting might affect your phone's capability to use banking apps such as Google Pay, your local bank's app, or even the ability to install some apps like NetFlix. See @Pekempy's thread Working SafetyNet with Pixel 6 Pro Android 12

    If you're going to re-lock the bootloader, make sure the ROM you have on your phone is completely stock (by flashing the latest official firmware) BEFORE re-locking it.

    There are no negative consequences if you unlock or re-lock the bootloader other than it will wipe your phone, and while unlocked you get a brief screen when you boot the phone telling you (and anyone who sees your phone at the time) that the bootloader is unlocked. You will also continue to receive updates (if you've merely unlocked the bootloader, you can take updates as normal) unlike Samsung, Sony, et cetera, which have permanent major consequences with reduced functionality even if you un-root and re-lock your bootloader. If you're actually rooted (not just bootloader unlocked), you'll have to perform extra steps to manually update each month, and to keep root/re-root.


    All posts about Google Pay or banking will be reported to be deleted. Please keep this thread on-topic. There are at least one or two other How To Guide threads in this section in which folks discuss how to get around banking app restrictions when you're rooted or just have an unlocked bootloader. See @Pekempy's thread Working SafetyNet with Pixel 6 Pro Android 12
    If users persist in discussing banking apps in this thread, I will have this thread locked and only update this first post when there is new and updated information regarding the subjects of the title of the thread: Unlocking the Pixel 6 Pro bootloader, rooting, and TWRP. See @Pekempy's thread Working SafetyNet with Pixel 6 Pro Android 12

    Honorable mention to @Jawomo's aodNotify - Notification Light / LED for Pixel 6 Pro! (XDA link) / Notification light / LED for Pixel - aodNotify (Play Store link), which in my opinion restores useful functionality missing in most phones these days. It also solves some subjective issues some folks have with AOD (Always On Display), and/or solves/works around the problem where AOD is required for the optical fingerprint reader to work without the screen being on.​


    Check warranty status - *may* reveal if a phone is refurbished, only if the phone was refurbished through Google - thanks to @Alekos for making me aware of the site.
    Official Google Pixel Update and Software Repair (reported as of January 23, 2022 to still not be updated for the Pixel 6/Pro yet)

    Google's Help Page for Find problem apps by rebooting to safe mode - this can be a lifesaver and keep you from having to do a restore to 100% complete stock or even from having to do a factory reset. This will deactivate all Magisk modules, and they'll remain deactivated even after you boot normally after briefly booting to safe mode. You can reenable the Magisk modules as you wish to try to narrow down the problem if it was caused by a Magisk module. This can even get things working again after a Magisk Module wasn't finished installing and potentially causing a bootloop.

    Official Google Pixel Install fingerprint calibration software (also available at the bottom of the Update and Software Repair page above) - I believe this is only helpful if you've replaced the screen
    Official Google Android Flash Tool (OEM Unlocking needs to be toggled on - you may not have to manually unlock the bootloader - the "site" will do that on its own)
    OEM unlocking in developer options needs to be toggled on. I don't "believe" you have to actually do the "fastboot flashing unlock" command.

    ADB/Fastboot, Windows Drivers, and unlocking the bootloader (thanks @sidhaarthm for confirming unlocking the bootloader works as intended, be sure to thank him in his post)
    • You'll need this if you're going to unlock the bootloader on your Pixel 6 Pro: SDK Platform Tools (download links for Windows, Mac, and Linux). Note that you can find links to download the tools elsewhere, but I wouldn't trust them - you never know if they've been modified. Even if the person providing the link didn't do anything intentionally, the tools could be modified without them being aware. Why take a chance of putting your phone security further at risk?
    • For Windows, get Google's drivers here Get the Google USB Driver (ADB will likely work while the phone is fully booted, but if you're like me, you'll need these drivers for after you "adb reboot-bootloader", to be able to use ADB and Fastboot.
    • Thanks to @96carboard for posting the details of unlocking the bootloader, be sure to thank him in his post. Unlocking or locking the bootloader will wipe the device every single time, so be sure to have your data backed up before doing so, or better yet, just unlock it as soon as you get the device. Keep in mind that unlocking the bootloader or rooting might affect your phone's capability to use banking apps such as Google Pay, or your local bank's app. If you're going to re-lock the bootloader, make sure the ROM you have on your phone is completely stock (by flashing the latest official firmware) BEFORE re-locking it. My experience on my Pixel 1 was that there were no negative consequences if you unlock or re-lock the bootloader other than it will wipe your phone, and while unlocked you get a brief screen when you boot the phone telling you (and anyone who sees your phone at the time) that the bootloader is unlocked. All of this should still be the case. You will also continue to receive updates. Unlike Samsung, Sony, et cetera, which have major consequences with reduced functionality even if you un-root and re-lock your bootloader. If you're actually rooted (not just bootloader unlocked), you'll have to perform extra steps to keep root/re-root.:


      The unlock process works like this:

      1) Take brand new fresh phone out of box. Do NOT put sim card in it, just power it on (you can put a SIM card if you want, you just don't have to).
      2) When it starts harassing you to join Google, hit "skip" and "remind me tomorrow" as applicable until you reach home screen. YOU DO NOT need to plug in a google account.
      3) Settings --> About --> Build number. Repeatedly tap it until it says you're a developer.
      4) Back --> Network --> WiFi and connect it.
      5) Back --> System --> Developer --> OEM unlocking (check), USB debugging (check), plug in USB, authorize on the phone when requested.

      Using the Platform Tools previously mentioned in command line/terminal:
      6) #
      Code:
      adb reboot-bootloader
      7) #
      Code:
      fastboot flashing unlock

      Now that you've unlocked it, it has been wiped, so repeat 1-4, then disable all the google spyware, and go ahead and start using it while waiting for aosp and root.

      Official Instructions for Locking/Unlocking the Bootloader
    Personally, I would always use the official drivers Google provides unless they just don't work for whatever reason: Get the Google USB Driver (this is for Windows). They work for me. They are rarely updated, but they are every once in a great while, sometimes years in-between.
    I agree with this. be careful using drivers or adb/fastboot tools. Some are fine, but there's no need for it really anymore. Google has made it very easy to install drivers and Platform-Tools (adb/fastboot tool).

    Google provides the Fastboot/ADB tool (Platform-Tools) and Google USB Drivers (adb/fastboot interface). This will allow any Pixel to interface with Windows using the fastboot/adb protocol. Official Google USB Driver includes support for both the Fastboot and ADB driver interface. There are 3 main drivers (Fastboot, ADB and MTP/Portable File Transfer). The MTP/Portable File Transfer driver is built-in to Windows 7-11.

    Fastboot/ADB Driver Interface - Official Download Link:
    When flashing a full image or unlocking your bootloader, the fastboot interface is being used.

    First Download official Google USB Drivers (it's a zip file). Extract the zip (important!). Right-click on the android_winusb.inf file and hit install. You can then restart your phone to the Bootloader Screen (hold vol-down while it restarts or turns on). When you plug in your phone, Windows Device Manager will show a new device at the top: Android Device: Android Bootloader Interface.

    Using the ADB interface: It's the same driver. Enable USB Debugging on your phone, then plug it in to your computer. A prompt will appear on your phone (to allow USB Debugging). The driver in Device Manager will appear as Android Device: Android Composite ADB interface.

    Now you can download and use Platform-Tools to flash an Android Image, OTA or run adb/fastboot commands.
    Official Download Page
    "Android SDK Platform-Tools is a component for the Android SDK. It includes tools that interface with the Android platform, such as adb, fastboot, and systrace"

    It's best to make Platform-Tools available system-wide. Download Platform-Tools from the above link and extract it to your C:\ drive - that way you will have a folder to add to the PATH Environment under Window System Properties Menu, Advanced, Environment Variables, System Variables, PATH (google how to do this, very easy). What this does is allow adb/fastboot commands to be run from anywhere in the system, so you don't have to be in the platform-tools folder to run adb/fastboot commands and flash an Android Image (Official or Android Fork such as ProtonAOSP).

    Rooting-related


    No longer applies - Things that make rooting more complicated on Android 12
    @V0latyle posted a new thread with some very important and fascinating information about the increased difficulty to root Android 12: Read this before rooting. Be sure to thank him there.

    A list of the other important guides - be sure to thank the respective OPs
    For all relevant guide threads just click the yellow "How To Guide" quick filter above the list of threads in the Pixel 6 Pro section.


    TWRP (not made for the Pixel 6 Pro yet - will update when it has)
    I would guess that this should be the appropriate URL for official TWRP custom recovery for the Pixel 6 Pro, but who knows when/if that will actually be made available, and it may become available unofficially in these forum sections before being made official. I'll adjust this URL as needed. https://twrp.me/google/googlepixel6pro.html.

    Custom kernels for stock ROM(s)

    Factory Images (requires an unlocked bootloader)
    It's also handy to have to the full official firmware available, whether it's to recovery from accidents or for actual development. Note the official link to the general Factory Images for Nexus and Pixel Devices page. The following link goes directly to the Pixel 6 Pro (Raven) section: Pixel 6 Pro Factory Images. I prefer to actually bookmark a link to the device listed immediately below the device I want the firmware for, because Google dumbly (in my opinion) puts the latest firmware at the bottom of the list for each particular device, and that ends up making you scroll a lot after a year or two of monthly updates.

    Note: You can still get the December 2021 Factory Images and OTA from this thread, if you need them for any reason: Alternate links to December - all full factory images and OTAs available

    Full OTA Images (doesn't require an unlocked bootloader)

    The usefulness of having Verity and Verification enabled (now that it's not needed for root) - post #2 below.

    Regarding P6P 5G model numbers and capabilities - post #3 below.

    List of all Pixel monthly security bulletins and Play System Updates - post #4 below.

    How I root and update (which is identical whether rooting the first time or updating):
    • Use the latest Magisk Stable (in my case, I keep the app "hidden" / renamed)
    • Used the full firmware zip, extracted to the same folder as the latest Platform Tools (S:\platform-tools)
    • Extracted the new boot.img
    • Copied new boot.img to the phone
    • Patched the new boot.img with Magisk Stable
    • Renamed Magisk'd boot.img so I know what version of firmware it's for
    • Copied the Magisk'd boot.img back to the computer
    • Disabled all my Magisk Modules
    • Removed the "-w " from the flash-all.bat
    • Re-edited the flash-all.bat to verify I saved it with the "-w " taken out
    • Open a Command Prompt, navigated to S:\platform-tools
    • adb reboot bootloader
    • flash-all.bat
    • Let phone boot, unlock it, check that it's working, allow the update process to finish (gave it five minutes or so)
    • adb reboot bootloader
    • fastboot flash boot kernel.img (renamed Magisk'd boot.img)
    • fastboot reboot
    • Unlock, check everything's working
    • Re-enabled the most basic Magisk Modules which I was sure wouldn't cause a critical issue
    • Reboot, unlock, made sure everything's working
    Back to modding!

    I may append these first four posts with further useful information or links as needed.
    15
    The unlock process works like this;

    1) Take brand new fresh phone out of box. Do NOT put sim card in it, just power it on.
    2) When it starts harassing you to join google, hit "skip" and "remind me tomorrow" as applicable until you reach home screen. YOU DO NOT need to plug in a google account.
    3) Settings --> About --> Build number. Tap it until it says you're a developer.
    4) Back --> Network --> Wifi and connect it.
    5) Back --> System --> Developer --> OEM unlocking (check), USB debugging (check), plug in USB, authorize when requested.
    6) # adb reboot-bootloader
    7) # fastboot flashing unlock

    Now that you've unlocked it, it has been wiped, so repeat 1-4, then disable all the google spyware, and go ahead and start using it while waiting for aosp and root.
    15
    SDK Platform Tools updated to v33.0.1 (March 2022):

    33.0.1 (March 2022)​

    • adb
      • Fixes Windows mdns crashes.
      • Fixes enable-verity/disable-verity on old devices.
      • Fixes "install multiple" on old devices
      • Improves the help output to include all supported compression methods.
    13
    Just to let everyone know, updating to .037 and re-rooting (without wiping anything) worked with no problems. My method is to just replace -w with --disable-verity --disable-verification in the flash-all.bat file and run the flash-all command. I then let it reboot, patch the boot image, return to bootloader and flash the patched boot image.

    Canary 23014

    EDIT: Thank you @ipdev for confirming my inquiry that this method would work back on Nov. 4 👍
    11
    SDK Platform Tools have been updated to v32.0.0 (January 2022). Update now before you forget and flashing the February update on the 7th gives you hassles. :)

    Direct download for Windows: https://dl.google.com/android/repository/platform-tools-latest-windows.zip

    Revisions​

    32.0.0 (January 2022)​

    • adb
      • Fixed adb w/o args SEGV regression.
    • fastboot
      • Reinstated recovery execution from b/158156979 (removal of preprocessor guards for root/secure).