Lewati ke konten

Lapisan Perilaku

Sebuah program membongkar dirinya lewat caranya bertindak, bukan lewat apa yang dilakukannya

Setiap kunjungan menghasilkan gerakan: kursor bergerak menuju tombol, tombol ditekan dan dilepas, halaman digulir, layar disentuh. TRACIO menilai gerakan itu terus-menerus dan memberi tahu Anda apakah ia berasal dari sebuah tangan atau dari perangkat lunak.

Yang kami amati

Empat kanal input, dibobot menurut perangkat yang ada di tangan pengunjung

Setiap kanal dinilai sendiri lalu digabungkan. Bobotnya tidak tetap — bobot mengikuti perangkat yang sungguh-sungguh dipakai pengunjung. Di ponsel, sentuhan yang memikul verdict dan tidak adanya kursor sama sekali tidak berarti apa-apa. Di desktop, kursor adalah kanal terkuat dan absennya aliran sentuhan memang sudah semestinya.

Mouse dan kursor

Utama di desktop

Kecepatan dan seberapa besar ia berubah-ubah, perubahan arah per bentang lintasan, cara jalur melengkung menuju sasaran, percepatan dan pengereman sebelum klik, serta getaran halus tangan manusia yang tidak bisa ditiru gerakan hasil skrip.

Ritme keyboard

Hanya waktu

Berapa lama setiap tombol ditahan, jeda antara satu pelepasan dan penekanan berikutnya, tumpang tindih ketika tombol berikutnya turun sebelum yang sebelumnya naik, ledakan dan jeda, koreksi dan backspace. Waktunya — tidak pernah karakternya. Lihat bagian privasi di bawah.

Scroll

Kedua bentuk perangkat

Ragam kecepatan, seberapa sering arah berbalik, momentum yang meluruh seperti lecutan fisik meluruh, dan jeda yang selaras dengan seberapa banyak teks yang benar-benar ada di layar.

Sentuhan

Utama di ponsel

Luas kontak dan bagaimana ia berubah sepanjang satu ketukan, tekanan yang dilaporkan jika perangkat menyediakannya, pergeseran kecil jari yang tidak pernah mendarat dua kali di piksel yang sama, dan waktu antara beberapa titik kontak.

Sesi yang sama, dibobot dengan dua cara berbeda

Sesi desktopKursor memimpin

Mouse dan keyboard yang memikul bobot. Aliran sentuhan tidak diharapkan di sini, jadi absennya tidak merugikan pengunjung sedikit pun.

Sesi ponselSentuhan memimpin

Sentuhan dan gerak perangkat yang memikul bobot. Kunjungan tanpa gerakan kursor sama sekali adalah hal normal di ponsel, bukan sesuatu yang mencurigakan.

Ketiadaan bukan bukti

Kanal yang memang tidak pernah disediakan perangkat dikeluarkan dari skor, bukan dihitung memberatkan pengunjung. Ini terdengar jelas, dan justru inilah cara paling umum penilaian perilaku yang naif mengubah pelanggan sungguhan menjadi tersangka: ponsel tidak punya mouse, pengguna pembaca layar tidak punya jalur kursor yang mulus, dan tak satu pun dari keduanya berkata apa pun soal menjadi bot.

Buktinya

Tiga hal yang dilakukan perangkat lunak dan tidak bisa dilakukan tangan

Ini contoh, bukan seluruh kumpulan aturan, tetapi keduanya menunjukkan bentuk bukti yang kami pakai. Masing-masing mustahil secara fisik bagi sebuah tangan, dan masing-masing diberi gerbang agar satu momen ganjil tidak pernah menjadi sebuah verdict.

Tahanan tombol semetronom

Yang kami ukur

Setiap tombol ditahan nyaris persis dalam jumlah milidetik yang sama di sepanjang input.

Kenapa tangan tidak bisa melakukannya

Berapa lama jari bertahan di sebuah tombol bergantung pada tombol yang mana, tangan yang mana, dan seberapa lelah tangan itu. Waktu tahan manusia berserak. Ketikan yang disuntikkan dibangkitkan dari sebuah konstanta, dan serakannya runtuh mendekati nol.

Yang menjaganya tetap jujur

Aturan ini membutuhkan cukup banyak ketikan dalam jendela sebelum ia dihitung sama sekali. Input empat karakter bukanlah sampel, dan tidak dinilai sebagai sampel.

Klik yang berteleportasi

Yang kami ukur

Sebuah klik mendarat di kontrol yang tidak pernah didatangi kursor — pointer begitu saja muncul di koordinatnya lalu memicu.

Kenapa tangan tidak bisa melakukannya

Seseorang mendekati sasaran: jalurnya melengkung masuk, kecepatannya turun menjelang akhir, dan biasanya ada sesaat hover sebelum ditekan. Otomatisasi menetapkan koordinat lalu mengirim event; tidak ada pendekatan karena secara fisik tidak ada yang bergerak.

Yang menjaganya tetap jujur

Satu klik yang berteleportasi masuk akal sebagai efek navigasi keyboard atau trackpad. Ia baru dihitung ketika menjadi mayoritas klik dalam sesi yang punya cukup klik untuk dinilai.

Mengetik di tab tersembunyi

Yang kami ukur

Ketikan terus berdatangan sementara halaman berada di latar belakang dan tidak pernah dibawa ke depan.

Kenapa tangan tidak bisa melakukannya

Seseorang tidak bisa mengetik di halaman yang tidak ia lihat. Perangkat lunak pabrik akun menjalankan puluhan tab sekaligus dan tidak repot memfokuskan tiap tab sebelum mulai mengisi formulir.

Yang menjaganya tetap jujur

Satu event tepat pada saat pergantian tab adalah perlombaan antar-event browser, bukan bukti. Ia dihitung pada input berulang dengan halaman yang tetap tidak pernah terlihat.

Privasi

Kami mengukur ritmenya. Kami tidak bisa menyusun ulang teksnya.

Pengumpulan perilaku berjalan di seluruh halaman, termasuk di kolom kata sandi, email, dan nomor kartu. Itu keputusan yang disengaja, dan layak dijelaskan utuh alih-alih dikubur di dokumen kebijakan.

Kenapa justru kolom sensitif yang paling penting

Credential stuffing, pengujian kartu, dan pengambilalihan akun semuanya terjadi persis di dalam input tersebut. Detektor yang mematikan diri di sana menjadi buta tepat di satu tempat serangan itu hidup. Dulu memang begitulah perilakunya: pengumpulan dimatikan sepenuhnya di kolom sensitif, sehingga detik-detik paling berisiko dalam sebuah kunjungan tidak menghasilkan pengukuran apa pun.

Apa yang disimpan

Waktu. Kapan sebuah tombol turun, berapa lama ia bertahan, berapa lama sampai tombol berikutnya, apakah dua penekanan tumpang tindih. Itu sudah cukup untuk membedakan tangan dari generator, dan hanya itu yang pernah diminta detektor.

Apa yang tidak disimpan

Tombol yang mana. Di dalam kolom sensitif, identitas setiap ketikan diganti dengan pengganti kasar di dalam browser, sebelum apa pun meninggalkan halaman — salah satu dari segelintir bucket, bukan sebuah karakter. Tidak ada jalan pulang. Aliran yang sampai ke server kami tidak memuat teks, tidak memuat potongan teks, dan tidak memuat apa pun yang bisa dirakit kembali menjadi teks.

Konsekuensi yang harus kami tangani

Karena identitas tombol benar-benar hilang di kolom itu, setiap aturan yang bergantung pada pembedaan antar-tombol harus mengeluarkan ketikan tersebut dari hitungannya sendiri — kalau tidak, kata sandi normal akan tampak seperti satu tombol yang ditekan berulang-ulang, dan kami akan menandai orang karena mengetik dengan benar. Aturan berbasis waktu tidak terpengaruh dan tetap bekerja pada seluruh aliran.

Mematikan pengumpulan tidak pernah melindungi isinya

Karakternya memang tidak pernah dikumpulkan pada kedua rancangan. Yang dihapus oleh pengecualian menyeluruh yang lama hanyalah buktinya — ia membuat detektor buta tanpa membuat siapa pun lebih terlindungi. Pendekatan pengganti mempertahankan jaminan yang persis sama atas teks Anda dan mengembalikan pengukuran kepada detektor. Deteksi yang lebih kuat dan privasi yang lebih baik lahir dari satu keputusan, dan itu cukup langka untuk dikatakan terang-terangan.

Bagaimana aturan dirilis

Aturan baru berjalan buta sebelum boleh menyentuh sebuah verdict

Deteksi memburuk begitu ia menjadi pintar tanpa bukti. Setiap aturan perilaku ditambahkan dalam mode shadow lebih dulu: ia dievaluasi terhadap trafik produksi langsung dan hasilnya dicatat, tetapi ia tidak menyumbang apa pun pada skor yang dilihat siapa pun.

01

Dirilis dalam shadow

Aturan itu dievaluasi pada trafik nyata sejak hari pertama. Keluarannya hanya masuk ke analitik — verdict pelanggan mana pun tidak bergeser hanya karena sebuah aturan ditambahkan.

02

Diukur terhadap kedua populasi

Kami mengamati seberapa sering ia menyala pada sesi yang secara independen dinilai manusia dan pada sesi yang secara independen dinilai otomatis, di atas trafik langsung yang cukup banyak untuk berarti.

03

Dua ambang yang memutuskan

Ia harus memisahkan setidaknya sepuluh banding satu — menyala setidaknya sepuluh kali lebih sering pada otomatisasi dibanding pada orang — dan ia harus tetap di bawah tingkat penyalaan 0,5% pada sesi manusia langsung.

04

Dipromosikan, atau ditinggalkan dalam gelap

Aturan yang melewati kedua gerbang mendapat bobot dalam skor. Aturan yang tidak, tetap di shadow atau dicabut sama sekali. Promosi adalah perubahan yang disengaja dan ditinjau — tidak ada yang dinyalakan otomatis.

Inilah yang melindungi Anda dari detektor yang mendadak menjadi pintar dalam semalam lalu mulai menolak pelanggan Anda sendiri. Tingkat false positive Anda tidak bergeser hanya karena seseorang punya ide pada Jumat sore.

Yang Anda terima

Tiga kolom, dikirim bersama event identifikasi

Verdict perilaku datang berbarengan dengan sisa event — tanpa panggilan kedua, tanpa polling, tanpa endpoint terpisah yang harus diintegrasikan.

KolomRentangArti
score0–100Makin tinggi makin manusiawi. Nilai kontinu, bukan bucket, sehingga Anda bisa menetapkan ambang yang cocok dengan selera risiko Anda sendiri, bukan selera kami.
verdicthuman · uncertain · botSkor yang diringkas menjadi tiga keadaan. “uncertain” adalah jawaban sungguhan, bukan kegagalan: sesinya membawa terlalu sedikit input untuk dinilai, dan kami melaporkan itu alih-alih menebak.
confidence0,0–1,0Seberapa banyak input teramati yang menopang verdict. Sesi pengisian formulir yang panjang mendapat skor dengan keyakinan tinggi; pantulan dua detik tidak, dan Anda bisa melihatnya sebelum bertindak.

Cuplikan event

{
  "visitorId": "X7fh2Hg9LkMn3pQr",
  "behavior": {
    "score": 87.4,
    "verdict": "human",
    "confidence": 0.82
  }
}

Tersedia pada paket Business ke atas. Dikirim lewat webhook dan tersedia melalui Data API.

Blok perilaku adalah sinyal, bukan tindakan. Ia sendiri tidak memblokir apa pun — Anda menggabungkannya dengan sisa event dan dengan kebijakan Anda sendiri, dan di situlah keputusan seharusnya berada.

Batasan

Apa yang tidak diberitahukan perilaku

Perilaku menjawab satu pertanyaan dengan baik: manusia atau program. Ia tidak menjawab “manusia yang mana”, dan kami tidak menjualnya seolah-olah begitu.

Ini bukan sinyal identitas

Kami tidak mengklaim bisa mengenali individu yang kembali dari cara mengetik atau menggerakkan mouse-nya. Kami mengukurnya pada trafik langsung: mencocokkan orang tertentu di dua browser yang sama-sama ia pakai hasilnya tidak lebih baik daripada tebakan acak. Vendor mana pun yang menjual “biometrik perilaku yang mengidentifikasi pengguna” sepatutnya diminta menerbitkan angka yang sama.

Ini tidak menggantikan identifikasi

Siapa perangkatnya datang dari lapisan perangkat dan browser. Perilaku memberi tahu Anda jenis pelaku macam apa yang menjalankan perangkat itu. Keduanya menjawab pertanyaan berbeda dan tidak saling menggantikan.

Ia butuh input untuk bekerja

Pengunjung yang mendarat lalu pergi dalam dua detik nyaris tidak menghasilkan apa pun untuk dinilai. Keluaran yang jujur di sana adalah “uncertain” dengan keyakinan rendah — bukan tebakan yang didandani sebagai verdict.

FAQ

Pertanyaan yang sering diajukan

Lihat verdict perilaku pada trafik Anda sendiri

Pasang agennya, saksikan skor tiba bersama setiap event identifikasi, dan putuskan sendiri seberapa berharga ia bagi Anda.