Browser Headless dan Browser Fingerprint: Cara Filter Membedakan Program dari Manusia

Browser headless menjalankan JavaScript dan merender halaman seperti browser sungguhan, sehingga pengecekan sederhana tidak melihatnya. Ia ditangkap lewat browser fingerprint dan jejak otomatisasi yang sulit disembunyikan sepenuhnya.

Bot dan Fraud8 menit baca
Browser Headless dan Browser Fingerprint: Cara Filter Membedakan Program dari Manusia
Daftar isi
  1. Apa itu browser headless
  2. Apa itu browser fingerprint
  3. Tanda headless dan otomatisasi
  4. Antidetect browser: di mana batasnya
  5. False positive: browser bawaan dan WebView
  6. Cara kerja pemeriksaan browser di ArtisanClo
  7. Cara membangun proteksi dari headless: langkah praktis
  8. Browser fingerprint dan privasi: yang perlu diketahui
  9. Contoh: menganalisis kunjungan yang mencurigakan
  10. Ringkasnya

Bot sederhana ketahuan karena tidak menjalankan JavaScript. Tetapi iklan sudah lama tidak diperiksa dengan skrip curl, melainkan dengan browser sungguhan yang dikendalikan program. Browser headless seperti ini memuat halaman, menjalankan kode, menunggu, mengklik, dan bagi proteksi yang naif tidak berbeda dari pengunjung. Yang membantu membedakannya adalah browser fingerprint (sidik jari browser) dan jejak otomatisasi yang ditinggalkan program di lingkungannya.

Apa itu browser headless

Headless berarti «tanpa kepala», yaitu tanpa jendela grafis. Ini mesin Chrome atau Firefox yang sama, hanya dijalankan di latar belakang dan dikendalikan program. Alat otomatisasi populer seperti Puppeteer, Playwright, dan Selenium bisa membuka halaman, mengisi formulir, membuat tangkapan layar, dan melewati rantai pengalihan.

Siapa yang memakai browser headless terhadap landing page Anda:

  • platform iklan: memeriksa landing page seperti yang akan dilihat pengguna;
  • spy tool: menyimpan landing page secara utuh (selengkapnya di artikel proteksi dari spy tool);
  • traffic fraud: memanipulasi klik bahkan konversi;
  • parser kompetitor: mengumpulkan teks, harga, dan struktur.

Masalah utama bagi filter: browser headless lolos dari pengecekan eksekusi JavaScript. Karena itu dibutuhkan tanda yang lebih halus.

Apa itu browser fingerprint

Browser fingerprint adalah kumpulan karakteristik yang diungkapkan browser ke situs. Sebagian dikirim sendiri, sebagian diukur dengan skrip.

Komponen Apa itu Apa yang bisa membongkar
User-agent string berisi nama dan versi browser serta OS versi template atau usang
Bahasa dan locale daftar bahasa browser bahasa yang tidak cocok dengan GEO
Zona waktu zona waktu sistem zona yang tidak cocok dengan negara IP
Layar resolusi, kedalaman warna, kepadatan piksel ukuran «bulat» khas server
Grafis kartu grafis, renderer, ciri rendering renderer perangkat lunak, bukan kartu grafis nyata
Font kumpulan font terpasang sistem server yang «polos»
Data perangkat keras jumlah core, memori, layar sentuh spesifikasi desktop pada «ponsel»
Kemampuan API antarmuka browser yang tersedia tidak adanya fitur yang dimiliki browser asli versi itu

Fingerprint dipakai dengan dua cara. Untuk pengenalan, yaitu memahami bahwa kunjungan berbeda datang dari satu perangkat. Dan untuk verifikasi keaslian, yaitu menilai apakah kombinasi ini mirip perangkat nyata. Untuk proteksi dari bot, yang kedua lebih penting; di situlah setiap proteksi bot untuk website bertumpu.

Tanda headless dan otomatisasi

Flag webdriver

Menurut standar, browser yang dikendalikan program lewat antarmuka otomatisasi mengatur properti navigator.webdriver. Ini tanda paling terkenal sekaligus paling mudah disembunyikan: cukup dipalsukan dengan satu baris. Karena itu proteksi yang serius tidak bertumpu padanya saja.

Jejak pengendalian

Alat otomatisasi meninggalkan objek, variabel, dan perubahan khas perilaku fungsi tertentu di lingkungannya. Jumlahnya banyak, berubah di setiap versi alat, dan sulit menyembunyikan semuanya sekaligus.

Ketidakcocokan dengan yang diklaim

Browser headless sering membongkar dirinya lewat kontradiksi:

  • user-agent menyebut «Chrome di Windows», tetapi kumpulan API-nya seperti build headless di Linux;
  • diklaim iPhone, tetapi mendukung antarmuka yang tidak ada di Safari;
  • layarnya «mobile», tetapi tidak ada input sentuh;
  • kartu grafis terdeteksi sebagai renderer perangkat lunak yang khas server.

Lingkungan server

Kumpulan font minimal, tidak ada perangkat media, resolusi layar yang «bulat», nilai perangkat keras yang tidak wajar: semua ini tanda browser yang berjalan di server tanpa pengguna nyata.

Waktu dan perilaku

Program bertindak entah seketika, entah dengan jeda yang selalu sama. Tidak ada gerakan mouse, sentuhan, atau scroll, atau semuanya terlalu sempurna. Waktu di halaman yang dipalsukan juga bisa terdeteksi, ketika yang dilaporkan skrip tidak cocok dengan timing sebenarnya.

Tips. Tidak ada satu tanda pun di daftar ini yang membuktikan bot dengan sendirinya. Yang membuktikan adalah kombinasinya: tiga atau empat kontradiksi independen pada satu kunjungan hampir tidak pernah terjadi pada browser asli.

Antidetect browser: di mana batasnya

Antidetect browser memalsukan fingerprint sehingga setiap profil terlihat seperti perangkat nyata yang terpisah. Di affiliate marketing ini alat kerja biasa: media buyer menyimpan akun iklan di dalamnya agar platform tidak mengaitkan akun-akun itu satu sama lain.

Bagi filter traffic, penting membedakan dua kasus:

  • antidetect yang dikendalikan manusia: bagi landing page, pada dasarnya ini pengunjung biasa; orangnya menggerakkan mouse, membaca, mengklik;
  • antidetect yang dikendalikan program: otomatisasi yang sama dengan penyamaran lebih baik; ia ketahuan dari pemalsuan yang tidak konsisten dan perilakunya.

Dengan kata lain, fingerprint bukan satu-satunya garis pertahanan. Bot yang menyamar dengan baik ketahuan dari apa yang ia lakukan, bukan dari penampilannya.

False positive: browser bawaan dan WebView

Kesalahan paling sering saat memfilter berdasarkan fingerprint adalah membuang browser bawaan aplikasi. Facebook, Instagram, dan TikTok membuka link di browser bawaan berbasis WebView. Browser ini punya:

  • user-agent tidak biasa yang memuat nama aplikasi;
  • kemampuan yang dipangkas dibanding browser penuh;
  • tanda yang mirip jejak otomatisasi;
  • referrer yang sering hilang.

Padahal justru lewat browser bawaan inilah sebagian besar traffic nyata dari media sosial datang. Karena itu tanda otomatisasi pada WebView tidak boleh dianggap bot yang jelas, hanya salah satu sinyal dalam penilaian keseluruhan. Bagaimana label klik platform membantu membedakan kunjungan seperti ini dari bot, dibahas di artikel fbclid, gclid, ttclid.

Cara kerja pemeriksaan browser di ArtisanClo

Di ArtisanClo, pemeriksaan browser adalah langkah tersendiri setelah pengecekan jaringan. Skrip berjalan di browser pengunjung dan melaporkan apa yang dilihatnya; halaman disembunyikan sampai keputusan datang. Beberapa sakelar proteksi bertanggung jawab atas ini:

  • Blokir headless: menangkap bot dan auto-clicker yang berpura-pura menjadi browser. Jika jejak otomatisasi jelas, kunjungan langsung dibuang, dengan alasan “Browser headless terdeteksi” di log.
  • Wajibkan JS: pengunjung tanpa JavaScript mendapat penalti berat dan diarahkan ke pemeriksaan. Bot dan parser sederhana tersandung di sini.
  • Pemeriksaan interaksi nyata: melihat bagaimana mouse dan jari bergerak; manusia bergerak alami, bot tidak. Menambah sedikit waktu tunggu, sehingga diaktifkan untuk platform yang ketat.
  • Waktu minimal di halaman: pengunjung yang berada di halaman lebih singkat dari batas yang ditentukan diarahkan ke halaman tunggu dan diperiksa ulang.

Browser bawaan Facebook, Instagram, TikTok, dan WebView di aplikasi dikenali secara terpisah: tanda otomatisasi pada mereka tidak langsung membuang kunjungan, tetapi dihitung dalam skor kepercayaan bersama jaringan, waktu, dan referrer. Untuk kampanye yang hampir seluruh traffic-nya datang dari browser bawaan, disarankan tingkat ketat “Seimbang”.

Robot-browser dengan tanda yang terbukti dan pemalsuan waktu di halaman masuk ke daftar bot bersama sejak pertama kali: kunjungan berikutnya dari alamat itu, ke flow mana pun milik klien mana pun, langsung mendapat White Page.

Di statistik, penolakan dari langkah ini dikumpulkan dalam porsi “Pemeriksaan browser”, sedangkan kunjungan yang tidak menjalankan skrip dan tidak kembali masuk ke “Pemeriksaan tidak kembali”. Jika yang naik adalah porsi “Pemeriksaan browser”, itu sinyal untuk mengecek tingkat ketat: di langkah inilah filter paling sering salah.

Pemeriksaan browser bekerja saat terhubung lewat tag JS maupun file PHP. Perbedaan kedua cara ini ada di artikel cara memasang cloaker di situs, dan daftar lengkap pengecekan di halaman fitur.

Cara membangun proteksi dari headless: langkah praktis

  1. Mulai dari jaringan. Sebagian besar bot headless berjalan di server; memblokir data center menyaringnya sebelum pemeriksaan browser. Lihat VPN, proxy, dan IP data center.
  2. Wajibkan JavaScript jika aman. Jika platform mengirim label klik dan traffic datang dari browser biasa, JS wajib menyaring parser tanpa kehilangan pengunjung.
  3. Aktifkan pemblokiran browser headless di semua flow.
  4. Pemeriksaan interaksi nyata gunakan untuk traffic mahal dan sumber dengan banyak otomatisasi canggih.
  5. Jangan memperketat browser bawaan. Untuk media sosial, jangan menyalakan aturan keras yang tidak perlu.
  6. Lihat alasannya. Jika “Browser headless terdeteksi” massal muncul di traffic mobile dari satu platform, itu alasan untuk menyelidiki, bukan untuk bergembira.

Logika umum proteksi berlapis dibahas di artikel cara menyaring bot, dan daftar ciri yang umum di materi traffic bot: ciri-cirinya.

Browser fingerprint dan privasi: yang perlu diketahui

Kata «fingerprint» sering dikaitkan dengan pelacakan: sistem iklan memakai sidik jari untuk mengenali pengguna tanpa cookie. Di anti-fraud tugasnya lain. Filter tidak perlu tahu siapa pengunjungnya; ia perlu tahu apakah ini browser asli dan apakah ia berperilaku seperti manusia. Karena itu untuk proteksi dari bot yang penting bukan pengenal unik, melainkan konsistensi karakteristik satu sama lain.

Akibat praktisnya: browser terus memangkas apa yang bisa diukur skrip, menambahkan noise pada rendering, menyeragamkan string user-agent, dan menyembunyikan detail perangkat keras. Bagi pengenalan pengguna ini masalah, bagi verifikasi keaslian lebih ringan: kontradiksi antara yang diklaim dan yang nyata tetap ada. Tetapi proteksi yang dibangun di atas satu atau dua tanda «ajaib» lama-lama berhenti bekerja, dan ini satu lagi alasan untuk menilai dari gabungan sinyal.

Contoh: menganalisis kunjungan yang mencurigakan

Misalkan di log ada kunjungan dengan alasan terkait otomatisasi browser. Di kartu klik terlihat:

  • jaringan: hosting cloud;
  • browser diklaim Chrome terbaru, perangkat: komputer;
  • tidak ada label klik iklan;
  • pemeriksaan browser kembali dengan tanda pengendalian oleh program.

Semuanya cocok: jaringan server, tidak ada kunjungan dari iklan, jejak otomatisasi. Ini robot pemeriksa atau spy tool klasik.

Sekarang kunjungan lain: operator seluler, browser bawaan media sosial, ada label klik, tanda otomatisasinya lemah. Kunjungan seperti ini tidak boleh dibuang berdasarkan satu tanda; kemungkinan besar ini orang biasa yang membuka iklan di aplikasi.

Perbedaan kedua kunjungan inilah inti penilaian berdasarkan gabungan tanda: pada yang pertama beberapa sinyal independen saling bertentangan sekaligus, pada yang kedua hanya satu, dan itu pun bisa dijelaskan oleh karakteristik browser bawaan. Jika kunjungan jenis kedua banyak di log dan diarahkan ke White Page, longgarkan tingkat ketat untuk platform itu.

Ringkasnya

Browser headless lolos dari pengecekan sederhana, tetapi meninggalkan jejak: flag dan objek otomatisasi, kontradiksi dalam fingerprint, lingkungan server, dan perilaku yang tidak wajar. Browser fingerprint membantu menilai apakah kunjungan mirip perangkat nyata, sedangkan pengecekan perilaku menilai apakah ia bertindak seperti manusia. Aturan utamanya sama seperti di seluruh anti-fraud: yang menentukan adalah kombinasi tanda, bukan satu tanda, karena jika tidak, bersama bot akan ikut terbuang traffic dari browser bawaan media sosial.

Pertanyaan yang sering diajukan

01

Apa itu browser headless?

Ini adalah mesin browser biasa yang berjalan tanpa jendela dan dikendalikan oleh program. Ia memuat halaman, menjalankan JavaScript, menekan tombol, dan menyimpan hasilnya. Dipakai untuk menguji situs, scraping, mengumpulkan iklan, dan memanipulasi klik.

02

Apa itu browser fingerprint dalam bahasa sederhana?

Ini adalah kumpulan karakteristik yang dilaporkan browser ke situs atau bisa diukur dengan skrip: versi, bahasa, zona waktu, layar, kartu grafis, font, ciri rendering. Bersama-sama, semuanya membentuk profil yang hampir unik, yang bisa dipakai untuk mengenali perangkat dan menilai apakah browser itu asli.

03

Apa arti navigator.webdriver?

Ini adalah properti browser yang menurut standar bernilai true ketika browser dikendalikan program lewat antarmuka otomatisasi. Ini tanda bot yang paling terkenal, tetapi juga yang paling mudah dipalsukan, sehingga pengecekan serius tidak mengandalkannya sendirian.

04

Apakah proteksi bisa menangkap antidetect browser?

Antidetect browser memalsukan fingerprint agar terlihat seperti perangkat nyata, dan jika dikendalikan manusia ia berperilaku seperti manusia. Bagi filter, kunjungan seperti itu sering tidak bisa dibedakan dari pengunjung biasa. Ia tertangkap saat pemalsuannya tidak konsisten atau saat di baliknya ada otomatisasi, bukan manusia.

05

Kenapa browser bawaan Instagram atau TikTok kadang terlihat seperti bot?

Browser bawaan aplikasi dibangun di atas WebView dan berbeda dari browser penuh: sebagian kemampuannya dipangkas dan user-agent-nya tidak biasa. Sebagian tandanya mirip jejak otomatisasi, sehingga kunjungan seperti ini tidak boleh dibuang berdasarkan satu tanda saja, hanya berdasarkan gabungan tanda.

Baca juga

Lihat trafik Anda yang sebenarnya

Hubungkan ArtisanClo ke situs Anda, lihat siapa yang benar-benar datang dari iklan, dan mengapa setiap klik mendapat keputusannya.