Memblokir Scraper AI dengan Anubis dari Techaro
Apa itu Anubis dari Techaro, cara tantangan proof-of-work di browser menyaring scraper AI, siapa yang memakainya, dan kompromi yang perlu kamu tahu.
Jawaban singkat
Anubis adalah perangkat lunak open-source (MIT) dari Techaro yang menyaring scraper AI di depan website. Browser pengunjung menyelesaikan tantangan proof-of-work SHA-256 lewat JavaScript, lalu diberi cookie. Komprominya: butuh JavaScript dan bot yang berguna perlu diizinkan lewat kebijakan.
Daftar isi
Kamu mengelola forum komunitas, wiki internal yang terbuka, atau repositori kode di server sendiri. Suatu pagi server melambat, tagihan bandwidth naik, dan log penuh permintaan dari ribuan alamat IP yang menjelajahi setiap halaman, setiap riwayat revisi, setiap kombinasi filter. Pengunjung manusia jumlahnya biasa saja. Yang datang adalah perayap (crawler) yang mengumpulkan data, banyak di antaranya untuk melatih model AI, dan sebagian tidak peduli pada robots.txt.
Masalah inilah yang ingin diatasi Anubis. README proyeknya menyebut Anubis dirancang untuk melindungi "internet kecil" dari banjir permintaan yang datang dari perusahaan AI, dan dibuat seringan mungkin agar siapa pun mampu memasangnya.
Apa itu Anubis dari Techaro?
Anubis adalah perangkat lunak open-source dari Techaro, dengan lisensi MIT, yang dikembangkan di GitHub. Proyek ini menyebut dirinya Web AI Firewall Utility: ia dipasang di antara internet dan aplikasi web (sebagai reverse proxy atau di belakang web server seperti Nginx), lalu "menimbang jiwa" setiap koneksi dengan satu atau lebih tantangan sebelum meneruskannya ke aplikasi. Nama dan maskotnya diambil dari mitologi Mesir tentang penimbangan jiwa.
Per 4 November 2026, rilis terbaru yang tercantum di halaman rilis GitHub adalah v1.28.2, diterbitkan 23 Oktober 2026.
Pengembangnya terus terang soal posisinya. README menyebut Anubis sebagai "respons yang agak nuklir", yang bisa ikut memblokir scraper kecil dan menghambat bot yang baik seperti Internet Archive. README yang sama juga menyarankan bahwa dalam banyak kasus kamu mungkin tidak memerlukannya dan cukup memakai layanan proteksi seperti Cloudflare. Anubis ditujukan untuk situasi ketika kamu tidak bisa atau tidak mau memakai layanan semacam itu.
Cara kerja tantangan proof-of-work
Menurut dokumentasi desainnya, Anubis memakai tantangan proof-of-work untuk memastikan klien adalah browser modern yang mampu menghitung checksum SHA-256.
Alurnya begini. Ketika permintaan datang dan belum membawa cookie yang sah, Anubis mengirim halaman tantangan berisi sebuah string dan tingkat kesulitan. JavaScript di browser lalu mencoba banyak angka (nonce) sampai menemukan hash SHA-256 yang diawali sejumlah nol tertentu. Jumlah nol itu adalah tingkat kesulitan, dan pengelola bisa mengaturnya per aturan. Bagi satu pengunjung, pekerjaan ini selesai dalam waktu singkat di latar belakang. Bagi scraper yang meminta jutaan halaman dari banyak alamat, biaya komputasi yang sama dikalikan jutaan kali.
Setelah tantangan berhasil, Anubis memeriksa jawabannya dan memberi cookie bernama techaro.lol-anubis-auth berisi JWT yang ditandatangani dengan kunci ed25519. Dokumentasi menyebut token itu berlaku sekitar seminggu, sehingga pengunjung tidak perlu mengerjakan tantangan di setiap halaman.
Tidak semua permintaan ditantang. Logika bawaan menantang permintaan dengan User-Agent yang mengandung kata "Mozilla", yaitu yang mengaku sebagai browser, karena di situlah scraper biasanya menyamar. Jalur seperti /.well-known, /robots.txt, dan /favicon.ico, serta path yang jelas berupa feed (berakhiran .rss, .xml, atau .atom), dibiarkan lewat. Tujuannya agar klien git, pembaca RSS, dan klien lain yang tidak berbahaya tetap bisa mengakses.
Perilaku ini bisa diubah lewat file kebijakan (policy) dalam format YAML atau JSON. Setiap aturan mencocokkan jalur, User-Agent, atau header, lalu memberi salah satu dari empat aksi: ALLOW (langsung diteruskan), DENY (ditolak dengan halaman yang membuat scraper mengira berhasil), CHALLENGE (diberi tantangan), atau WEIGH (bobot kecurigaan permintaan disesuaikan). Kebijakan bawaan di repositori sudah berisi daftar bot AI yang diblokir dan daftar perayap mesin pencari yang diizinkan.
Siapa yang memakai Anubis?
Repositori Anubis memuat daftar situs yang diketahui memakainya, dengan catatan bahwa daftar itu tidak lengkap. Per 4 November 2026, isinya didominasi infrastruktur proyek open-source: GitLab milik GNOME dan freedesktop.org, git dan trac milik FFmpeg, Codeberg, wiki Arch Linux, serta cgit dan wiki glibc di Sourceware. Ada juga arsip dan katalog perpustakaan universitas, misalnya milik Duke University.
Polanya masuk akal. Forge git, bug tracker, wiki, dan arsip milis punya halaman yang sangat banyak dan dihasilkan secara dinamis: setiap commit, setiap diff, setiap revisi wiki. Bagi perayap yang menjelajah tanpa batas, situs seperti ini adalah ladang. Bagi pengelolanya, yang sering dijalankan relawan dengan anggaran terbatas, setiap permintaan itu memakan CPU dan bandwidth.
Anubis dibanding cara lain menahan bot
Anubis bukan satu-satunya alat, dan bukan pengganti semuanya. Tabel ini membantu menempatkannya.
| Cara | Yang dihentikan | Kelemahan utama |
|---|---|---|
robots.txt | Perayap yang patuh aturan | Bersifat sukarela, scraper nakal mengabaikannya |
| Rate limiting per IP | Banjir permintaan dari sedikit alamat | Lemah terhadap scraper yang memakai ribuan IP |
| Blokir User-Agent | Bot yang jujur menyebut namanya | Mudah diakali dengan User-Agent palsu |
| WAF (aturan keamanan aplikasi) | Serangan seperti injeksi dan pola berbahaya | Tidak dirancang khusus untuk scraping massal |
| Layanan proteksi bot dan CDN | Bot dan DDoS di tepi jaringan | Lalu lintas melewati pihak ketiga |
| Anubis (proof-of-work) | Scraper yang menyamar sebagai browser | Butuh JavaScript, bisa menghambat bot yang berguna |
Dalam praktik, banyak pengelola menggabungkan beberapa lapis: WAF untuk serangan aplikasi, rate limiting untuk banjir sederhana, dan Anubis untuk scraper yang menyamar. Kalau kamu ingin memahami lapisan WAF lebih jauh, dasarnya ada di apa itu WAF. Untuk banjir lalu lintas yang bertujuan melumpuhkan server, pembahasannya berbeda, lihat anti-DDoS VPS.
Kompromi yang perlu dipertimbangkan
Kompromi pertama adalah JavaScript. Pengunjung yang mematikan JavaScript, memakai browser teks, atau alat bantu tertentu tidak bisa melewati tantangan proof-of-work. Anubis menyediakan tantangan alternatif bernama metarefresh yang tidak memakai JavaScript, hanya meminta browser menyegarkan halaman setelah jeda. Metode ini tidak aktif sebagai aturan utama, dan dokumentasinya mengingatkan tingkat lolos salahnya jauh lebih tinggi karena banyak scraper modern memakai Chrome tanpa tampilan (headless). Di kebijakan bawaan, metarefresh hanya dipakai untuk permintaan yang bobot kecurigaannya rendah.
Kompromi kedua adalah mesin pencari dan bot yang berguna. Kalau perayap Google atau Bing ikut tertahan, halamanmu bisa hilang dari hasil pencarian. Kebijakan bawaan Anubis, lewat file _allow-good.yaml, sudah mengizinkan perayap dari sejumlah mesin pencari dan arsip, antara lain Google, Bing, Apple, DuckDuckGo, Qwant, Kagi, Mojeek, Marginalia, Arquivo.pt, dan Internet Archive. Dokumentasi kebijakan juga menunjukkan cara mengizinkan perayap hanya bila alamat IP-nya cocok dengan rentang yang diterbitkan resmi oleh mesin pencari itu, karena User-Agent saja mudah dipalsukan. Kalau website-mu bergantung pada lalu lintas organik, uji dulu setelah pemasangan, misalnya lewat alat inspeksi URL di Search Console. Dasar-dasar agar halaman tetap terindeks dibahas di SEO dasar untuk UMKM.
Kompromi ketiga adalah pengalaman pengunjung dan biaya perangkat. Setiap pengunjung baru melihat halaman tantangan sejenak, dan perangkat lama atau HP kelas bawah butuh waktu lebih lama untuk menghitung. Menaikkan tingkat kesulitan memang makin memberatkan scraper, tetapi juga makin memberatkan pengunjung manusia.
Terakhir, ini perlombaan yang terus berjalan. Dokumentasi kebijakan sendiri mengakui bahwa sebagian bot cukup pintar untuk melewati tantangan. Anubis menaikkan biaya scraping, bukan membuatnya mustahil, sehingga kebijakan dan versinya perlu diperbarui rutin. Kalau kamu memasangnya di server sendiri, rawat bersama langkah dasar pengamanan server seperti di cara mengamankan VPS baru.
Jadi, kapan Anubis masuk akal? Ketika situsmu punya banyak halaman dinamis yang terus dijelajahi scraper, seperti forge git, wiki, forum, atau arsip, dan kamu ingin penyaringnya berjalan di server sendiri. Kalau trafik websitemu wajar dan masalahnya hanya lonjakan sesekali, mulai dari rate limiting atau proteksi di tepi jaringan dulu. Langkah pemasangannya dibahas di cara pasang Anubis di depan Nginx dengan Docker.
Sumber & referensi
- github.com/TecharoHQ/anubis
- github.com/TecharoHQ/anubis/blob/main/docs/docs/design/how-anubis-works.mdx
- github.com/TecharoHQ/anubis/blob/main/docs/docs/admin/policies.mdx
- github.com/TecharoHQ/anubis/blob/main/docs/docs/user/known-instances.md
- github.com/TecharoHQ/anubis/blob/main/data/botPolicies.yaml
- github.com/TecharoHQ/anubis/releases


