home tags events about login
one honk maybe more

benjojo posted 04 Nov 2026 17:10 +0000

(long one, I am sorry)

Reading around the internet I see a lot of people expressing their extreme displeasure at how everything on the internet now seems to show a "verifying your browser" type page, and while this is extremely annoying I assure you from the web sites point of view this is basically existentially required.

Allow me to go into more detail from the point of view of the company that I run, and I'm sure the story is similar in many different places.

On an average day bgp.tools gets about 500~ users or so actively using the website at any given time, and let's assume this results in a request rate of ~10 RPS of dynamic requests (this is not the actual number but it's easier to just provide round benchmark numbers), so basically this excludes CSS/JS/Images/etc.

At the time of writing bgp.tools is "shooting down" about ~40 bot scraper connections _per second_, and the connection attempts the do get through tend to go on to each try and perform ~5 RPS until stopped. To add on top these things continuously do cache misses, which makes sense given at that point is to try and extract as much information from you, for no cost, and as much/fast as possible.

This is very quickly unsustainable.


The problem is that these scrapers are aware that they are unwelcome, and so they will happily do things like: (listed in the order of most commonly done)

A) Use normal browser user agent strings so it's not obvious from basic access.log files

B) Emulate real browser TLS handshakes to evade JA-3 and similar mitigations

C) Use proxies that have lease lines with popular eyeball ISP providers and rented IP space, so that AS blocks do not work

D) Use entire botnets of smart TVs and other compromised devices, mostly sitting behind "normal" networks

E) Use free mobile phone app/games with a "special" SDK as proxies

F) Run entire browser stacks purely to load pages in the most "authentic" way possible

With C+D+E traits combined, IP/Subnet/ASN blocks no longer work, with A+B you cannot easily identify what is what, so this leaves you in a dilemma:


If you run a website which serves information anonymously for free, you have a choice of three options:

1) Put everything behind a log-in barrier (this might destroy your business)

2) Purchase/rent more infrastructure purely for the purpose of serving bots, and at a significant multiplier of your existing infrastructure (this might destroy your business)

3) Use a "verify your browser" step to cut out 90%+ of this mess at the cost of annoying users a bit


(3) is the only really viable option for a lot of people, the pure scale of the scraping problem for some website is just not survivable at most peoples current scales.

joepie91@fedi.slight.. replied 04 Nov 2026 16:57 +0000
in reply to: https://benjojo.co.uk/u/benjojo/h/1YxzY821JjV34QWjr6

@benjojo what I am missing from this, and it's what I find missing from most of these rationales, is behaviour-based blocking.

you describe things like high request rates and high amounts of cache misses as typical scraper behaviour (and this matches what I've seen myself). so why could these not be used as signals for determining which clients are scrapers?

it's not necessarily reasonable to expect behavioural blocking from someone who is running off-the-shelf software, but if you're building/maintaining your own thing, why would this not be in the list of options?

benjojo replied 04 Nov 2026 17:01 +0000
in reply to: https://fedi.slightly.tech/users/joepie91/statuses/01M6KQXMARJX0G0B4KWXS6NKQ2

@joepie91

so why could these not be used as signals for determining which clients are scrapers?

Quite a lot of the time these IP pools are aware of this exact strategy and deploy a "one and done" policy. every single request comes from a "brand new" (to you) IP Address, thanks to the fact that these guys have unbelievably huge pool of addresses to choose from, it is unlikely that you are ever going to figure out all of them.

joepie91@fedi.slight.. replied 04 Nov 2026 17:10 +0000
in reply to: https://benjojo.co.uk/u/benjojo/h/npDzJrBLYnVzjtfXSk

@benjojo I am aware of this. this scraping strategy has its own detectable signals, such as trying to directly access a path that nobody would ever hotlink to, with no prior browsing history on the site.

(if your goal is to stop scrapers from doing damage to your infrastructure, rather than universally blocking all "AI access", then you don't *need* to figure out all of them - just enough of them to make their impact irrelevant, so *some* requests cannot be caught that way and that's okay)

benjojo replied 04 Nov 2026 17:14 +0000
in reply to: https://fedi.slightly.tech/users/joepie91/statuses/01M6KRNGGMSPM4H8FX8B4Z4511

@joepie91 Unfortunately for my case almost all of the URLs being scraped are URLs that the people might link to, meaning that I cannot reliably infer anything from the fact that somebody is going to a URL "cold"

For the most part if you want to stop scrapers from doing damage while also admitting that you're not going to stop them all (as you said), the exact "verifying your browser" solution is basically the only thing left

benjojo replied 04 Nov 2026 16:39 +0000
in reply to: https://benjojo.co.uk/u/benjojo/h/1YxzY821JjV34QWjr6

It has to stated there are so many better things I wish I could be doing with my life and my business, but unfortunately I am basically forced to do a continuous round of fucking fire fighting in order to keep stuff running correctly because people who have no concept of a social contract (instead have replaced it with a race to... something?) are trying to train the next model

miki@dragonscave.spa.. replied 04 Nov 2026 18:21 +0000
in reply to: https://benjojo.co.uk/u/benjojo/h/1YxzY821JjV34QWjr6

@benjojo People have bad intuitions about how computers work. Yes, and "people" includes smart individuals who work in tech. If most customers of your store are criminals with bad intentions, something is seriously wrong with your neighborhood. If most of your website's requests come from criminals with bad intentions... oh, that's tuesday.