NorthDuty, layanan pemantau kesehatan situs web, mengungkap bahwa fitur pengambil URL dari pengguna sejatinya berpotensi berubah menjadi mesin server-side request forgery (SSRF). Perusahaan tersebut memuat URL yang diberikan ke dalam browser Chromium asli untuk melaporkan kondisi situs kepada pelanggan.
Serangan bermula ketika pelaku mendaftarkan monitor dengan alamat http://169.254.169.254/latest/meta-data/iam/security-credentials/. Bila server mengambilnya secara naif dan mengembalikan respons, penyerang dapat menggasak kredensial IAM sementara milik peran yang menjalankan proses fetch. Alamat 169.254.169.254 merupakan endpoint metadata layanan cloud yang hanya terjangkau dari dalam virtual private cloud (VPC).
Banyak layanan modern memiliki bentuk serupa: pratinjau tautan di media sosial, penguji webhook, hingga tombol impor dari URL. Semua fitur itu secara tidak sengaja menyediakan proxy SSRF karena posisi jaringan server yang dapat menjangkau layanan internal pada rentang 10.x dan 192.168.x yang tak pernah tersambung ke internet publik.
Pemblokiran berbasis daftar hitam nama host menjadi insting pertama para pengembang. Pendekatan itu terbukti rapuh. Ruang alamat privat bukan sekadar beberapa alamat, melainkan blok CIDR besar. Loopback mencakup seluruh 127.0.0.0/8, bukan hanya 127.0.0.1.
Representasi IPv6 menambah kerumitan. Penulisan ::ffff:127.0.0.1 merupakan loopback dalam format IPv4-mapped IPv6, sehingga pencocokan substring pada teks "127.0.0.1" tidak akan menangkap ::ffff:7f00:1. Klasifikasi harus dilakukan pada IP yang terselesaikan, bukan sekadar teks yang diketik pengguna.
Di Indonesia, risiko serupa mengintai banyak startup yang menyajikan fitur pengambil URL, seperti alat pemantau situs, agregator berita, dan platform SEO. Adopsi infrastruktur cloud AWS, Google Cloud, dan Azure di wilayah Jakarta meningkatkan paparan terhadap endpoint metadata yang sama. Kendati demikian, kesadaran akan SSRF di kalangan pengembang lokal masih tipis.
Analisis menunjukkan bahwa kepatuhan terhadap Undang-Undang Pelindungan Data Pribadi (UU PDP) mengharuskan pengendalian akses tak sah ke sistem internal. Blocklist sederhana tidak cukup. Di sisi lain, pendekatan dua lapis NorthDuty patut dijadikan rujukan teknis bagi tim keamanan dalam negeri.
Lapisan pertama beroperasi pra-navigasi. Sebelum browser menyentuh URL, sistem menyelesaikan nama host dan mengklasifikasi IP hasil resolusi terhadap delapan blok IPv4 terlarang: 0.0.0.0/8, 10.0.0.0/8, 100.64.0.0/10, 127.0.0.0/8, 169.254.0.0/16, 172.16.0.0/12, 192.168.0.0/16, serta 198.18.0.0/15. Alamat IPv6 diperluas ke delapan hextet 16-bit agar notasi setara runtuh menjadi satu bentuk kanonik.
Lapisan kedua berjalan per permintaan. Sebuah halaman web memicu puluhan sub-sumber daya seperti skrip, gambar, dan XHR yang tak pernah diketik pengguna. NorthDuty menyematkan penangan rute di Playwright yang menjalankan ulang pemeriksaan IP sama pada setiap hostname sub-sumber daya, dengan cache per host. Sementara itu, strategi ini menjadi pertahanan DNS rebinding karena pemeriksaan terjadi saat koneksi, bukan sekali di awal.
Satu-satunya celah yang disediakan adalah variabel ALLOW_PRIVATE_URLS=true untuk pengembangan lokal, yang menonaktifkan kedua lapis di luar lingkungan itu. Aspek krusial yang jarang diperingatkan adalah keharusan menjaga salinan kode pengaman identik di dua repositori terpisah: screenshot worker dan user-flow worker. NorthDuty menerapkan tugas CI yang membandingkan byte demi byte dan menggagalkan build bila ada selisih satu byte pun.
"If you fetch user-supplied URLs server-side, assume you're running an SSRF proxy until you've proven otherwise," tegas tim NorthDuty dalam tulisan teknis mereka. Mereka menekankan perlunya memeriksa rentang alamat IP terselesaikan dan melakukan validasi di waktu koneksi. Penyimpangan sunyi antarlayanan, menurut mereka, lebih berbahaya daripada pemeliharaan duplikat yang disengaja.
Ke depan, tren keamanan siber akan bergeser pada validasi dinamis serta pencegahan divergensi modul kritis. Layanan pengambil URL di Indonesia perlu mengadopsi praktik serupa guna memenuhi standar global dan melindungi infrastruktur cloud domestik. Kendati implementasinya menuntut disiplin rekayasa, biaya kegagalan akibat kebocoran kredensial jauh lebih mahal.