首页

Anubis Works

319 点作者 evacchi大约 2 个月前

26 条评论

gnabgib大约 2 个月前
Related <i>Anubis: Proof-of-work proxy to prevent AI crawlers</i> (100 points, 23 days ago, 58 comments) <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=43427679">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=43427679</a>
raggi大约 2 个月前
It&#x27;s amusing that Xe managed to turn what was historically mostly a joke&#x2F;shitpost into an actually useful product. They did always say timing was everything.<p>I am kind of surprised how many sites seem to want&#x2F;need this. I get the slow git pages problem for some of the git servers that are super deep, lack caches, serve off slow disks, etc.<p>Unesco surprised me some, the sub-site in question is pretty big, it has thousands of documents of content, but the content is static - this should be trivial to serve, so what&#x27;s going on? Well it looks like it&#x27;s a poorly deployed Wordpress on top of Apache, with no caching enabled, no content compression, no HTTP 2&#x2F;3. It would likely be fairly easy to get this serving super cheap on a very small machine, but of course doing so requires some expertise, and expertise still isn&#x27;t cheap.<p>Sure you could ask an LLM, but they still aren&#x27;t good at helping when you have no clue what to ask - if you don&#x27;t even really know the site is slower than it should be, why would you even ask? You&#x27;d just hear about things getting crushed and reach for the furry defender.
评论 #43671404 未加载
评论 #43669199 未加载
评论 #43671687 未加载
评论 #43671284 未加载
gyomu大约 2 个月前
If you’re confused about what this is - it’s to prevent AI scraping.<p>&gt; Anubis uses a proof-of-work challenge to ensure that clients are using a modern browser and are able to calculate SHA-256 checksums<p><a href="https:&#x2F;&#x2F;anubis.techaro.lol&#x2F;docs&#x2F;design&#x2F;how-anubis-works" rel="nofollow">https:&#x2F;&#x2F;anubis.techaro.lol&#x2F;docs&#x2F;design&#x2F;how-anubis-works</a><p>This is pretty cool, I have a project or two that might benefit from it.
评论 #43669511 未加载
评论 #43671745 未加载
namanyayg大约 2 个月前
&quot;It also uses time as an input, which is known to both the server and requestor due to the nature of linear timelines&quot;<p>A funny line from his docs
评论 #43668898 未加载
评论 #43682007 未加载
AnonC大约 2 个月前
Those images on the interstitial page(s) while waiting for Anubis to complete its check are so cute! (I’ve always found all the art and the characters in Xe’s blog very beautiful)<p>Tangentially, I was wondering how this would impact common search engines (not AI crawlers) and how this compares to Cloudflare’s solution to stop AI crawlers, and that’s explained on the GitHub page. [1]<p>&gt; Installing and using this will likely result in your website not being indexed by some search engines. This is considered a feature of Anubis, not a bug.<p>&gt; This is a bit of a nuclear response, but AI scraper bots scraping so aggressively have forced my hand.<p>&gt; In most cases, you should not need this and can probably get by using Cloudflare to protect a given origin. However, for circumstances where you can&#x27;t or won&#x27;t use Cloudflare, Anubis is there for you.<p>[1]: <a href="https:&#x2F;&#x2F;github.com&#x2F;TecharoHQ&#x2F;anubis&#x2F;">https:&#x2F;&#x2F;github.com&#x2F;TecharoHQ&#x2F;anubis&#x2F;</a>
评论 #43688612 未加载
评论 #43671956 未加载
prologic大约 2 个月前
I&#x27;ve read about Anubis, cool project! Unfortunately, as pointed out in the comments, requires your site&#x27;s visitors to have Javascript™ enabled. This is totally fine for sites that require Javascript™ anyway to enhance the user experience, but not so great for static sites and such that require no JS at all.<p>I built my own solution that effectively blocks these &quot;Bad Bots&quot; at the network level. I effectively block the entirety of several large &quot;Big Tech &#x2F; Big LLM&quot; networks entirely at the ASN (BGP) by utilizing MaxMind&#x27;s database and a custom WAF and Reverse Proxy I put together.
评论 #43669553 未加载
评论 #43669313 未加载
评论 #43669138 未加载
评论 #43670788 未加载
roenxi大约 2 个月前
I like the idea but this should probably be something that is pulled down into the protocol level once the nature of the challenge gets sussed out. It&#x27;ll ultimately be better for accessibility if the PoW challenge is closer to being part of TCP than implemented in JavaScript individually by each website.
评论 #43671446 未加载
评论 #43686050 未加载
tripdout大约 2 个月前
The bot detection takes 5 whole seconds to solve on my phone, wow.
评论 #43668824 未加载
评论 #43668607 未加载
评论 #43668678 未加载
评论 #43668723 未加载
cookiengineer大约 2 个月前
I am currently building a prototype of what I call the &quot;enigma webfont&quot; where I want to implement user sessions with custom seeds &#x2F; rotations for a served and cached webfont.<p>The goal is to make web scraping unfeasible because of computational costs for OCR. It&#x27;s a cat and mouse game right now and I want to change the odds a little. The HTML source would be effectively void without the user session, meaning an OTP like behavior could also make web pages unreadable once the assets go uncached.<p>This would allow to effectively create a captcha that would modify the local seed window until the user can read a specified word. &quot;Move the slider until you can read the word Foxtrott&quot;, for example.<p>I sure would love to hear your input, Xe. Maybe we can combine our efforts?<p>My tech stack is go, though, because it was the only language where I could easily change the webfont files directly without issues.
评论 #43669695 未加载
评论 #43670983 未加载
pabs3大约 2 个月前
It works to block users who have JavaScript disabled, that is for sure.
评论 #43671115 未加载
throwaway150大约 2 个月前
Looks cool. But please help me understand. What&#x27;s to stop AI companies from solving the challenge, completing the proof of work and scrape websites anyway?
评论 #43668774 未加载
评论 #43668823 未加载
评论 #43668857 未加载
评论 #43668690 未加载
评论 #43670014 未加载
评论 #43669150 未加载
mushufasa大约 2 个月前
I looked through the documentation and I&#x27;ve come across a couple sites using this already.<p>Genuine question: why not leverage the proof-of-work challenge literally into mining that generates some revenue for a website? Not a new idea, but when I looked at the docs it didn&#x27;t seem like this challenge was tied to any monetary coin value.<p>This is coming from someone who is NOT a big crypto person, but it strikes me that this would be a much better way to monetize organic high quality content in this day and age. Basically the idea that Brave browser started with, meeting it&#x27;s moment.<p>I&#x27;m sure Xe has already considered this. Do they have a blog post about this anywhere?
snvzz大约 2 个月前
My Amiga 1200 hates these tools.<p>It is really sad that the worldwide web has been taken to the point where this is needed.
pabs3大约 2 个月前
Recently I heard of a site blocking bot requests with a message telling the bot to download the site via Bittorrent instead.<p>Seems like a good solution to the badly behaved scrapers, and I feel like the web needs to move away from the client-server model towards a swarm model like Bittorrent anyway.
评论 #43670110 未加载
deknos大约 2 个月前
I wish, there was also an tunnel software (client+server) where<p>* the server appears on the outside as an https server&#x2F;reverse proxy * the server supports self-signed-certificates or letsencrypt * when a client goes to a certain (sub)site or route, http auth can be used * after http auth, all traffic tunnel over that subsite&#x2F;route is protected against traffic analysis, for example like the obfsproxy does it.<p>Does anyone know something like that? I am tempted to ask xeiaso to add such features, but i do not think his tool is meant for that...
评论 #43670943 未加载
评论 #43671298 未加载
dmtfullstack大约 2 个月前
Humans are served by bots. Any bot requesting traffic is doing so on behalf of a human somewhere.<p>What is the problem with bots asking for traffic, exactly?<p>Context of my perspective: I am a contractor for a team that hosts thousands of websites on a Kubernetes cluster. All of the websites are on a storage cluster (combination of ZFS and Ceph) with SATA and NVMe SSDs. The machines in the storage cluster and also the machines the web endpoints run on have tons of RAM.<p>We see a lot of traffic from what are obviously scraping bots. They haven&#x27;t caused any problems.
评论 #43681690 未加载
udev4096大约 2 个月前
PoW captchas are not new. What&#x27;s different with Anubis? How can it possibly prevent &quot;AI&quot; scrapers if the bots have enough compute to solve the PoW challenge? AI companies have quite a lot of GPUs at their disposal and I wouldn&#x27;t be surprised if they used it for getting around PoW captchas
评论 #43671127 未加载
matt3210大约 2 个月前
A package which includes the cool artwork would be awesome
评论 #43670094 未加载
babuloseo大约 2 个月前
Nice will try to deploy to my sites after I eat some mac and cheese
matt3210大约 2 个月前
Very nice work!
anubiskhan大约 2 个月前
I approve.
perching_aix大约 2 个月前
&gt; Sadly, you must enable JavaScript to get past this challenge. This is required because AI companies have changed the social contract around how website hosting works. A no-JS solution is a work-in-progress.<p>Will be interested to hear of that. In the meantime, at least I learned of JShelter.<p>Edit:<p>Why not use the passage of time as the limiter? I guess it would still require JS though, unless there&#x27;s some hack possible with CSS animations, like request an image with certain URL params only after an animation finishes.<p>This does remind me how all of these additional hoops are making web browsing slow.<p>Edit #2:<p>Thinking even more about it, time could be made a hurdle by just.. slowly serving incoming requests. No fancy timestamp signing + CSS animations or whatever trickery required.<p>I&#x27;m also not sure if time would make at-scale scraping as much more expensive as PoW does. Time is money, sure, but that much? Also, the UX of it I&#x27;m not sold on, but could be mitigated somewhat by doing news website style &quot;I&#x27;m only serving the first 20% of my content initially&quot; stuff.<p>So yeah, will be curious to hear the non-JS solution. The easy way out would be a browser extension, but then it&#x27;s not really non-JS, just JS compartmentalized, isn&#x27;t it?<p>Edit #3:<p>Turning reasoning on for a moment, this whole thing is a bit iffy.<p>First of all, the goal is that a website operator would be able to control the use of information they disseminate to the general public via their website, such that it won&#x27;t be used specifically for AI training. In principle, this is nonsensical. The goal of sharing information with the general public (so, people) involves said information eventually traversing through a non-technological medium (air, as light), to reach a non-technological entity (a person). This means that any technological measure will be limited to before that medium, and won&#x27;t be able to affect said target either. Put differently, I can rote copy your website out into a text editor, or hold up a camera with OCR and scan the screen, if scale is needed.<p>So in principle we&#x27;re definitely hosed, but in practice you can try to hold onto the modality of &quot;scraping for AI training&quot; by leveraging the various technological fingerprints of such activity, which is how we get to at-scale PoW. But then this also combats any other kind of at-scale scraping, such as search engines. You could whitelist specific search engines, but then you&#x27;re engaging in anti-competitive measures, since smaller third party search engines now have to magically get themselves on your list. And even if they do, they might be lying about being just a search engine, because e.g. Google may scrape your website for search, but will 100% use it for AI training then too.<p>So I don&#x27;t really see any technological modality that would be able properly discriminate AI training purposed scraping traffic for you to use PoW or other methods against. You may decide to engage in this regardless based on statistical data, and just live with the negative aspects of your efforts, but then it&#x27;s a bit iffy.<p>Finally, what about the energy consumption shaped elephant in the room? Using PoW for this is going basically exactly against the spirit of wanting less energy to be spent on AI and co. That said, this may not be a goal for the author.<p>The more I think about this, the less sensible and agreeable it is. I don&#x27;t know man.
评论 #43668958 未加载
评论 #43668998 未加载
评论 #43668835 未加载
1oooqooq大约 2 个月前
tries to block abusive companies using infinite money glitch from clueless investors, by making every request cost a few fractions of a cent more.<p>... yeah, that will totally work.
apt-apt-apt-apt大约 2 个月前
Since Anubis is related to AI, the part below read as contradictory at first. As if too many donations would cause the creator to disappear off to Tahiti along with the product development.<p>&quot;If you are using Anubis .. please donate on Patreon. I would really love to not have to work in generative AI anymore...&quot;
mentalgear大约 2 个月前
Seems like a great idea, but I&#x27;d be nice if the project had a simple description. (and not use so much anime, as it gives an unprofessional impression)<p>This is what it actually does: Instead of only letting the provider bear the cost of content hosting (traffic, storage), the client also bears costs when accessing in form of computation. Basically it runs additional expansive computation on the client, which makes accessing 1000s of your webpages at high interval expansive for crawlers.<p>&gt; Anubis uses a proof of work in order to validate that clients are genuine. The reason Anubis does this was inspired by Hashcash, a suggestion from the early 2000&#x27;s about extending the email protocol to avoid spam. The idea is that genuine people sending emails will have to do a small math problem that is expensive to compute, but easy to verify such as hashing a string with a given number of leading zeroes. This will have basically no impact on individuals sending a few emails a week, but the company churning out industrial quantities of advertising will be required to do prohibitively expensive computation.
userbinator大约 2 个月前
Yes, it just worked to stop me, an actual human, from seeing what you wanted to say... and I&#x27;m not interested enough to find a way around it that doesn&#x27;t involve cozying up to Big Browser. At least CloudFlare&#x27;s discrimination can be gotten around without JS.<p>Wouldn&#x27;t it be ironic if the amount of JS served to a &quot;bot&quot; costs even more bandwidth than the content itself? I&#x27;ve seen that happen with CF before. Also keep in mind that if you anger the wrong people, you might find yourself receiving a <i>real</i> DDoS.<p>If you want to stop blind bots, perhaps consider asking questions that would easily trip LLMs but not humans. I&#x27;ve seen and used such systems for forum registrations to prevent generic spammers, and they are quite effective.
评论 #43670558 未加载