3 poin oleh GN⁺ 2026-02-12 | 1 komentar | Bagikan ke WhatsApp
  • Skrip yang secara otomatis meloloskan prosedur verifikasi usia di berbagai platform sebagai orang dewasa
  • Jika menempelkan dan menjalankan kode di konsol Discord, skrip akan otomatis mengirim permintaan API /age-verification/verify dan berpindah ke halaman penyelesaian verifikasi
  • Di platform lain seperti Twitch, Kick, dan Snapchat juga verifikasi dapat dilakukan dengan cara yang sama dengan memasukkan URL kode QR
  • Alat ini menyalahgunakan struktur pemrosesan data wajah dari sistem k-id untuk membuat metadata yang tampak sah tanpa wajah asli
  • Dibuat untuk menyesuaikan dengan perluasan verifikasi usia global, dengan cara menyalin enkripsi AES-GCM dan struktur data prediksi untuk melewati prosedur verifikasi

Prosedur verifikasi di Discord

  • Dilakukan dengan menempelkan dan menjalankan skrip tertentu di konsol pengembang (F12) pada web app Discord
    • Skrip mengekstrak cache modul webpack Discord, mencari klien API internal, lalu mengirim permintaan ke endpoint /age-verification/verify
    • verification_webview_url yang diterima sebagai hasil permintaan akan dialihkan ke age-verifier.kibty.town
  • Pengguna hanya perlu menyelesaikan CAPTCHA lalu menunggu hingga halaman menampilkan “success” untuk menyelesaikan verifikasi
  • Melalui proses ini, akun Discord akan ditandai sebagai sudah terverifikasi dewasa

Metode verifikasi di platform lain (Twitch, Kick, Snapchat, dll.)

  • Di halaman verifikasi usia tiap platform, pilih opsi ‘selfie’ lalu salin URL kode QR yang ditampilkan
  • Tempel URL tersebut ke kolom input di age-verifier.kibty.town lalu klik tombol ‘verify’
  • Setelah itu proses verifikasi berjalan otomatis dan pesan sukses akan ditampilkan

Cara kerjanya

  • Sistem verifikasi usia k-id yang digunakan Discord tidak mengirim video wajah ke server, melainkan hanya metadata terkait wajah dan detail proses
    • Berkat struktur ini, jika metadata yang tampak sah dimanipulasi lalu dikirim, verifikasi dapat lolos tanpa wajah asli
  • Setelah k-id verifier milik amplitudes pernah dipublikasikan, mitra faceassure memperkuat validasi, tetapi alat ini kembali melewatinya dengan metode baru

Tahapan teknis terperinci

  • Tahap 1: Menyalin parameter enkripsi
    • Dengan membandingkan permintaan yang sah, ditemukan bahwa encrypted_payload, auth_tag, timestamp, dan iv yang hilang perlu diisi
    • Pada enkripsi AES-GCM, kunci dibuat dengan menurunkan nonce + timestamp + transaction_id melalui HKDF(SHA-256)
    • Struktur yang sama direproduksi untuk membuat parameter yang hilang
  • Tahap 2: Manipulasi data prediksi
    • Saat penyalinan enkripsi sempurna pun masih gagal, ditemukan bahwa validasi bergantung pada ‘prediction arrays’ (outputs, primaryOutputs, raws)
    • Berdasarkan data raws, outlier dihapus menggunakan z-score lalu outputs dan primaryOutputs dibentuk
    • Selain itu, kondisi berikut juga divalidasi
      • Nilai xScaledShiftAmt dan yScaledShiftAmt hanya boleh salah satu dari dua kemungkinan
      • Nama media (kamera) harus cocok dengan daftar perangkat nyata
      • Waktu penyelesaian status harus cocok dengan timeline
  • Kode open-source yang mengimplementasikan seluruh proses ini telah dipublikasikan, sehingga siapa pun dapat memeriksanya

Publikasi dan latar belakang pembuatan

  • Pembuatnya menyampaikan terima kasih kepada xyzeva, Dziurwa, dan amplitudes yang pernah mengerjakan hal terkait sebelumnya
  • Dijelaskan bahwa karena Discord akan memberlakukan verifikasi usia global secara penuh pada bulan Maret, mereka pun mengeksplorasi metode baru untuk melewati validasi tersebut

1 komentar

 
GN⁺ 2026-02-12
Pendapat Hacker News
  • Metode yang benar-benar kuat adalah menghasilkan input video buatan alih-alih memakai webcam sungguhan
    Sepertinya tidak ada platform yang bisa mencegah ini
    Bahkan jika platform mewajibkan input kamera yang sulit dipalsukan seperti di ponsel, cukup arahkan kamera ke layar beresolusi tinggi dan selesai
    Permainan kucing dan tikus seperti ini sepertinya tidak akan bertahan lama

    • Ada pertanyaan apakah platform benar-benar ingin menghentikan ini
      Verifikasi usia berbasis selfie video yang tidak sempurna justru menguntungkan semua pihak
      Orang yang masuk akal tidak perlu mengunggah SIM atau paspor, dan platform lebih mudah mempertahankan pengguna
      Situs porno bisa membuat akun pengguna untuk meningkatkan pelacakan dan pendapatan iklan
      Politikus bisa mengumumkan bahwa mereka “telah menerapkan kebijakan pembatasan usia”, dan orang tua merasa tenang karena anak mereka tidak menonton porno
      Pada akhirnya, semua pihak menang
    • Perangkat dengan fitur attestasi hardware seperti kamera Windows Hello sudah ada
      Metode verifikasi seperti ini tampaknya pada akhirnya akan bergerak ke arah itu
      Mungkin salah satu alasan Google mendorong aplikasi khusus Play Store juga untuk membangun rantai perangkat lunak yang dapat diverifikasi seperti ini
    • Jika pemindaian wajah tidak memungkinkan, bisa beralih ke verifikasi ID
      Pada akhirnya ini masalah yang tinggal membalik satu sakelar
    • Ada rumor bahwa Apple akan menambahkan sensor gambar multi-spektrum ke iPhone generasi berikutnya
      Jika digabung dengan pemetaan 3D, trik sekadar menyorotkan layar tidak akan berhasil
      Masalahnya adalah layanan verifikasi usia seperti milik Discord tidak mencoba dengan serius
    • Saya setuju bahwa permainan seperti ini tidak akan bertahan lama, tetapi alasannya berbeda
      Saya просто tidak akan memainkan permainan itu dan berhenti memakai platformnya
  • Ada tiga masalah dengan pendekatan ini

    1. Mengurangi kerepotan verifikasi usia sehingga orang tetap berada dalam ekosistem tertutup
    2. Membenarkan verifikasi yang lebih invasif dengan alasan “metode yang ramah privasi terlalu mudah dilewati”
    3. Mendorong orang menjalankan kode arbitrer saat terhubung ke akun mereka
    • Membuktikan bahwa sesuatu itu mungkin berbeda dengan menganjurkannya
      Ini adalah contoh reverse engineering yang sangat bagus, yang menunjukkan betapa sulitnya melakukan verifikasi tanpa melanggar privasi
      Karena kodenya terbuka, masalah eksekusi kode arbitrer (#3) tidak berlaku di sini
      Jika perusahaan merespons dengan metode yang lebih invasif (#2), pengguna selalu bisa pindah ke platform lain
  • Menurut saya ini ide yang cukup cerdik
    Discord tampaknya melonggarkan verifikasi usia hanya sebatas bisa mengatakan kepada regulator bahwa mereka “sedang mengambil langkah perlindungan anak”
    Tetapi jika pemerintah mulai mengawasi dengan serius, pendekatan seperti ini tidak akan bertahan lama
    Beberapa negara sudah menuntut autentikasi biometrik yang lebih kuat, dan beberapa layanan sedang beralih ke verifikasi berbasis aplikasi mobile
    Trik sederhana berbasis JavaScript akan makin tidak efektif

  • Disarankan membungkus kode eksekusi dalam immediate invoked function expression (IIFE)
    Di macOS Safari, ini tidak berjalan karena top-level await tidak didukung
    Lihat caniuse.com/wf-top-level-await untuk info terkait

    • Safari menunjukkan sikap enggan mendukung standar web modern
      Sudah tertinggal sekitar 5 tahun
  • Saat dicoba, saya diarahkan ke https://age-verifier.kibty.town/webview?url=null
    dan muncul pesan {"error":"error parsing webview url"}
    Sepertinya akun Discord saya sedang dalam A/B test dan memakai penyedia verifikasi lain, Persona

    • Persona dikenal sebagai perusahaan yang mengumpulkan dan membagikan data, seperti saat menunjukkan KTP untuk masuk ke bar
      Jika dicari, ada lebih banyak informasi tentang itu
    • Tweet terkait: https://x.com/xyz3va/status/2021734252505604108
    • Semoga komentar ini naik ke atas agar tim keamanan bisa melihatnya
  • Ini benar-benar berfungsi
    Saya menerima pesan dari Discord bahwa saya “telah diklasifikasikan sebagai grup dewasa”
    (narasi) Dan pada saat itu, saya sadar akun saya telah diretas ;)

    • Saya juga berhasil
      Semoga akun saya yang berusia 11 tahun tidak bermasalah, tetapi kalau mereka meminta wajah atau ID, saya akan keluar saja
    • Akan lebih lucu kalau diverifikasi memakai karakter g-man dari Half-Life
    • Untuk berjaga-jaga, saya mengganti kata sandi setelahnya
  • Saya tidak mengerti kenapa generasi muda begitu terikat pada layanan yang memusuhi mereka
    Apakah kenyamanan tetap tinggal di platform yang dibenci lebih besar daripada usaha mencari alternatif?

    • Mengatakan “mencari alternatif itu usaha ringan” mengandaikan dasar kemampuan teknis
      Banyak anak muda sekarang bahkan asing dengan terminal atau konsep path file
      Mereka bisa mencari sesuatu, tetapi menyiapkan alternatif sendiri adalah hal lain
      Yang paling penting, mereka bahkan kurang punya kesadaran bahwa alternatif itu mungkin ada
    • Selain efek jaringan, memang ada kurangnya alternatif yang benar-benar layak
      Platform terbuka seperti Matrix masih kurang fitur, dan Discord berada pada posisi pilihan yang paling tidak buruk
    • Pada akhirnya alasannya sederhana — karena efek jaringan
      Teman-teman mereka ada di sana, jadi mereka juga ada di sana
    • Sebagian besar komunitas Discord tidak saya kendalikan
      Setiap kali pindah platform, anggota berkurang dan komunitas runtuh
      “Usaha ringan” itu dalam praktiknya berarti membunuh komunitas
    • Ini sama seperti alasan kelompok usia paruh baya masih memakai Facebook Marketplace
      Bahkan jika memakai platform lain, mereka akan sendirian di sana
      Hampir mustahil membuat semua orang pindah pada saat yang sama
  • Saya lolos captcha di Discord,
    tetapi muncul error {"error":"failed to execute k-id privately action (status=404)"}
    Saya jelas orang dewasa, dan prosedur seperti ini benar-benar tidak masuk akal
    Saya tidak peduli kalau sampai diblokir

    • Saya juga melihat error yang sama, tetapi setelah refresh jadi berhasil
    • Sepertinya ada tahap lain yang ditunjukkan di kode
  • Ringkasan berita terkait

  • Permainan kucing dan tikus dalam verifikasi usia digital adalah beban regulasi yang sangat besar
    Jika semudah ini dilewati, platform pada dasarnya hanya mencentang kotak kepatuhan regulasi,
    sementara dasar kepercayaan yang sebenarnya sangat rapuh

    • Ada juga cara yang bisa memuaskan semua pihak
      Tetapi perusahaan tidak menyukainya karena mereka tidak bisa memperoleh data pengguna dewasa yang telah terverifikasi
      Lihat blog Google Age Assurance Europe untuk pembahasan terkait
    • Ini tidak mungkin sempurna
      Tujuan sistem seperti ini bukan pemblokiran sempurna, melainkan menambahkan friksi agar publik tidak bisa dengan mudah melewatinya