Mengenal Fungsi CAPTCHA dalam Menjaga Keamanan Website

Mengenal Fungsi CAPTCHA dalam Menjaga Keamanan Website

CAPTCHA adalah singkatan dari Completely Automated Public Turing test to tell Computers and Humans Apart (uji Turing publik yang sepenuhnya otomatis untuk membedakan antara komputer dan manusia). Teknologi CAPTCHA menggunakan berbagai metode autentikasi untuk memvalidasi pengguna sebagai manusia, bukan bot, dengan memberikan tantangan yang mudah dipecahkan oleh manusia namun sulit dijawab oleh mesin.

CAPTCHA mencegah penipu dan pengirim spam menggunakan bot untuk mengisi formulir web demi tujuan buruk.

CAPTCHA tradisional mengharuskan pengguna untuk membaca dan mengetik ulang dengan benar teks yang terdistorsi dan tidak dapat ditafsirkan oleh teknologi pengenalan karakter optik (OCR). Iterasi teknologi CAPTCHA yang lebih baru menggunakan analisis perilaku dan risiko berbasis AI untuk mengautentikasi pengguna manusia berdasarkan beberapa pola aktivitas, bukan hanya satu tugas.

Banyak situs web yang mengharuskan pengguna menyelesaikan tantangan CAPTCHA sebelum masuk ke profil akun, mengirim formulir pendaftaran, mengirim komentar, atau melakukan tindakan lain yang mungkin dilakukan peretas dengan menggunakan bot. Dengan memenuhi tantangan tersebut, pengguna mengonfirmasi bahwa dirinya adalah manusia dan kemudian diizinkan untuk melanjutkan aktivitas di situs web.

* Sebagai catatan, uji Turing sendiri diambil dari nama penciptanya, Alan Turing, yang berfungsi menguji kemampuan mesin dalam menunjukkan kecerdasan yang menyerupai manusia.

Evolusi CAPTCHA

Beberapa kelompok yang berbeda mengembangkan bentuk awal teknologi CAPTCHA secara paralel pada akhir dekade 1990-an dan awal 2000-an. Masing-masing kelompok berjuang memerangi maraknya masalah peretas yang menggunakan bot untuk aktivitas berbahaya di internet. Sebagai contoh, ilmuwan komputer yang bekerja untuk mesin pencari AltaVista ingin menghentikan bot yang menambahkan alamat web berbahaya ke dalam basis data (database) tautan perusahaan mereka.

Para peneliti di perusahaan TI, Sanctum, mendokumentasikan sistem bergaya CAPTCHA pertama pada 1997. Namun, sekelompok peneliti ilmu komputer di Carnegie Mellon University di bawah pimpinan Luis von Ahn dan Manuel Blum merupakan yang pertama kali memperkenalkan istilah CAPTCHA pada 2003. Tim ini terinspirasi untuk mengerjakan teknologi ini setelah mendengarkan pembicaraan seorang petinggi Yahoo seputar masalah yang dihadapi perusahaan tersebut: spambot yang mendaftarkan jutaan akun email palsu.

Untuk mengatasi masalah tersebut, von Ahn dan Blum menciptakan program komputer yang mampu menghasilkan serangkaian teks acak, memproses gambar terdistorsi dari teks tersebut (disebut sebagai kode CAPTCHA), menyajikannya kepada pengguna, serta meminta pengguna mengetikkan teks tersebut ke kolom formulir dan kemudian mengirimkan entri dengan mengklik kotak centang di sebelah frasa “Saya bukan robot”.

Karena teknologi OCR pada saat itu kesulitan mengurai teks terdistorsi semacam ini, bot gagal menyelesaikan tantangan CAPTCHA. Jika pengguna memasukkan rangkaian karakter yang benar, dapat diasumsikan bahwa pengguna tersebut adalah manusia dan akan diizinkan untuk menyelesaikan pendaftaran akun atau pengiriman formulir web.

Yahoo menerapkan teknologi milik Carnegie Mellon, yang mengharuskan semua pengguna menyelesaikan tes CAPTCHA sebelum mendaftar untuk mendapatkan alamat email. Hal ini secara signifikan mengurangi aktivitas spambot, dan perusahaan-perusahaan lain kemudian ikut mengadopsi CAPTCHA untuk melindungi formulir web mereka. Namun, seiring berjalannya waktu, para peretas menggunakan data dari tantangan CAPTCHA yang telah diselesaikan untuk mengembangkan algoritme yang mampu menyelesaikan tes CAPTCHA dengan baik. Fenomena ini menandai dimulainya rivalitas teknologi antara pengembang sistem keamanan CAPTCHA dan penjahat siber yang memicu evolusi fungsional platform ini secara berkelanjutan.

reCAPTCHA v1

Diluncurkan oleh von Ahn pada 2007, reCAPTCHA v1 memiliki tujuan ganda: membuat tantangan CAPTCHA berbasis teks menjadi lebih sulit dipecahkan oleh bot dan meningkatkan akurasi OCR yang pada saat itu digunakan untuk mendigitalkan teks cetak.

reCAPTCHA mencapai tujuan pertamanya dengan meningkatkan distorsi teks yang ditampilkan kepada pengguna, dan akhirnya menambahkan baris pada teks.

Tujuan kedua kemudian dicapai dengan mengganti satu gambar teks terdistorsi yang dibuat secara acak dengan dua gambar teks terdistorsi dari kata-kata yang dipindai dari teks asli oleh dua program OCR yang berbeda. Kata pertama, atau kata kontrol, adalah kata yang diidentifikasi dengan benar oleh kedua program OCR. Kata kedua adalah kata yang gagal diidentifikasi oleh kedua program OCR. Jika pengguna mengidentifikasi kata kontrol dengan benar, reCAPTCHA akan mengasumsikan bahwa pengguna tersebut adalah manusia dan memberi izin untuk melanjutkan aktivitas. reCAPTCHA juga akan mengasumsikan bahwa pengguna telah mengidentifikasi kata kedua dengan benar, serta menggunakan respons tersebut untuk memverifikasi hasil OCR di masa mendatang.

Dengan cara ini, reCAPTCHA berhasil meningkatkan keamanan antibot sekaligus mengoptimalkan akurasi teks yang didigitalkan di platform Internet Archive dan surat kabar The New York Times. Ironisnya, seiring berjalannya waktu, sistem ini justru ikut melatih sistem kecerdasan buatan (Artificial Intelligence) dan pembelajaran mesin (machine learning) hingga kedua teknologi tersebut mampu mengidentifikasi teks CAPTCHA yang paling terdistorsi sekalipun dengan tingkat akurasi mencapai 99,8% pada tahun 2014.

Pada 2009, Google mengakuisisi reCAPTCHA dan mulai menggunakannya untuk mendigitalkan teks untuk Google Books sambil menawarkannya sebagai layanan kepada organisasi lain. Namun, kemajuan teknologi OCR dengan bantuan reCAPTCHA dibarengi dengan program kecerdasan buatan yang dapat secara efektif memecahkan reCAPTCHA berbasis teks. Menanggapi hal tersebut, Google memperkenalkan pembaruan sistem pengenalan gambar reCAPTCHA pada tahun 2012, yang menggantikan teks terdistorsi dengan potongan gambar yang diambil langsung dari layanan Google Street View. Pengguna membuktikan bahwa dirinya manusia dengan mengidentifikasi objek dunia nyata seperti lampu jalan dan taksi. Selain menghindari OCR canggih yang sekarang digunakan oleh bot, reCAPTCHA berbasis gambar ini dianggap lebih nyaman bagi pengguna aplikasi seluler.

Google reCAPTCHA v2: reCAPTCHA tanpa CAPTCHA

Pada 2014, Google merilis reCAPTCHA v2, yang menggantikan tantangan berbasis teks dan gambar dengan kotak centang sederhana berisi pernyataan “Saya bukan robot”. Saat pengguna mencentang kotak ini, reCAPTCHA v2 menganalisis interaksi pengguna dengan halaman web, mengevaluasi berbagai faktor seperti kecepatan mengetik, cookie, riwayat perangkat, dan alamat IP untuk menentukan apakah pengguna kemungkinan besar manusia. Metode pelacakan ini mengukur pergerakan kursor tetikus (mouse) pengguna saat mengklik kotak. Pergerakan manusia cenderung bersifat organik dan tidak berpola konstan, sedangkan pergerakan bot jauh lebih presisi dan kaku. Jika reCAPTCHA tanpa CAPTCHA mencurigai pengguna sebagai bot, pengguna akan diberikan tantangan CAPTCHA berbasis gambar.

reCAPTCHA v3

Platform reCAPTCHA v3 yang diluncurkan pada tahun 2018 sepenuhnya mengeliminasi penggunaan kotak centang interaktif tersebut dan berfokus mengoptimalkan analisis risiko berbasis kecerdasan buatan. ReCAPTCHA v3 terintegrasi dengan halaman web melalui JavaScript API dan berjalan di latar belakang, serta menilai perilaku pengguna pada skala 0,0 (kemungkinan bot) hingga 1,0 (kemungkinan manusia). Pemilik situs web dapat mengatur tindakan otomatis yang akan dipicu pada saat-saat tertentu ketika skor menunjukkan bahwa pengguna kemungkinan adalah bot. Misalnya, komentar blog dari pengguna dengan skor rendah dapat dikirim ke antrean moderasi ketika pengguna mengklik “kirim”, atau pengguna dengan skor rendah mungkin diminta untuk menyelesaikan proses autentikasi multifaktor ketika mencoba masuk ke akun.

Metode autentikasi berbasis AI seperti reCAPTCHA v3 berusaha menghindari masalah peretas. Dengan menghapus tantangan interaktif dari proses verifikasi CAPTCHA, metode ini mencegah peretas menggunakan data dari tantangan yang telah diselesaikan sebelumnya untuk melatih bot menyelesaikan CAPTCHA baru. Oleh karena itu, para ahli percaya bahwa CAPTCHA berbasis AI dapat menjadi metode standar dan akan sepenuhnya menggantikan CAPTCHA berbasis tantangan dalam lima hingga sepuluh tahun ke depan.

Contoh penggunaan CAPTCHA

Teknologi CAPTCHA memiliki beberapa kegunaan umum sebagai tindakan deteksi dan pencegahan bot, termasuk:

  1. Mencegah pendaftaran palsu
  2. Melindungi terhadap transaksi yang mencurigakan
  3. Melindungi integritas jajak pendapat online
  4. Menghentikan spam komentar dan ulasan produk
  5. Melawan serangan membabi-buta (brute-force) dan serangan kamus (dictionary attack)

Mencegah pendaftaran palsu

Dengan memberikan tes CAPTCHA kepada pengguna sebelum mendaftarkan akun email, profil media sosial, atau layanan online lainnya, perusahaan dapat memblokir bot yang menggunakan layanan ini untuk menyebarkan spam atau malware atau melakukan aktivitas berbahaya. Pengguna awal CAPTCHA adalah perusahaan-perusahaan seperti Yahoo, Microsoft, dan AOL, yang ingin menghentikan bot untuk mendaftarkan akun email palsu.

Melindungi terhadap transaksi yang mencurigakan

Perusahaan seperti Ticketmaster telah mengintegrasikan CAPTCHA untuk mencegah bot memborong item dengan kuota terbatas, seperti tiket konser, yang kemudian sengaja dijual kembali secara ilegal melalui platform pihak ketiga dengan harga selangit.

Melindungi integritas jajak pendapat online

Bot dapat mengganggu jajak pendapat online tanpa pencegah seperti CAPTCHA. Diperlukannya perlindungan terhadap integritas hasil jajak pendapat online memotivasi beberapa eksperimen paling awal dalam teknologi mirip CAPTCHA. Sebagai contoh, untuk memastikan kualitas jajak pendapat online selama pemilihan presiden AS pada 1996, Digital Equipment Corporation meminta pengguna untuk menemukan dan mengklik gambar piksel bendera pada halaman web sebelum memberikan suara mereka.

Menghentikan spam pada komentar dan ulasan produk

Scammer dan penjahat siber sering menggunakan kolom komentar blog dan artikel untuk menyebarkan scam dan malware. Pelaku siber juga kerap membanjiri kolom dengan ulasan sampah (review spam) berupa testimoni palsu dalam jumlah besar guna memanipulasi peringkat produk secara artifisial di situs web e-commerce. Bot juga dapat menggunakan kolom komentar yang tidak dilindungi untuk melakukan kampanye pelecehan. Aktivitas berbahaya ini dapat diminimalkan dengan meminta pengguna menyelesaikan CAPTCHA sebelum memosting komentar atau ulasan.

Melawan serangan membabi-buta (Brute-Force) dan serangan kamus (Dictionary Attack)

Pada skenario serangan tebakan membabi-buta (brute-force) dan serangan kamus (dictionary attack), peretas akan mengerahkan bot untuk menebak kombinasi angka, huruf, dan karakter khusus secara massal hingga menemukan kata sandi yang tepat. Serangan ini dapat dihentikan secara efektif dengan memicu tantangan CAPTCHA setelah mendeteksi adanya kegagalan masuk (login) dalam jumlah tertentu.

Kekurangan CAPTCHA

Meski CAPTCHA secara umum terbukti efektif dalam menghentikan bot, teknologi juga memiliki kekurangan, antara lain:

  1. Pengalaman pengguna yang kurang menyenangkan
  2. Tantangan aksesibilitas
  3. Mengurangi tingkat konversi
  4. Kemampuan AI bot dalam menyelesaikan CAPTCHA baru
  5. Masalah privasi

Pengalaman pengguna yang kurang menyenangkan

Tantangan CAPTCHA memberikan langkah tambahan pada proses pendaftaran, login, dan pengisian formulir yang bagi sebagian orang merepotkan. Selain itu, dengan meningkatnya kompleksitas CAPTCHA demi mengalahkan bot yang lebih canggih, proses penyelesaian CAPTCHA juga merepotkan bagi pengguna. Dalam studi yang dilakukan pada 2010, saat peneliti di Stanford University meminta sekelompok orang yang terdiri dari tiga orang memecahkan CAPTCHA yang sama, hanya 71% dari solusi CAPTCHA yang disetujui dengan suara bulat oleh para peserta. Studi tersebut menemukan bahwa para penutur asing (bukan penutur asli bahasa Inggris) menghadapi tingkat kesulitan yang lebih tinggi untuk menyelesaikan tantangan CAPTCHA dibandingkan dengan penutur asli. Ini menunjukkan bahwa CAPTCHA mungkin lebih menantang bagi beberapa kelompok demografis daripada yang lain.

Tantangan aksesibilitas

CAPTCHA teks dan gambar bisa sangat menantang atau mustahil diselesaikan bagi pengguna yang memiliki gangguan penglihatan. Hal ini diperparah oleh fakta bahwa pembaca layar gagal membaca sebagian besar tantangan CAPTCHA karena tes ini dirancang agar tidak dapat terbaca oleh mesin.

Berbagai format alternatif CAPTCHA telah berupaya mengatasi masalah ini, tetapi memiliki keterbatasannya masing-masing. CAPTCHA audio, yang mengharuskan pengguna menguraikan audio yang tidak jelas, terkenal sulit dipecahkan. Studi Stanford yang telah disebutkan sebelumnya menemukan bahwa hanya 31% solusi CAPTCHA audio yang disetujui dengan suara bulat oleh para pengguna.

MAPTCHA, suatu jenis CAPTCHA yang mengharuskan pengguna memecahkan masalah matematika sederhana, sangat rentan untuk dibobol oleh algoritme.

Menggunakan CAPTCHA yang tidak dapat diakses juga dapat menimbulkan konsekuensi hukum. Sebagai konsekuensi hukum, Pasal 508 Amendemen Undang-Undang Rehabilitasi (Rehabilitation Act) tahun 1973 yang disahkan pada tahun 1998, secara tegas mewajibkan badan federal Amerika Serikat beserta mitra sektor swasta mereka untuk menyediakan akses informasi digital yang ramah bagi para penyandang disabilitas. Perusahaan bisa jadi melanggar ketentuan ini jika mereka tidak memiliki opsi CAPTCHA yang dapat diakses.

Penurunan tingkat konversi

Pengalaman pengguna yang tidak menyenangkan dan kesulitan mengakses CAPTCHA dapat menimbulkan dampak negatif bagi tingkat konversi. Dalam studi kasus tahun 2009 terhadap 50 situs web, meminta pengguna untuk menyelesaikan CAPTCHA mengurangi konversi yang sah sebesar 3,2%. CAPTCHA audio bisa lebih menyulitkan lagi: studi Stanford yang sama menemukan bahwa pengguna menyerah untuk menyelesaikan tantangan CAPTCHA berbasis suara pada 50% percobaan.

Kemampuan AI bot dalam menyelesaikan CAPTCHA baru

Skema teknologi CAPTCHA telah berulang kali berubah sejak awal kemunculannya karena bot selalu berevolusi untuk memecahkan setiap tantangan CAPTCHA baru. Struktur teknologi CAPTCHA juga menjadi salah satu penyebab masalah ini, karena CAPTCHA bergantung pada masalah AI yang belum terpecahkan untuk menggagalkan bot. Ketika manusia memecahkan tantangan CAPTCHA, mereka menghasilkan kumpulan data yang dapat melatih algoritme machine learning untuk mengatasi masalah AI yang sebelumnya mustahil dipecahkan. Sebagai contoh, pada 2016, peneliti ilmu komputer Jason Polakis berhasil menyelesaikan 70% CAPTCHA berbasis gambar Google dengan menggunakan penelusuran balik gambar Google.

Masalah privasi

Meskipun format baru CAPTCHA mencoba mengatasi masalah aksesibilitas dan menghentikan adu kekuatan bot dengan sepenuhnya menghapus tantangan interaktif, beberapa pengguna dan peneliti menganggap CAPTCHA berbasis AI bersifat invasif. Banyak pihak yang menyampaikan kekhawatiran tentang penggunaan kode dan cookie oleh reCAPTCHA v3 untuk melacak pengguna di berbagai situs web. Beberapa pihak merasakan kurangnya transparansi tentang penggunaan data pelacakan ini untuk tujuan di luar verifikasi.

Solusi terkait
IBM® Verify

Bangun kerangka kerja yang aman dan independen vendor yang memodernisasi Manajemen Identitas dan Akses (IAM), terintegrasi dengan perangkat yang ada, dan memungkinkan akses hybrid tanpa menambah kerumitan.

Jelajahi IBM Verify
Layanan Manajemen Identitas dan Akses (IAM)
Amankan dan menyatukan identitas di seluruh lingkungan hybrid, mengurangi risiko sekaligus menyederhanakan akses.
Jelajahi solusi IAM
Layanan manajemen identitas dan akses (IAM)

Lindungi dan kelola akses pengguna dengan kontrol identitas otomatis dan tata kelola berbasis risiko di seluruh lingkungan hybrid cloud.

    Jelajahi layanan IAM
    Ambil langkah selanjutnya

    Tingkatkan manajemen identitas dan akses (IAM) dengan IBM Verify untuk akses hybrid yang mulus dan perkuat perlindungan identitas dengan mengungkap risiko tersembunyi berbasis identitas dengan AI.

    1. Kenali IBM Verify 
    2. Jelajahi solusi manajemen identitas dan akses