The Anubis GitHub repository

Anubis

March 1, 2025
golangsecurityaianti-botdefenseproof-of-work

Anubis

Anubis is a security middleware designed to protect web services by implementing a Proof-of-Work (PoW) challenge. It effectively “weighs the soul” of incoming HTTP requests, deterring automated bots, AI crawlers, and scrapers while allowing legitimate users through.

Built with Go, Anubis integrates into web applications to present a computational challenge that is trivial for human users but resource-intensive for bots attempting to access the service at scale. This acts as a significant barrier against unwanted automated traffic.

Key Features

  • Proof-of-Work Defense: Utilizes computational challenges to verify clients.
  • Bot Mitigation: Effectively stops common bots, scrapers, and AI crawlers.
  • Configurable: Allows tuning of difficulty and other parameters.
  • Integration: Designed to work as middleware in Go web applications.
  • Open Graph Passthrough: Enables social previews of protected resources without exempting each scraper individually.
  • Customizable Policies: Define rules to allow, deny, or challenge incoming requests based on path and user agent.

Implementation Options

Anubis can be deployed in various ways:

  • Native Packages: Available for Debian-based (apt), Red Hat-based (rpm), and as a tarball for other systems.
  • Docker: Ready-to-use container images for quick deployment.
  • Kubernetes: Helm charts for orchestrated environments.

Algorithm Selection

Anubis offers two proof-of-work algorithms:

  • Fast: Highly optimized JavaScript that runs as efficiently as possible.
  • Slow: Intentionally inefficient JavaScript that wastes time and memory, perfect for known malicious clients.

Real-World Applications

Anubis is particularly effective for protecting:

  • Git repositories (Gitea/Forgejo)
  • Content management systems
  • Any web application vulnerable to scraping or automated attacks

For detailed usage, configuration options, and a live demo, please refer to the official Anubis Documentation.

Notable Installations

The United Nations
The Linux Foundation