User agent (string User-Agent)
Identifikasi browser dan OS yang dikirimkan browser dalam header User-Agent dan diekspos ke JavaScript.
Definisi
Dalam HTTP, user agent adalah perangkat lunak klien yang melakukan permintaan, dan header permintaan User-Agent adalah string teks yang dikirimkannya sehingga server dapat mengidentifikasi aplikasi, sistem operasi, vendor, dan versi. MDN mencatat bahwa informasi ini secara historis menimbulkan kekhawatiran privasi karena dapat digunakan untuk fingerprinting. Browser Chromium modern mengirimkan string yang dikurangi dan memindahkan nilai terperinci ke User-Agent Client Hints (header Sec-CH-UA-* dan navigator.userAgentData).
Cara kerjanya
- Browser mengirimkan User-Agent pada setiap permintaan; nilai desktop Chrome tipikal terlihat seperti "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36". Token "Mozilla/5.0", "KHTML, like Gecko", dan "Safari" dipertahankan untuk kompatibilitas historis.
- Sejak pengurangan User-Agent (diluncurkan dari Chrome 101 ke 110), Chrome membekukan versi minor ke 0.0.0, menggunakan string platform desktop tetap, dan pada Android mengirimkan "Android 10; K" tetap alih-alih versi OS dan model perangkat yang sebenarnya. Nilai yang dikurangi yang sama muncul di navigator.userAgent dan navigator.platform.
- Browser Chromium juga mengirimkan Client Hints entropi rendah secara default — Sec-CH-UA (merek dan versi utama), Sec-CH-UA-Mobile dan Sec-CH-UA-Platform. Server dapat meminta hint entropi tinggi seperti versi platform, model, arsitektur atau daftar versi lengkap dengan header respons Accept-CH, dan browser memutuskan apa yang akan dikembalikan.
Mengapa itu penting
- User agent adalah salah satu sinyal pasif dalam sidik jari browser: ia tiba pada setiap permintaan tanpa adanya skrip yang berjalan.
- Sistem deteksi dapat membandingkan string User-Agent dengan Client Hints dan nilai JavaScript (navigator.platform, ukuran layar, dukungan sentuhan). Profil yang nilainya tidak selaras akan lebih menonjol daripada profil yang sekadar umum.
- Browser antideteksi membiarkan setiap profil mengatur user agent-nya; alat yang baik menjaga kesesuaian Client Hints, platform, dan versi mesin browser agar tetap konsisten dengannya.
Batasan dan kesalahpahaman umum
- "Mengubah string User-Agent mengubah sidik jari browser saya." Itu hanya mengubah satu nilai; Client Hints, API JavaScript, output Canvas/WebGL, dan font tetap mendeskripsikan pengaturan asli kecuali jika semuanya diubah secara konsisten juga.
- "String User-Agent menunjukkan OS dan perangkat saya secara tepat." Pada Chrome yang dikurangi, hal itu tidak lagi dilakukan — Windows 8.1 dan Windows 11 keduanya melaporkan "Windows NT 10.0", dan perangkat Android melaporkan "Android 10; K".
- "User agent yang langka atau sangat baru lebih aman." Nilai yang tidak biasa atau tidak cocok akan mempersempit identitas Anda; kombinasi yang umum dan konsisten secara internal akan kurang mencolok.
Tidak ada browser atau proxy yang dapat menjamin bahwa akun tidak akan dibatasi. Ikuti aturan setiap platform.
Istilah terkait
- Sidik jari browser — Kombinasi karakteristik browser dan perangkat yang dapat mengidentifikasi browser tanpa cookie.
- Canvas fingerprinting — Mengidentifikasi perangkat dari perbedaan kecil dalam cara perangkat merender gambar HTML canvas.
- Profil browser — Kumpulan data browser yang terpisah — cookie, riwayat, pengaturan, ekstensi — yang dijaga terpisah dari profil lain.
Panduan terkait
Sumber
- MDN: Header User-Agent (dokumentasi browser)
- MDN: HTTP Client hints (dokumentasi browser)
- Chromium: Pengurangan User-Agent (dokumentasi browser)
- Chrome for Developers: User-Agent Client Hints (dokumentasi browser)
Diperiksa 2026-11-07.