Remix.run Logo
reluctant_dev 4 days ago

What prevents bots/agents from just adding "jitter" to their movements that mimics how humans move their cursor?

I know there are other signals being used but this one in particular seems like it wouldn't be hard to beat with a small amount of sophistication from the bot.

nerdsniper 4 days ago | parent | next [-]

Beating this would require a large amount of sophistication, not a small amount.

Basic machine learning clustering will expose bots mouse+keyboard+touch behavior and discriminate them from humans.

It will also likely discriminate against anyone with a disability and therefore using affordances like eye tracking. Just imagine how different a person with only one hand would look compared to a “typical” user!! This shouldn’t be too much of a problem in the USA because no one is enforcing the ADA at the moment outside of California / Illinois / NY.

But I’m curious to hear from ‘eastdakota how they plan to guarantee that users with disabilities won’t be affected by these kinds of behavioral analysis. Cloudflare has such a massive footprint that it’s absolutely critical for them to err on the safe side of filtering, assuming they desire to be ethical.

The immoral thing for cloudflare to do would be to say “we just provide a ‘bot likeliness score’ and it’s up to each website to decide what threshold they need”. And then wave their hands and say “we’re not the ones blocking users with disabilities…the websites are the ones setting their thresholds too strictly”.

When you reach Cloudflare’s size … you own all the 2nd and 3rd order effects of your decisions.

This kind of data not only separates bots from humans - it’s pretty trivial to distinguish male vs female, right-handed vs left-handed, approximate age, native language (based on keyboard input patterns), state of injury (including tracking progression of healing), and a variety of different mental/physical disabilities. How one navigates a website tells you whether they are ADHD or schizophrenic or has Parkinson’s, and it can tell you about drug use/abuse: how well is this person’s Parkinson’s treatment working? What days of the week does that person tend to abuse amphetamines?

It is super difficult to mimic all of these signals in a way that would cluster the same as typical humans.

SoftTalker 4 days ago | parent | next [-]

We used to say the same sorts of things about LLM prose, music, and image generation. Now just a few years later it can be very difficult to know for sure if something is made by AI or a human. There are still tells, but they are much more subtle and harder to spot, and models are still improving. Mimicing human mouse movement won't be any more of a challenge.

gobdovan 4 days ago | parent [-]

Humans are very inefficient when it comes to navigating the web, but also take actions pretty fast when completing forms. You don't really need advanced ML to see bots spend two seconds to read a full page, then spend 10 seconds just to click two buttons a human would click together in under 2 seconds. The amount of sophistication in bot detection peaks at about 'if user searches 20 queries in less than 5 minutes on our search engine and uses incognito, CAPTCHA them'.

Because of this, perfectly mimicking humans is not a good goal for a bot (as it is the case for AI in music), because they would become very inefficient, at least latency wise (throughput could be engineered around by scraping many unrelated webpages in parallel).

lossolo 4 days ago | parent | prev | next [-]

> It is super difficult to mimic all of these signals in a way that would cluster the same as typical humans.

Not really, beat ML with ML. I won't disclose how to do it, because who knows who might read this, but you can easily do it with a model trained for that purpose.

nerdsniper 4 days ago | parent | next [-]

Sure - it's just hard for rando's to get tons and tons of real human interaction data to run a GAN against. "How to do the training" isn't the barrier for this, and not worth keeping a secret.

reluctant_dev 4 days ago | parent | prev [-]

[dead]

angelhadjiev 3 days ago | parent | prev [-]

[flagged]

stogot 4 days ago | parent | prev | next [-]

In 2027 how many tokens will we spend to create the jitter, pre-jitter planning, post-jitter verification, and then cloudflare’s inevtiable counter-jitter

RedRocketFlash 4 days ago | parent | next [-]

"We got this Trace-Buster-Buster-Buster that's gonna bust the Trace-Buster-Buster and bust their .... uh, uh, uh ... Trace!!"

zdc1 4 days ago | parent | prev [-]

Someone needs to vibecode a "virtual mouse" tool for the agents to steer instead (semi /s)

teravor 4 days ago | parent | next [-]

that's actually how you do it. adversarial systems like those are prime candidates. one agent develops detection mechanisms and the other agent defeats them. progression signal is easy to get.

and you bootstrap with existing javascript detection engines.

the challenge is usually the human input data, your objective is to be clustered among the humans and for that you need to know what humans look like.

this is not an open ended arms race, it will end once the bots approximate humans to a sufficient degree - false positive rate for detection will become unacceptable even if the detection system is slightly ahead.

RedRocketFlash 4 days ago | parent | prev [-]

Not even. If this is being detected by client-side JS, someone can just reverse-engineer that code, and push a stream of signals into CF to emulate what a human user would generate.

zuzululu 4 days ago | parent | prev | next [-]

Nothing. But you are already at a disadvantage because Cloudflare has seen far more real jitter data and you are up against that. It might work in the short term but after a while you start showing pretty obvious patterns. There's also a great variety of jitter data on specific websites or layouts that would be very easy to catch someone artificially emulating jitter

kypro 4 days ago | parent | prev | next [-]

There's always been an arms race in anti-bot technology and more sophisticated bots.

I'm sure, they can add a jitter, but then you just change how you detect / weight detection.

fwlr 4 days ago | parent | prev | next [-]

The jitter you add has to specifically be “jitter that mimics human cursor movement”, which is extraordinarily non-trivial to synthesise.

SAI_Peregrinus 4 days ago | parent | next [-]

No, it's "jitter that mimics human cursor movements detected by Cloudflare's Precursor script". It'll just be another arms race.

sbarre 4 days ago | parent [-]

Like any other detection system you will always have determined adversaries that put in the work to bypass it.

But that doesn't mean you shouldn't still try to block the much larger number of less sophisticated/resourced adversaries that are using OOTB libraries and low-effort setups.

SAI_Peregrinus 4 days ago | parent [-]

Sure, but of course since there's profit to be made defeating these systems once someone makes a program to defeat detection they'll sell it. Complicated attacks only stop simple attackers until a sophisticated attacker scripts & sells the exploit. Not that you shouldn't try, just don't expect defenses to last long-term.

justinhj 4 days ago | parent | prev [-]

are you sure it's non trivial? they posted a 2d image of what it looks like. a fairly simple model of the users wrist and mouse position doesn't seem crazy hard but the devil is in the details

fwlr 4 days ago | parent [-]

Naturally it depends on how well Cloudflare built this implementation. In the abstract, though, a sufficiently accurate prediction system should expect to recover the causal structure of the phenomenon it is attempting to predict, and thus an imitator hoping to defeat the predictor should expect to contain the same causal structure (i.e. physical simulation of a human hand to arbitrary level of detail).

stronglikedan 4 days ago | parent | prev | next [-]

Does anyone besides me try to beat the jitter to fail the captcha? It never works, and yet I continue to try.

4 days ago | parent | prev [-]
[deleted]