reCAPTCHA Mobile Verification Is Bringing the Play Integrity API to Desktops

(discuss.grapheneos.org)

107 points | by Cider9986 a day ago ago

72 comments

  • pimterry a day ago ago

    This is begging for anti-competitive investigations, surely? It's explicit collusion between the largest mobile makers and key app-based services (e.g. gov services, communication tools, banking) to directly block any competing OS.

    They're publicly agreeing that only users using their approved mobile devices are allowed to do banking, and competitors cannot. I'm not sure how much more clearly anti-competitive this could be.

    • chaz6 a day ago ago

      I expect that once the infrastructure is in place then it will be co-opted by governments to enforce their control over the digital domain.

  • t_mahmood a day ago ago

    In recent r/Android update post, this is put at the very last, I believe this completely verifies that Google is implementing hardware attestation.

    And, r/android being mostly google worshipers won't say anything, but also it's difficult to parse through such a huge ai generated post.

      New data isolation and verification tools
    
      Expanded Binary Transparency: Anyone can now verify that the critical software layers on their device were actually authorized by Google and haven't been secretly modified by attackers. We are publishing a public, append-only ledger that provides cryptographic proof that production Google applications and Mainline Modules are the authentic versions released by Google. If a Google-signed app isn’t on this ledger, we didn’t intend to release it.
    
      Android OS verification: We have seen some bad actors begin to distribute malicious, unofficial versions of the Android OS that secretly compromise device integrity. To combat this, we are introducing Android OS verification in Android 17. Launching initially on Pixel devices, this feature helps you verify that your device is running an official, widely distributed build.
    
      Keeping your ambient data confidential and isolated: Android 17 introduces AISeal with pKVM which, along with Private AI Compute, creates an isolated, verifiable, hardware-backed environment where ambient data can be processed securely
  • rambambram a day ago ago

    > linux desktop

    That's the only part I'm interested in. I've read this article - or something similar - before and it doesn't surprise me that these big tech companies want more control. What I don't understand is how this affects linux desktop?

    Is it going to be that online services or websites or webapps can choose to require attestation? Whether you use this OS or that OS? Or are linux developers forced to change their open source software?

    • CodesInChaos a day ago ago

      It'll affect you the same way reCAPTCHA does. A website decides to use "Google Cloud Fraud", and locks you out if you don't complete the "challenges" it shows. Your OS doesn't matter at all.

      • rambambram a day ago ago

        Thanks! It was slightly confusing, now I get it.

  • reddalo a day ago ago

    This is very bad. Google has truly become evil.

    My only hope left is that the EU will step in and prevent this. At least in Europe.

  • aussieguy1234 a day ago ago

    I don't buy the anti bot argument. Cheap Android phones can be purchased for less than $40 and QR code scanning can be automated. Bot farms will evolve.

    The only possible reason for this is to lock out the competition.

  • CalRobert a day ago ago

    Aside from the horrendous privacy implications, is there a possible argument that this is anti-competitive?

    • jeroenhd a day ago ago

      the only anticompetitive element I can think of is the way they pushed their scanning app to Android phones with Play Services. On IOS they're not in control but still able to launch an app (app snippets the feature is called, I think?) but on Android they themselves killed off Instant Apps because nobody used it. If one of Google's competitors like hCAPTCHA tries to do the same, they'll have more friction on Android than Google does.

      When it comes to GrapheneOS, it's the website owners that decided to block those devices by using this service. There are other services that don't block those phones they can use instead.

    • realusername a day ago ago

      That's the whole goal of the concept. Safetynet (the predecessor of Play Integrity) was developed to block CyanogenMod and then later used to block Huawei.

      • jeroenhd a day ago ago

        App developers need to put effort into enabling these APIs so it's not like Google is actively blocking your favorite apps. Their makers are.

        Like with reCAPTCHA, there are other services and libraries out there to detect root access and other things companies want to detect in their apps.

        • realusername a day ago ago

          Sure, Google was betting that bureaucratic companies would enroll voluntarily and it worked.

          > Like with reCAPTCHA, there are other services and libraries out there to detect root access and other things companies want to detect in their apps.

          My opinion on this is that any method to check integrity, root access or if developer mode is enabled is a security vulnerability by itself, no such app should be able to know that.

          • jeroenhd a day ago ago

            > My opinion on this is that any method to check integrity, root access or if developer mode is enabled is a security vulnerability by itself, no such app should be able to know that.

            I think knowledge of such information should be available to all apps, but I think apps should not be so annoyingly restrictive. There's absolutely no reason why games or generic apps need to act on any of this information.

            • realusername a day ago ago

              Realistically, in which scenario this information can be useful? I can't think of anything, it should be removed.

              It's been misused by banking app and games, I've never seen a legitimate use case.

              • jeroenhd a day ago ago

                To verify that the user or someone who had physical access to the device (border checks, etc.) hasn't messed with the firmware.

                If I were a bank I wouldn't want to be on the hook for someone getting their bank account drained by the custom ROM someone downloaded from XDA.

                Then there's the DRM thing, where copyright owners make companies like Netflix sign a document like "if you don't enforce strong DRM, you cannot serve our media". Their choice is either use DRM (which in turn uses integrity checking) or not serve you at all. As a user, you once again have the choice of "buy the box set" or "use a smartphone with a trusted OS".

                There's also the corporate use case, companies have remote wipe capabilities for data integrity purposes and don't want their employees rooting phones.

                Pokemon Go used it to check whether people were spoofing their location and ruining the game for others. They were especially assholish about it, but that should hardly be a surprise when Nintendo is involved at any part of the chain.

                Any game with in-app purchases wants to verify that nobody messed with the APK to get paid content for free. It's almost a basic business requirement. Combining limited-lifetime remote attestation tokens with data fetch URLs means superweatherapp-patched-luckypatcher.apk on LineageOS will not be able to pretend to be the real app (GPlay on stock Android already offers app verification APIs).

                In Google's case, "this is a physical device and not an emulator" is a strong signal that the user is not a bot pretending to be a human. In an age where CAPTCHAs are easier to solve for AI than they are for humans, that kind of verification is worth a lot.

                I'm sure I'm missing a lot of use cases here, but the technology is useful. It's often used in apps and games I would never want to run on my phone anyway, except for banking apps perhaps.

                • chadgpt3 9 hours ago ago

                  If attestation didn't exist, media companies wouldn't require it.

                • realusername a day ago ago

                  Then it's a matter of personal opinion, I would not count any of the ones you listed as valid.

                  Integrity doesn't prevent customers to download a fake banking app, DRMs should be legally banned to be honest (sorry/not sorry media companies) and passports are best in physical form.

                  For company usage, locking the bootloader accomplishes the same thing.

                  As for bots, it doesn't prevent bots as you have unmodified device farms on racks. It's actually how ad fraud is done at the moment, they don't bother modifying the devices.

                  Pushing integrity even more will just funnel even more money to this ad fraud mafia as they will have a new source of revenue.

                  • jeroenhd a day ago ago

                    I, for one, like streaming apps enough that I don't want to go back to locked-down, expensive DVD players. The alternative to DRM isn't "no DRM", it's "no content".

                    Integrity detection means criminals cannot just inject some code into an existing banking app APK and call it a day. The hacked app won't generate valid HTTPS calls when properly validated. You can still phish users, but instead of automated online phishing panels, you need someone with a physical phone copying everything the user enters. It significantly raises the bar for these criminals.

                    If this stuff wasn't available, we just wouldn't have a lot of useful apps that we do today. The technology itself isn't bad per se, but the combination of a lack of hardware manufacturer support (for doing things like locking down bootloaders), custom ROM support (because bootloaders aren't locked down anyway), and app developer interest (see the whole GrapheneOS story) are what causes problems. Restricting the technology because the companies you deal with are shit is a bad solution in my opinion, because if they are motivated to be shit, they will find other ways to be shit.

                    For instance, someone set up an alternative attestation company that's even worse than Apple and Google, and if it weren't for Play Integrity, they'd be making the APIs and whitelists instead of Google.

                    • RandomGerm4n a day ago ago

                      > I, for one, like streaming apps enough that I don't want to go back to locked-down, expensive DVD players. The alternative to DRM isn't "no DRM", it's "no content".

                      That statement is simply not true. The demand for streaming services would still be there. There would simply be even more illegal alternatives than there already are, so companies would still be forced to offer movies and TV shows via streaming. They only have the choice between offering DRM-free content and making money, or making no money while people watch it anyway.

                    • ShowalkKama a day ago ago

                      >I, for one, like streaming apps enough that I don't want to go back to locked-down, expensive DVD players. The alternative to DRM isn't "no DRM", it's "no content".

                      that's a false dichotomy since piracy exists. Stop giving them money until their behavior changes. If it doesn't... oh well, you still get a better service.

                      • jeroenhd a day ago ago

                        > Stop giving them money until their behavior changes I did, for the longest time, because none of the streaming platforms worked on Linux. Their behaviour did not change. The tiniest sliver of a percentage of people who actually care about this aren't enough to move the needle for the multi billion dollar entertainment industry. The population at large is fine with DRM.

                        Piracy isn't even a better service at all. Almost nothing in my native language is available on pirate sites unless you pay more than the subscription service charges. Subtitles take three or four internet searches and sometimes aren't available at all. Audio tracks default to Russian or Italian or Spanish for English-language shows. I have set up a whole Rube Goldberg machine of radarr/sonarr/lidarr + bazarr + prowlarr + Deluge + Jellyfin to watch stuff and only after all that did piracy became slightly less of a bother.

            • expedition32 a day ago ago

              I advised my mother to do her banking on her phone instead of laptop.

              Hardware attestation kills privacy- yes. But it also works.

              Mobile phones are ridiculously locked down compared to legacy platforms such as Windows.

              • chadgpt3 8 hours ago ago

                It's simply about segregation. If you have one device that is kept secure and another that is not, use the secure device for banking. Can be two phones, two PCs, or a phone and a PC.

  • undefined a day ago ago
    [deleted]
  • rvz a day ago ago

    I am going to assume that this also destroys millions of AI agents and bot scrapers this time which is why some “AI Engineers” were complaining about this recently.

    Well, this is how Google will kill all the scrapers on its search data.

    • jeroenhd a day ago ago

      Not entirely, Google's own page says:

      > Fraud Defense leverages a sophisticated and adaptable risk analysis engine to shield against automated software. It is specifically designed to orchestrate trust for the agentic web, neutralizing malicious scrapers while welcoming legitimate AI agents.

      I'm sure it'll block a whole bunch of awful scrapers but if Google doesn't hate a bot, it'll be able to pass.

      • dns_snek a day ago ago

        Sounds like an anti-competitive play to build an AI moat. They'll introduce a sham "verification program" and only allow bots operated by entities large enough to sue them for anti-competitive conduct.

    • hsbauauvhabzb a day ago ago

      Does mass scraping need google for content discovery? Surely most sites contain a site map or index that would effectively self enumerate once you know the domain, which is more often than not publicly disclosed?

      • rvz a day ago ago

        What matters is when websites put this new version of reCAPTCHA on their site, just like archive.is has done. Then the scrapers will have a hard time getting around that.

  • bekon a day ago ago

    So fuck blind people I guess?

    • worldofmatthew a day ago ago

      Blind people need to start suing at least in America the ADA is far easier to win against large companies than in the UK as the equality act is treated vastly weaker by judges than if someone presented a religion or race lawsuit.

      America is the only place to take down big tech discrimination.

      • charcircuit a day ago ago

        Smart glasses or apps like BeMyEyes can assist blind people through these flows. AI's visual understanding has progressed tremendously over the past couple decades.

        • worldofmatthew a day ago ago

          Requiring extra expenses is discrimination.

          • charcircuit a day ago ago

            The expense is not paid toward the business and it is normal for assistive tools to be paid for.

    • CodesInChaos a day ago ago

      This one sounds less problematic for blind people than reCAPTCHA, which relied on a visual challenge. Especially since google or the screen reader software can easily add a browser extension that forwards the challenge to the phone removing the need for scanning a QR code.

      The real problems with this technology are control (need a google approved phone) and privacy/tracking.

    • hsbauauvhabzb a day ago ago

      That is a cost that our future authoritarian world leader has decided is more than acceptable.

  • ChrisArchitect a day ago ago

    Related:

    Google Cloud fraud defense, the next evolution of reCAPTCHA

    https://news.ycombinator.com/item?id=48039362

    Google broke reCAPTCHA for de-googled Android users

    https://news.ycombinator.com/item?id=48067119

    Google Cloud Fraud Defence is just WEI repackaged

    https://news.ycombinator.com/item?id=48063199

  • undefined a day ago ago
    [deleted]
  • prashantk_ a day ago ago

    [flagged]

  • M95D a day ago ago

    So, let me see if I understand it:

    Apple+Google got punished by the EU for non-competitive practices and now they offered to ordinary websites their most desired features: bot blocking and unavoidable user tracking across all devices and operating systems.

    And if EU wants to sue, they'll have to sue each and every website that requires this, and they would loose, because there are no alternatives and even if there were, they would be just as bad.

    Great job Google+Apple! I'm proud of you. /s

  • charcircuit a day ago ago

    If Windows wasn't so far behind Apple and the rest of the industry in regards to integrity APIs this wouldn't be necessary. It's embarrassing for Microsoft that someone needs to use a separate, more secure device since their security is so bad.

    • chadgpt3 a day ago ago

      It's embarrassing for Hacker News that people here are commenting to support attestation systems that prevent you from owning the device you bought.

      • charcircuit a day ago ago

        Attestation isn't against being able to do whatever you want with your own device. It just means that if you want other people to trust your custom device you need to get them to trust your signing key.

        • dns_snek a day ago ago

          Pray tell, how might you get them to trust your signing key? Do you just email Mr. Pichai and ask nicely, is that enough?

          • charcircuit a day ago ago

            I would try reaching out to the Recaptcha team so you can create a legal contract around what guarantees and compensation are needed to get your key trusted.

            • RandomGerm4n a day ago ago

              But that would only be possible for large companies. If I'm just tinkering with my own Linux distribution for fun, Google won't even bother responding to my request.

        • RandomGerm4n a day ago ago

          The intention behind it doesn't matter at all. In the end, it just means that only a few major operating systems are allowed, and the market is divided up among the established manufacturers. Anyone new to the market faces a major problem right off the bat, and trying to build something yourself doesn't work either.

        • foltik a day ago ago

          Not sure if you’re being deliberately obtuse, but a signing key means nothing by itself. What exactly do you think is being attested TO?

          Thats right: that the user can’t do what they want with their own device. Obviously your key wouldn’t be trusted if they could.

          There is no other conceivable purpose that attestation could serve.

          • dns_snek a day ago ago

            > Not sure if you’re being deliberately obtuse

            Yes, they are. If there's a thread on HN about user-hostile features, you can be pretty confident that they've written a comment defending it.

          • charcircuit a day ago ago

            There are many changes that are possible which do not harm the integrity of applications.

            >the user can’t do what they want with their own device

            In the same way the user can't make their device have the Microsoft Word app send them $1 million from Microsoft's bank account. Once other people are in the picture you can't always have your way.

            • foltik a day ago ago

              > Attestation isn't against being able to do whatever you want with your own device.

              “Prison isn’t against being able to go wherever you want.”

              > There are many changes that are possible which do not harm the integrity of applications.

              “Well there’s a lot of places you can go in prison, you just can’t leave.”

              Uh-huh.

              > In the same way the user can't make their device have the Microsoft Word app send them $1 million from Microsoft's bank account.

              This is completely incoherent. You and I both know that a bank refusing to give away someone else’s money has nothing to do with being able to run whatever code and operating systems we want to on our own devices.

              Obviously the decision happens on some remote server which would require a username and password to authorize. It doesn’t matter one bit what piece of code sent it over.

              • charcircuit a day ago ago

                >“Prison isn’t against being able to go wherever you want.”

                This isn't a good analogy since the user really able to do whatever they want with their computer. A better analogy is that. "You can go wherever you want, but if you are trespassing on other people's property they can report you to the police." Just because you have the freedom to go anywhere does not mean you are not accountable for your actions or that people should not be able to tell that you are trespassing.

                >has nothing to do with being able to run whatever code and operating systems we want to on our own devices.

                My point is that one's freedom of how they want one's computer to work does not mean they can force other people's server to run code they want. Microsoft is in control of what there servers do.

                • chadgpt3 9 hours ago ago

                  Distinguish between trespassing-style "you can go there but there might be consequences" and prison-style "you are physically unable to go there"

                  Currently it's trespassing-style. If you modify your Google client, Google reserves the right to ban you.

                  With attestation it's prison-style: you can't modify your Google client. If you try, the modified client just won't work. Trying to walk out of the prison wall does not actually put you outside - you just bang into the wall and then you are still inside.

    • jeroenhd a day ago ago

      Windows Hello offers an attestation API according to the releases I found, though because Microsoft has called at least four products "hello" now, I can't easily find the details. I don't think there's a technical reason why Google couldn't have released an app with a URL handler that uses that API except maybe for the Windows TPMs being less secure than mobile ones in general.

      • charcircuit a day ago ago

        That attestation is for attesting you are using a TPM for user authentication. Which is different than attestation of integrity.

        • jeroenhd a day ago ago

          They do have some kind of attestation mechanism to actually attest the device state: https://learn.microsoft.com/en-us/azure/attestation/tpm-atte...

          It seems like the documentation for the feature is aimed entirely at MDM setups, though.

          The basic API requirements are all there, and Windows 11 requires TPM 2.0, so I believe it should be possible for Google to build a Play Integrity equivalent around that.

          • charcircuit a day ago ago

            It's a lot of work and outside of the scope of the Recaptcha team at Google to roll their own compared to a simple API like macOS has.

            https://developer.apple.com/documentation/devicecheck/dcappa...

            • jeroenhd a day ago ago

              Definitely, Android/iOS/macOS are easy in comparison. But Google is a multi-billion dollar company, they can figure this out.

              • charcircuit a day ago ago

                And without Microsoft footing the bill either via building the API or paying Google to do it, I do not see it happening. Being a billion dollar company means nothing.

    • realusername a day ago ago

      Integrity doesn't guarantee any security to your device, just that the device is same as from the factory. That's a common misconception.

      • jeroenhd a day ago ago

        "strong integrity" also takes into account if a security update has been installed recently enough. I don't believe hardware integrity spoofing has been accomplished on Android yet. Software integrity and compatibility with old hardware has been used to spoof device IDs and pretend a phone doesn't have the ability to do hardware attestation.

        It's technically possible to exploit a kernel and get root access on a running device, of course, but the persistent root that is used most often will be detected by hardware integrity mechanisms. Exploit based root might be as well if it makes itself detectable enough.

        • Terr_ a day ago ago

          > if a security update has been installed recently enough

          In turn, this enables any tyrannical or anti-competitive demand which can be implemented in software, such as "user is not on the blasphemer list" or "all communications are being CC'ed to the Ministry of Truth."

        • realusername a day ago ago

          > "strong integrity" also takes into account if a security update has been installed recently enough.

          My Galaxy S10, last update in 2023 passes strong integrity.

          With the little amount of security updates most Android devices have, I'm pretty sure you can find an exploit for pretty much everything except the most expensive flagships.

          What does integrity really means when nobody really knows what's in the device and with a terrible software update policy anyways.

          • jeroenhd a day ago ago

            The exact requirements for security updates depends on the Android version you're running and the one your device came with. From the docs:

                    MEETS_STRONG_INTEGRITY
                    
                    The app is running on a genuine and certified Android device with a recent security update.
                    
                    On Android 13 and higher, the MEETS_STRONG_INTEGRITY verdict requires MEETS_DEVICE_INTEGRITY and security updates in the last year for all partitions of the device, including an Android OS partition patch and a vendor partition patch.
                    On Android 12 and lower, the MEETS_STRONG_INTEGRITY verdict only requires hardware-backed proof of boot integrity and does not require the device to have a recent security update. Therefore, when using the MEETS_STRONG_INTEGRITY, it is recommended to also take into account the Android SDK version in the deviceAttributes field.
                    
                    A single device will return multiple device labels in the device integrity verdict if each of the label's criteria is met.
            
            The S10 should be on Android 13, so it should not pass STRONG_INTEGRITY. If it does, perhaps it's possible Google updated the docs early in anticipation of a change? The software update requirement wasn't always there.
            • realusername a day ago ago

              I didn't know about this change, this is actually good news, it means no app can realistically rely on strong integrity as it will cut them from their user base.

              • jeroenhd a day ago ago

                I think you overestimate how far apps are willing to go for stupid reasons.

                Also, there is still the DEVICE_INTEGRITY check that verifies the hardware side of things so if old devices have to be pushed, app developers still won't let you run their apps on LineageOS

                • realusername a day ago ago

                  I'm sure they are stupid but they already have some trouble to justify to their customers that they can't run the app on Android 11 so phasing out actual brand new devices that customers have is going to go a bit too far for them.

                  • jeroenhd a day ago ago

                    Massive gaming companies have already started using TPMs + secure boot to detect and ban players. Anyone who upgraded to Windows 11 without compatible hardware or who was/is still using Windows 10 cannot play these games. That was a few years ago when Windows 10 was still around.

                    It has happened and it probably will happen again. The EU is working on a wallet app that will be legally equivalent to an ID card, I imagine they'll rather have people stick to their plastic ID rather than risk accepting identity theft.

              • charcircuit a day ago ago

                Attestation as a signal doesn't have to be used as a binary yes or no decision. Weaker integrity could result in lower rate limits for example.

        • charcircuit a day ago ago

          >I don't believe hardware integrity spoofing has been accomplished on Android yet.

          It has, but extracted keys aren't free.