There's a nice article: The Day I Logged 1 In Every 2000 Public IPv4: Visualizing The AI Scraper DDoS which someone kindly dropped in the fuck_ai community. It's worth reading.

After reading it, I decided to have another look at my logfiles and I'm pretty sure I see the same thing. A good while back I had my small 1-3 people instance nearly melt because of Tencent and Alibaba. I managed to address that by blocking some of their IP ranges. Proceedingly rimu implemented a Honeypot, which currently has 14.272 IPs blocked on my instance. And a few database requests got more efficient. But I think the overall situation deteriorated. These days the AI scrapers seem to come from everywhere on the internet.

My logfiles just scroll by again. It's not as bad as when I was hit by the really nasty crawlers. The server keeps up with it, I'm just constantly sending out loads of data. There's a crawler getting caught up in the honeypot almost every minute. But there's also still a near infinite amount of addresses left, querying all kinds of posts, communities and user profiles. And I notice since it's a dysproportionate amount of traffic for a small instance.

I think the honeypot is great. But the AI scrapers have way to many addresses. And in the mid-term we probably need to come up with some more mitigations. At least to cater to smaller servers.

Just wanted to draw some attention to how things change. I've switched my instance to "private" for now, but I'll continue to investigate.

I've made two images myself (for palaver.p3x.de). First is all IPv4 addresses in my nginx log. That includes all Fedi instances and users. But I'm just a small instance and I guess most of the reddish areas are caused by crawlers.

AJvKYRbM1j1amZm.png

Second image is what's in my honeypot, (dots visible after zooming in):

1y7biwvTHxw9Q8q.png

you are viewing a single comment's thread
view the rest of the comments
[–] 2 points 6 months ago (2 children)

Requiring a login to view the site like you have done is extremely effective, but it is a big tradeoff.

in the mid-term we probably need to come up with some more mitigations

I know that some PieFed instances have deployed Anubis successfully (like quokk.au), but, as effective as Anubis might be for most scrapers...it has never really felt like a great solution to me. The whole proof of work model is basically just burning CPU cycles to prove you are human, which doesn't feel great.

However, I don't have a better solution either. Maybe the easiest path forward for now would be to work on documenting Anubis setup instructions in the official docs?

Are there other solutions out there to pull from? Web dev isn't really my jam, so it isn't something I keep up with new developments, and stuff can move quickly.

  • source
  • hideshow 2 child comments
  • [–] [S] 2 points 6 months ago* (1 child)

    The whole proof of work model is basically just burning CPU cycles to prove you are human, which doesn’t feel great.

    Hmmh. I mean the AI industry doesn't care at all about burning CPU cycles. Or wasting massive network resources to scrape some random garbage and come back a few minutes later. So I don't really know if a proof of work is the correct approach here. I don't think that's a long-term deterrent against someone like them who doesn't even care about the CPU cycles.

  • source
  • parent
  • hideshow 1 child comment