Creepy Crawlies

(people.kernel.org)

117 points | by zdw 21 hours ago

16 comments

  • Demiurge 16 minutes ago
    I maintain a formally popular gaming website, and it used to have hundreds of legitimate requests per second. The load would be especially high during popular event times. So, it’s always been running on a dedicated server.

    It also has an “online users” counter, which attempted to count real user sessions of unauthenticated user which still maintained a session, which lets them comment, or modify certain filter and display options. It never counted the Google bot.

    Over the last few years this counter went from 100-200 users online to thousands. I have been very hands-off with it for many years, doing minor upgrades and backups. However, the site also has gotten quite slow, these sessions were obviously impacting it. So, I finally investigated these crawlers, and yes, it turns out it’s an insane amount of traffic that is entirely artificial, the site has just a handful of real users, and thousands of these crawling sessions that actually try to do everything they can, click every button. It doesn’t help that sort and search were implemented using GET links.

    I fixed the counter to exclude the crawlers, but I have a bit of a dilemma. I don’t want to stop the bots from updating their knowledge based on all the content.

    The best solution I could find is the new CloudFlare feature where they might charge the crawlers for every request, or otherwise block them. I think that’s a fantastic idea for the internet, at large. I signed up for the beta access, but haven’t heard from them again. I do think it’s unfortunate that this requires CloudFlare and the middleman.

    Overall, it seems like the LLM are really straining the internet economy, the openness of it. Email spam used to be the worst, but the organized trillionaire labs sucking up the entire internet is going to break something if we don’t preempt them better.

    It’s too bad the copyright and public internet systems are not acting quick enough. And I think there is no reason to act like this race really has to be at such a breakneck speed.

    • andai 14 minutes ago
      > And I think there is no reason to act like this race really has to be at such a breakneck speed.

      I would promote this idea to all of my competitors. Nah mate, you don't have to ask her out right now. You can wait until next week ;)

      Anyway, silver linings, looks like we're finally going to get widely adopted infra for microtransactions.

      https://web.archive.org/web/20030202042510/http://www.openp2...

    • rankdiff 11 minutes ago
      What is "formally popular"?
      • klez 6 minutes ago
        From context I'd say they meant "formerly" and that's just a typo. I didn't even notice the error before you pointed it out.
  • yellow_lead 18 minutes ago
    High Anubis difficulty is annoying the hell out of me for several sites. And it's starting to not block LLM bots anymore?

    > 33% are now solving the math and getting through to the main site — because apparently what we have to offer is worth spending a ton of cycles to calculate the Anubis challenge.

    • sethops1 10 minutes ago
      In a few years the VC money will dry up and this gross overspend on slurping data will end.
  • easton 5 minutes ago
    Side note: why are shallow clones evil? I always thought they were cheaper, but I guess that’s really just for my disk space. (since the server has to compute what blobs to give you instead of just “everything”?)
  • AshamedCaptain 19 minutes ago
    This is bad enough that I'm going to stop serving cgit. I've been doing cvsweb, then subversion, then cgit over my home server for many many years and for the first time ever this is annoying my own bw usage.

    It's ridiculous also how you ban an IP then 1 second later another one picks up from where the first one left on.

  • lkbm 26 minutes ago
    > So, you'd think that something that pretends to be “Artificial Intelligence” would use the most efficient way of using our data for training purposes, right? Clone the repos, walk every commit. Done.

    If repos like this were 10%+ of what they crawled, having a special case for clone-able repos would be smart, but if you're crawling everything, you're not going to do an efficiency tweak for each special case that has a more parse-able option.

    • phmx 15 minutes ago
      I guess GitHub is in a similar bunch of sources, it should be also more efficient to crawl by cloning. Anyway, isn’t it the whole sales pitch that it generates tailored solutions fast?
  • chuckadams 53 minutes ago
    Given the nature of git, wouldn't all that HTML be highly cacheable? I get that's not free either, but it's got to be a lot less intensive than having cgit generate it every single time.
    • rcxdude 2 minutes ago
      The issue is there's far more pages than could reasonably be stored: cgit is an old-school server-side renderer and there's a combinatorial explosion of possible pages it could render. The article calculates there's about a quadrillion different pages that could be 'crawled'
    • kees99 28 minutes ago
      Or, html generation could be very, very fast in the first place. For example, serving static files is usually just as fast as a reverse-proxy cache.

      Interestingly enough, cgit bills itself as "a hyperfast web frontend for git repositories" [0]. Alas, nothing is fast enough for the bots, it would appear.

      [0] https://git.zx2c4.com/cgit/about/

    • Zariel 50 minutes ago
      That was my first thought, varnish (vinyl these days) in front of the website should dramatically reduce this as the git repo should be practically static for most of the content.
      • teo_zero 45 minutes ago
        But there are "cubic bazillions" of possible URLs that are being requested. Even if they boil down to "only" some millions actual commits, their rendered HTMLs are all different.
        • kijin 19 minutes ago
          Yes, this is very difficult to solve for sites with many URL variations, like git repos and heavily threaded forums. Your cache is always full, but the hit ratio is abysmal.
    • mik1998 23 minutes ago
      The cache gets evicted between the times the old commits are revisited.
  • Artoooooor 1 hour ago
    How expensive would AI access be if every user paid their fair share instead of shoving it on the people doing the actual work?
    • wredcoll 7 minutes ago
      See also: the price for uber rides.
    • parineum 35 minutes ago
      You mean shoving it onto the investors?
  • a-dub 19 minutes ago
    i wonder what they're all up to. i imagine some are scraping datasets for pre-training, others are probably real-time scrapers looking for security bugs, even more still are agents working on coding tasks and looking at the kernel. also interesting to think about solutions: does everything need to be optimized now for weird access patterns that proliferated ai creates? do the ais need to have behavior trained in to be better netizens? is this the end of anonymous browsing and the beginning of an era where one has to attach an identity to all requests? or the end of community hosted free information services more broadly?
  • initramfs 55 minutes ago
    I've been noticing page views in the past several months with a much wider span of origin on my Blogger stats. Before I would get a few from several countries, but now I am getting views from tiny countries and obscure or outdated browsers and operating systems, which leads me to think scrapers could be using VPN services in various countries along with header anonymizers that mask the device that they are using.

    Extensions like ModHeader, BrowserMask do this: https://github.com/apify/crawlee-python

    https://github.com/mthcht/Masquerade-Spoofer

    Great for AI scrapers, bad for hosters and everyone else.

  • nicman23 23 minutes ago
    couldn't you have anubis on a dynamic difficulty? ie if a ip requests more than 1k pages per day +1 the difficulty ?
    • dunder_cat 19 minutes ago
      Yes, but the article (not to call you out - I just think it's a very important point!) points out that this type of throttling would not be effective:

      > Suddenly, the crawlers were coming from millions of random residential or mobile IPs, all pretending to be random modern browsers. An IP like that would make 4-5 requests and then never show up in the logs again. There was no point in banning them, because by the time you figured out that they were bots, they were already done with you. You just needlessly ballooned your firewall ruleset by adding IPs that would never be back.

      Without something like cookies (which are almost certainly tossed after the IP is rotated) or some other persistent identifier, you are stuck have to apply mitigations that scale with the load you're encountering, which means longer challenges for everyone or degraded functionality, like removing some of the fancier cgit features.

    • PinkaDunka 5 minutes ago
      Maybe anubis difficulty should depend on the age of commit. This year - 4, everything older 8
  • Velocifyer 21 minutes ago
    But why don't they just git clone?
    • rcxdude 0 minutes ago
      These crawlers (in contrast to e.g. googlebot and similar better behaved crawlers) are not very smart: they seem to make very little effort to avoiding crawling useless deep trees of generated pages. About the only thing they seem to put a lot of effort into is avoiding blocking.
    • lkbm 19 minutes ago
      Because they're crawling a billion webpages, only a tiny fraction of which can be git cloned, and configuring a special case just for that tiny fraction isn't worth the effort (of the crawlers).
    • acedTrex 16 minutes ago
      Because the crawlers dont care, they are the internets parasites. Their creators care nothing for people or systems downstream of their greed.
  • acedTrex 15 minutes ago
    It feels inevitable that many systems will have to go to a login/trusted ip source type system. Its just not feasible to continue to operate with 99% of your traffic being fake.
  • jruohonen 21 hours ago
    Off-topic, but anyone with which he did the plots?
  • petesergeant 12 minutes ago
    > Training an LLM on content produced by the LLM gives it the equivalent of a digital prion disease

    Is it foolish of me to have expected more from a blog post on kernel.org?