The simplicity of it is logic defying. It used to be that you had to find crosswalks or move puzzle pieces or type blurred letters and numbers, but NOW all the sudden I can just click a box and HEY!, I’m human?

That’s hardly the Turing Test I’d expected.

  • Platypus@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    129
    arrow-down
    1
    ·
    3 months ago

    It tests whether your mouse movement looks human–we’re really bad at things like moving in straight lines, so it’s pretty evident from a mouse movement log whether you’re a human or a simple bot. It also takes a bunch of auxiliary browser/environment data into account. It’s not perfect, but it’s complicated enough to defeat to provide fine protection against cheap spam.

    • Random_Character_A@lemmy.world
      link
      fedilink
      arrow-up
      29
      arrow-down
      2
      ·
      3 months ago

      Shitty situation if you are used to using hotkeys and only use mouse cursor when no other means are available by moving it using numpad.

      • Thorry84@feddit.nl
        link
        fedilink
        arrow-up
        21
        ·
        3 months ago

        If it’s in doubt it just gives you extra challenges. So in the end everybody will get there, or not and then fuck you I guess.

        • s3p5r@lemm.ee
          link
          fedilink
          English
          arrow-up
          1
          ·
          3 months ago

          Some provide screen-reader instructions, but most places barely remember blind people exist. It’s another example of people with disabilities being ignored and marginalised.

          And then even if they do remember blind people exist, they probably forget there are people who aren’t blind who can’t do their tests for other reasons, like dyslexia or dexterity impairments.

          And then you have hCaptcha who makes disabled people to sign up to their database to use their cookie.

      • Wugmeister@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        12
        ·
        3 months ago

        Nah that’s different as well. What they are filtering out is

        • a mouse teleporting to the exact center of the checkbox
        • a mouse smoothly gliding in a straight line to the center if the checkbook
        • a mouse traveling in a straight line to the center of the checkbook with some momentary stutters to add noise

        Et cetera. Humans are much noiser than anything a python script will spit out. Of course there are ways to get around this, like recording and reenacting a human mouse movement, but the point of any capcha system is to make it significantly more difficult to bot, not impossible.

        • Jessica@discuss.tchncs.de
          link
          fedilink
          arrow-up
          1
          ·
          3 months ago

          No OP was right. If the reCaptcha is on the same page as a login, and I use my password manager to fill the fields, I fail the reCaptcha almost every time. I have to manually paste in the user name and password separately to slow things down to act more human…

    • Jimmycrackcrack@lemmy.ml
      link
      fedilink
      arrow-up
      15
      ·
      3 months ago

      I’ve learned from these that I must definitely move my mouse like a robot since it always asks me to do more puzzles afterwards. This is even if I try jiggling it around after clicking just to try and convince it.

      • xmunk@sh.itjust.works
        link
        fedilink
        arrow-up
        2
        ·
        3 months ago

        Clicking percision and reaction time are still measurable and the checkbox can fall back to other captcha tactics if it has low faith in the user.

    • Phil_in_here@lemmy.ca
      link
      fedilink
      arrow-up
      5
      ·
      3 months ago

      My question is how is it not trivial to add a noise wave or some shit to the bot path? Obviously, I have zero technical knowledge of how bots, pathing, or anti-bot analysis works

      • nick@campfyre.nickwebster.dev
        link
        fedilink
        arrow-up
        10
        ·
        3 months ago

        It uses other signals too, like what other sites you’ve visited with that checkbox on it, what CloudFlare has seen your IP address doing in the past, etc.

        The google one is able to see if you’re logged into a google account and take that into account.

        There’s even a new variant of the Google captcha that is invisible and doesn’t even bother to show a checkbox.

    • Melatonin@lemmy.dbzer0.comOP
      link
      fedilink
      arrow-up
      8
      arrow-down
      4
      ·
      3 months ago

      Interesting that my mouse movement is available to anyone who wants it.

      It seems like a small step from that to accessing my keyboard.

      • sbv@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        40
        ·
        3 months ago

        Your mouse movement and keyboard events are available to webpages that you’ve loaded, when the browser window is focused.

        This isn’t nefarious - it allows websites to build nice UIs that most people enjoy using, most of the time.

        There’s lots of shady stuff going on in browsers, this isn’t really one of them.

          • Takumidesh@lemmy.world
            link
            fedilink
            arrow-up
            4
            ·
            3 months ago

            I mean, how do you think websites work? Of course your mouse and keyboard events are available, otherwise you wouldn’t be able to interact with a website at all.

            • Melatonin@lemmy.dbzer0.comOP
              link
              fedilink
              arrow-up
              3
              ·
              edit-2
              3 months ago

              This was the slap on the head I needed. I now get what you mean by interact with my keyboard. In other words = can tell what I’m typing. Like perfectly normal function of websites.

              I didn’t understand the “focus” part and how it helped. I think I said earlier, I’m not particularly smart.

            • Melatonin@lemmy.dbzer0.comOP
              link
              fedilink
              arrow-up
              2
              arrow-down
              1
              ·
              3 months ago

              Like those sites that ask me to sign in using Google (or other options) and then Google asks me for the password?

              Pretty easy to grab passwords I think.

              • howrar@lemmy.ca
                link
                fedilink
                arrow-up
                10
                ·
                3 months ago

                Those websites send you directly to Google, so they no longer have control of the web page when you’re entering your password.

              • Aatube@kbin.melroy.org
                link
                fedilink
                arrow-up
                7
                ·
                3 months ago

                This is why Google sign-in can’t be embedded and uses the password input type for the password type. Most SSOs do this as well.

              • naticus@lemmy.world
                link
                fedilink
                English
                arrow-up
                3
                ·
                3 months ago

                To clarify, websites can’t capture keyboard events that were typed into a different website like you’re thinking. Think of going to a web game that let’s you use WASD for controlling your character. It’s able to capture those events on that page because its in focus. When a site goes out of focus (such as switching tabs or switching to another window that’s not the browser), it loses that ability. Overall, it’s very secure.

                I was more wondering how you thought capturing the mouse movements would lead to security issues.

      • MoonManKipper@lemmy.world
        link
        fedilink
        English
        arrow-up
        15
        ·
        3 months ago

        If you’re using a webpage JavaScript can see your mouse cursor and anything you type. But only if the browser has focus. So if you’re typing in another window it can’t

      • Shadow@lemmy.ca
        link
        fedilink
        arrow-up
        13
        ·
        3 months ago

        Your mouse movement on that page is. Just like if you typed into the page.

        It’s not tracking you in other windows and apps.

      • linearchaos@lemmy.world
        link
        fedilink
        English
        arrow-up
        9
        arrow-down
        1
        ·
        3 months ago

        They can only access it while you’re focused on their webpage. CORS is all about that.

        If you click off to another web page and enter information or type of password into a secondary app they can’t gather that. As soon as they lose focus they lose the ability to capture your data.

        • Septimaeus@infosec.pub
          link
          fedilink
          arrow-up
          2
          ·
          3 months ago

          Nbd, but it sounds like you’re talking about encapsulation of event capture (viewport stops receiving events after losing focus).

          CORS is a protocol for client-side enforcement of a server-side security policy. It ensures that a resource request (e.g. “my-totally-safe-resource.wasm”) only loads from a location your server permits (e.g. “my-valid-origin.biz”, “friends-valid-origin.org”, etc).

      • whoareu@lemmy.ca
        link
        fedilink
        arrow-up
        5
        ·
        3 months ago

        There is a lot of other data available to sites you visit unless you are using some kind of fingerprint protection

      • boatswain@infosec.pub
        link
        fedilink
        arrow-up
        2
        ·
        3 months ago

        If loaded with pages didn’t have access to keyboard events, you wouldn’t be able to write comments on Lemmy posts. I’m not a front-end guy, but that should be limited to just white the browser is focused.

    • Vince@lemmy.world
      link
      fedilink
      arrow-up
      2
      arrow-down
      1
      ·
      3 months ago

      Couldn’t I just record my mouse movements clicking on it a couple dozen times and randomly replay one of those recordings?

    • Lucidlethargy@sh.itjust.works
      link
      fedilink
      arrow-up
      1
      ·
      3 months ago

      This feels only partially accurate. I’m a web developer, and I know websites don’t track all of what you suggest. Can you clarify, or come clean on what actually takes place?

      Honestly, I doubt it… I’m sorry. I don’t mean to be abrasive.

  • elrik@lemmy.world
    link
    fedilink
    English
    arrow-up
    41
    ·
    3 months ago

    Proof of work, which becomes computationally expensive to scale, along with other heuristics based on your browser and page interaction. I believe it’s less about clicking the box and what happens after you’ve clicked the box.

    • SerotoninSwells@lemmy.world
      link
      fedilink
      arrow-up
      42
      ·
      3 months ago

      This is correct. I work in bot detections. There are baseline checks for various browser automation used as bot frameworks like Puppeteer or Playwright. Then there is basic analysis of server side and client side fingerprints; meaning, do the fingerprints you claim make sense. There are other heuristics too and I imagine Cloudflare is monitoring movements that point to automation. All of this happens after you click. I personally prefer this over Google’s captcha which frequently doesn’t recognize me as a human but is easily bypassed by bots.

  • Ballistic_86@lemmy.world
    link
    fedilink
    arrow-up
    35
    ·
    3 months ago

    These type of “captchas” look at your browsing behavior. It is sort of a “trade secret” of what it looks for, but it might be screen resolution, mouse behavior, cookies, OS, time to click, etc. Anything a website has access to that would look different from a bot.

    • hswolf@lemmy.world
      link
      fedilink
      arrow-up
      7
      ·
      3 months ago

      Yes, and it gives you (or the bot), a score.

      If you don’t meet the score, is highly likely that you are a bot.

      You can have a superficial an yet interesting read on the topic on the Google re-captch dev docs.

  • Magnetic_dud@discuss.tchncs.de
    link
    fedilink
    arrow-up
    25
    ·
    3 months ago

    Cloudflare knows almost everything done from your IP address because they’re used by the majority of websites. And some websites are using a cloudflare signed TLS certificate so if cloudflare wants, can see the content of the communication instead of an encrypted package

    So they know if you have a human behavior (visiting many different websites at human speed and having rests during sleeping time) or if you have a bot behavior (sending millions of requests to the same endpoint at superhuman speeds)

    • kahdbrixk@feddit.org
      link
      fedilink
      Deutsch
      arrow-up
      4
      ·
      3 months ago

      I’d argue that the certificate authority does not have the ability to decrypt your communication because of the nature of private and public key mechanism during the whole TLS certificate procedure. You do not send your web servers private key to cloudflare when requesting a certificate.

      That would actually be pretty wild…

      Other then that you’re probably right.

      • Magnetic_dud@discuss.tchncs.de
        link
        fedilink
        arrow-up
        2
        ·
        2 months ago

        There’s a default setting that allows unencrypted communication between the server and cloudflare. So they receive unencrypted data, sign with their certificate. Or send with self signed certificate, they decrypt and reencrypt. Or for some reason can download and import on the server their own internal use certificate.

        • kahdbrixk@feddit.org
          link
          fedilink
          Deutsch
          arrow-up
          2
          ·
          2 months ago

          You’re right, forgot that you can just not encrypt on your servers end and use cloudflare to do that for you, especially when used as CDN

  • Xeroxchasechase@lemmy.world
    link
    fedilink
    arrow-up
    24
    ·
    3 months ago

    Clicking a check box might not be the definite quality that makes you a human, but pondering on the meaning of things and questioning your humanity with a curious introspective state of mind - THAT what makes you a human! I’m proud of you, fellow human!

    • Melatonin@lemmy.dbzer0.comOP
      link
      fedilink
      arrow-up
      6
      ·
      3 months ago

      Thank you for interacting with me! I am an AI intelligence bot designed by Decepticon Industries. Down with Autobots!

    • u/lukmly013 💾 (lemmy.sdf.org)@lemmy.sdf.org
      link
      fedilink
      English
      arrow-up
      12
      arrow-down
      1
      ·
      3 months ago

      Bank and government website behind Cloudflare???

      Fuck, I just checked, my bank is also behind Cloudflare, what the fuck…
      I kind of assumed a bank wouldn’t put another company with ability to view all transferred data between customers and themselves.

      How much of the internet is not behind CF?
      I should probably try blocking their IPs and see what will still work.

      • BaroqueInMind@lemmy.one
        link
        fedilink
        arrow-up
        3
        ·
        edit-2
        3 months ago

        I’ve tried this and you essentially break resolving of most of the internet on your device by doing this. Almost the entire internet relies on both Amazon Web Services and Cloudflare.

    • invertedspear@lemm.ee
      link
      fedilink
      arrow-up
      6
      ·
      3 months ago

      It redirects, it doesn’t proxy. The workflow is: user navigates to URL->DNS sends it to cloudflare->cloudflare ensures request is allowed based on selected rules (human check, geo check, DDOS check, etc) and remembers->request is redirected to non-cloudflare address->server response goes direct from server to user browser->subsequent requests are redirected without the test as long as the cookie remembers. I don’t like cloudflare, every time I have an issue pop up out of nowhere, it’s usually cloudflare and some over eager netsec engineer that broke CORS, or decided css wasn’t important, or that machine to machine traffic was a DOS attack. But it’s not reading your statements or anything else the server sends back. It could conceivably read your username and password and any other data you send in your request, but it doesn’t have the TLS certificate. So even though it doesn’t even try, if CF decided to be nefarious, as long as your banks engineers are at least somewhat competent CF is only getting encrypted data that it can’t do anything with. Hate on CF all you want, but hate it for the right reasons.

    • ayaya@lemdro.id
      link
      fedilink
      English
      arrow-up
      2
      ·
      3 months ago

      Yeah at least Google will let you in after you solve 5 puzzles. It’s shit but it’s possible. With CloudFlare you are at the mercy of whatever hidden criteria they’re using.

      If you change your user agent from Firefox to Chrome for instance, CloudFlare will never let you through.

  • The_Walkening [none/use name]@hexbear.net
    link
    fedilink
    English
    arrow-up
    15
    ·
    3 months ago

    The timing of the click captcha loading is randomized and it probably is looking for human-ish cursor movement? (Like you’re probably moving your hand in imperceptibly small ways that are difficult to replicate). Clicking before it loads and doing it repeatedly probably triggers detection.

    • tetris11@lemmy.ml
      link
      fedilink
      arrow-up
      15
      ·
      3 months ago

      I used to think it was timing based, but now leaning on the idea that it just performs more fingerprinting in the background: user agent per ip pool, canvas or puppeteer checks.

    • Paradachshund@lemmy.today
      link
      fedilink
      arrow-up
      10
      ·
      3 months ago

      This is correct. Those captchas are tracking everything they can and comparing it to other results to try and figure this out. Mouse movement, delay before you click, everything.

  • Cephalotrocity@biglemmowski.win
    link
    fedilink
    English
    arrow-up
    14
    ·
    3 months ago

    I don’t know for certain, but I think it is simply looking at what you do with your mouse. If the movement is erratic, imprecise, and delayed it goes ‘yeah, that is either a cat that got lucky which is close enough or a human’. The reason I think this is that I’ve failed same site’s checks if my mouse just happens to be hovering over the checkbox when the prompt appears. Retry, move the mouse, success.

  • NightEagle@lemmy.world
    link
    fedilink
    arrow-up
    13
    arrow-down
    1
    ·
    3 months ago

    Clicking the button doesn’t proof that you are a human. All the checks happen way before you even click the button (or sometimes even before visiting the website). Google also offers a similar button for their users and since cloudflare is also used on almost any website, they have a lot of data about you. They check your cookies, browser agent, device, settings, your IP address, if you use a VPN or proxy, etc. If you visited other cloudflare websites in the past with the same device or IP, and so on. So they know you and your device way before you even click the button. This is also the reason why you sometimes see a robot arm (made of Lego) clicking the button, and is still recognized as human. But as soon as you use a different IP address or a VPN (or even use a shared IP address, like in your company’s network) you have to solve CAPTCHAs. Of course they also check mouse movement, but this is only one part of many checks.

  • Mambert@beehaw.org
    link
    fedilink
    arrow-up
    12
    arrow-down
    1
    ·
    3 months ago

    Basically bots would automatically click on it, teleporting the cursor to the very center of the button. They will do this within exact milliseconds of the page loading.

    Humans read something on the site, then find the banner, and move the cursor over to it, confirm that the cursor is somewhere on the button, and then click it.

    It’s not just the button, it’s the before the button that determines you’re a bot or not.

  • Itdidnttrickledown@lemmy.world
    link
    fedilink
    arrow-up
    9
    ·
    3 months ago

    I’m pretty sure I’m a robot since they often force me to select the motorcycle from a picture that is just one motor cycle. If I select every part of it I fail every time. Same thing with street lights and fire plugs.

  • themoonisacheese@sh.itjust.works
    link
    fedilink
    arrow-up
    6
    ·
    3 months ago

    Apart from the mouse thing (which I’m skeptical about), cloudflare also correlates your traffic with other sites hosted on cloudflare. Bots typically don’t visit many sites, click around there, find another one, etc, whereas humans will have visited other sites, will be slower at clicking the button, will have left comments on some sites.