1 poin oleh GN⁺ 2025-06-10 | 1 komentar | Bagikan ke WhatsApp
  • Operator FSE menyusun log dan email tentang alur ketika ia menelusuri pengguna ilegal yang masuk ke instance Fediverse, lalu berlanjut ke scraping BoardReader/SocialGist dan permintaan informasi dari FBI
  • Titik awal masalahnya adalah hasil pencarian BoardReader yang membuat unggahan dari server eksternal tampak seperti unggahan FSE; menurutnya, hal ini menyebabkan masuknya pengguna ilegal sekaligus atribusi yang keliru
  • BoardReader menyembunyikan User-Agent, memakai proxy residensial, Tor, dan pemutaran ulang sesi browser untuk mengeruk /api/v1/timelines/public?local=false, dan tetap mengulangi permintaan setelah diblokir sehingga menambah beban serta biaya server
  • Pada 14 Maret 2023, FBI mengirim Emergency Disclosure Request terkait WitchKingOfAngmar, tetapi akun tersebut adalah pengguna sneed.social, bukan FSE, dan tangkapan layar terlampir juga bukan tampilan FSE
  • Setelah mencemari indeks BoardReader dengan timeline palsu, operator mengamati bahwa frasa tertentu memicu lonjakan permintaan Facebook, dan menilai laporan tentang Torswats pada 2024 memberi sebagian konteks atas perhatian FBI

Pelacakan yang berawal dari masuknya pengguna ilegal

  • Operator FSE memandang masuknya pengguna terkait pedofilia ke server sebagai ancaman eksistensial bagi FSE
    • Unggahan materi eksploitasi seksual anak ilegal, perhatian aparat penegak hukum, dan kemungkinan penyitaan perangkat merupakan risiko langsung
    • Ia menilai sebagian pengguna bergerak dengan cara menyebarkan materi ilegal ke banyak situs lalu memeriksa akun mana yang tidak diblokir
  • Ia mencoba mencegahnya dengan memublikasikan informasi yang memungkinkan seperti IP, email, dan User-Agent, tetapi dampaknya tidak besar
    • Banyak yang tampaknya mengunggah atau mengambil file lalu pergi, dengan pola mencari tempat yang tidak memblokir mereka
  • Saat menelusuri jalur masuk, terungkap bahwa header Referer banyak pengguna mengarah ke boardreader.com

Metode pelacakan lewat log

  • Ada asumsi dasar bahwa untuk mengoperasikan instance fedi yang terekspos ke internet publik, operator harus mampu menganalisis sendiri bot, scanner, worm, dan trafik abnormal
  • Untuk analisis log, digunakan awk, tail -f, mawk -Winteractive, grep, sqlite3, R, sed, sort, psql, dan lainnya
    • awk diperkenalkan sebagai alat mirip SQL untuk log teks
    • Alat jaringan seperti dig, whois, traceroute, tcpdump, iftop, Shodan, dan daftar exit Tor juga digunakan bersama
  • Format log web server seperti nginx diubah agar mencatat header arbitrer, waktu respons, waktu respons backend, dan sebagainya
    • Log FSE dibuat mendekati format berbatas tab agar mudah ditangani dengan awk atau alat semacam spreadsheet
  • Statistik sederhana juga dipakai untuk deteksi anomali
    • Rata-rata dan standar deviasi jumlah permintaan dihitung untuk menemukan IP, endpoint, atau pola permintaan yang tiba-tiba melonjak
    • Pada satu waktu tertentu, penilaian seperti “90% permintaan POST berasal dari alamat yang sama” dibuat dengan cara ini

Pelacakan BoardReader/SocialGist

  • boardreader.com awalnya adalah alat pencarian forum, dan operator FSE menilai situs ini tidak memahami fedi dengan benar sehingga memperlakukan FSE seperti satu forum
    • Bahkan unggahan publik dari instance lain disebut ditampilkan seperti unggahan forum freespeechextremist.com
    • SocialGist menjelaskan bahwa mereka menjual “accessible social data”, dan menurut operator, isi blog yang menyebut pengembangnya berada di Serbia cocok dengan IP sebenarnya
  • Pada 5 Maret 2023, log FSE tidak memiliki catatan kunjungan eksplisit dari BoardReader, tetapi ditemukan scraping berkecepatan tinggi terhadap /api/v1/timelines/public?local=false
    • Browsernya mengaku Chrome, tetapi kecepatannya jauh lebih tinggi daripada manusia yang menggulir halaman
    • Ada A record dari spider1.boardreader.com hingga spider43, tetapi trafik sebenarnya saat itu disebut berasal dari 45.15.176.187, IP milik DediPath
  • Setelah IP diblokir, banyak upaya berlanjut dari IP residensial AS, dan operator menyimpulkan BoardReader membeli proxy residensial untuk menghindari deteksi
  • Pada 8 Maret 2023, ia mulai memblokir permintaan yang memakai token tertentu dengan awk, iptables, dan skrip Ruby
    • Setelah itu, muncul permintaan dari IP ISP Serbia yang mengarah ke devtools.boardreader.com
    • Permintaan ini disebut memuat resource seperti browser normal, memperoleh Bearer token, menjalankan JavaScript, lalu melanjutkan scraping dengan token tersebut
  • Ia mencoba mengembalikan respons 429, 401, 403, dan 500, tetapi scraper malah mengulangi permintaan lebih banyak sehingga praktis menjadi DoS
    • Setelah itu ia mulai mengirim 402 Payment Required, dan selama periode tersebut akses ke timeline publik TWKN diblokir

Pertukaran email dengan SocialGist

  • Pada 5 Maret 2023, operator meminta informasi crawler ke info@boardreader.com
  • Pada 13 Maret 2023, datang balasan dari dave@socialgist.com yang menanyakan apa yang ingin ia ketahui
    • Operator meminta mereka hanya mengambil unggahan lokal dan memakai User-Agent yang mengidentifikasi BoardReader
    • Ia menyampaikan seluruh rentang IP miliknya sebagai target penghentian crawling, serta memberi tahu masalah masuknya pengguna terkait pedofilia
  • Dave mengatakan akan meneruskannya ke tim engineering, tetapi operator menilai pada jam yang sama pengembang masih men-debug scraper
    • Log mencatat permintaan pada 13 Maret 2023 dari 109.92.154.188 yang merujuk ke devtools.boardreader.com
    • Operator menilai SocialGist mengatakan akan berhenti tetapi tetap melanjutkan pekerjaan untuk mengakali pemblokiran

Emergency Disclosure Request dari FBI

  • Pada 14 Maret 2023, operator menerima email dari alamat fbi.gov dengan subjek Emergency Disclosure Request
    • Special Agent Peter Christenson meminta informasi pelanggan untuk pengguna WitchKingOfAngmar
    • Nama file lampirannya adalah FSE Screen Shot.PNG
  • Setelah memeriksa header email, log server email, dan informasi SPF fbi.gov, ia menyimpulkan email itu benar-benar datang dari FBI
  • Tangkapan layar yang dilampirkan bukan tampilan FSE
    • FSE ditampilkan sebagai “forum”, dan di bagian atas terlihat “Forum • Blackrock Executiv...”
    • Kata kunci seperti “kill blackrock” dan “larry fink” disorot
    • Analisis sentimen sederhana juga disertakan
    • Unggahan tersebut dibuat 26 hari sebelum email, tetapi pada tangkapan layar terlihat waktu seperti “11 hours ago” dan “13 hours”
  • WitchKingOfAngmar bukan pengguna FSE, melainkan pengguna sneed.social
  • Operator menjawab FBI bahwa informasi pengguna itu tidak ada di FSE, dan meski BoardReader menempelkan “Free Speech Extremist”, sumber unggahan tersebut bukan FSE
    • Agen FBI bertanya harus menghubungi siapa, dan operator menyarankan untuk memeriksa server asalnya

Alur yang tampaknya mengarah ke BoardReader, Facebook, lalu FBI

  • Operator melihat FBI dan BoardReader merusak Unicode dengan cara yang sama, dan keduanya sama-sama salah mengatribusikan unggahan server eksternal sebagai unggahan FSE
    • Ia menyebut codepoint Unicode asli 1f9e2, 1f438, 1f44d berubah menjadi kotak tanda tanya yang menunjukkan Unicode tidak valid
  • Berdasarkan keadaan ini, ia menyimpulkan FBI menghubungi FSE setelah melihat data BoardReader
  • Pada 15 Maret 2023, BoardReader masih terus mengirim permintaan ke FSE dan hanya menerima respons 402
    • Operator mengunggah penjelasan publik terbatas dan mengalihkan FSE ke keadaan terkunci
    • Tanpa akun, orang tidak lagi bisa melihat TWKN atau timeline publik, dan pendaftaran juga ditutup
  • Setelah 16 Maret 2023 pun, BoardReader disebut masih mencoba mengakali pemblokiran dengan proxy residensial, Tor, dan User-Agent yang berubah di setiap permintaan

Timeline palsu dan pencemaran data

  • Setelah 24 Maret 2023, karena scraping BoardReader dan masuknya pengguna terkait pedofilia terus berlanjut, operator mulai menyediakan timeline palsu
  • Ia membuat skrip CGI kecil yang menghasilkan JSON dari kombinasi akun yang tidak ada dan unggahan yang tidak ada
    • ID awalnya berupa angka 32-bit acak, lalu kemudian sebagian waktu permintaan dicampurkan agar mudah dilacak di dalam BoardReader
    • Karena nginx tidak mendukung CGI, permintaan endpoint tersebut diteruskan ke lighttpd
    • Implementasinya disebut sebagian besar menggunakan awk
  • Daftar kata unggahan mencampurkan kata kunci pencarian BoardReader dan daftar kata terkait CARNIVORE
  • Unggahan palsu terindeks di BoardReader, dan operator memasukkan ID acak ke kotak pencarian BoardReader untuk mencocokkan log web server FSE dengan item indeks

Pengamatan lonjakan permintaan Facebook

  • Operator mengonfirmasi lewat histogram log bahwa ada banyak permintaan dari Facebook ke URL unggahan palsu
    • Area dengan banyak 4 berwarna hijau/biru adalah respons 402, dan hampir semuanya disebut berasal dari Facebook
    • URL permintaan cocok dengan unggahan palsu
  • Ia menilai Facebook mengambil unggahan tersebut segera setelah diindeks oleh BoardReader
  • Ketika daftar kata unggahan palsu diubah menjadi satu frasa “larry fink”, permintaan Facebook disebut melonjak hampir seketika
    • Saat frasa itu dihapus, trafik menurun dan berhenti
    • Saat dimasukkan lagi, lonjakan kembali terjadi setelah menunggu indeks BoardReader
  • Operator memperkirakan alurnya adalah awk CGI → lighttpd → nginx → crawler BoardReader → indeks BoardReader → Facebook → UI pencarian internal FBI
    • Ia menyisakan catatan bahwa tidak pernah jelas sepenuhnya apakah dalam alur ini Facebook berperan sebagai alat tertentu untuk FBI atau semacam repositori penyimpanan

Cara menghentikan SocialGist

  • Untuk mengurangi biaya kelebihan bandwidth, ia membuat respons menjadi sangat lambat dan disetel agar selesai tepat sebelum timeout
    • Kadang bagian akhir JSON dipotong sebagian untuk memicu kegagalan parsing
    • BoardReader tampak memakai parser JSON umum, dan menurut operator, meski menghabiskan sekitar 1 menit, mereka tidak memperoleh data yang berguna
  • Setelah itu, ia memasukkan nomor telepon Dave ke unggahan yang dihasilkan secara acak, dan keesokan harinya Dave membalas
    • Dave mengatakan telah membuat tiket Jira dan akan segera memberi jawaban
    • Setelah pertukaran singkat, scraping cepat berhenti, tetapi butuh sekitar 1 minggu sampai FSE hilang dari indeks BoardReader

Epilog yang menjadi lebih masuk akal setelah laporan Torswats

  • Pada 18 Januari 2024, Wired melaporkan penangkapan Alan Winston Filion di Lancaster, CA
    • Ia dilaporkan sebagai sosok terkait Torswats yang membuat ratusan laporan palsu, termasuk ancaman bom dan situasi penyanderaan palsu
  • Operator menilai WitchKingOfAngmar adalah Torswats ini
    • WitchKingOfAngmar tampaknya merupakan referensi ke “Lord of the Rings”
    • Karena Torswats kerap membuat ocehan ancaman tak bermakna yang ditujukan kepada Larry Fink, operator menilai FBI menaruh perhatian pada ancaman terkait Larry Fink
  • Epilog ini menghubungkan sebagian permintaan FBI, kata kunci “larry fink”, dan perhatian pada ancaman terhadap eksekutif Blackrock
  • Masih ada pertanyaan yang tersisa
    • Apa sebenarnya BoardReader saat ini
    • Apakah SocialGist memakai BoardReader sebagai alasan yang tampak masuk akal
    • Peran apa yang dimainkan Facebook dalam pipeline ini
    • Apakah Facebook menyediakan alat untuk FBI, atau dipakai seperti repositori data

Saran yang ditinggalkan untuk operator fedi

  • Operator mengatakan jika menginginkan data fedi, daripada scraping, lebih baik membuat instance palsu dan menghubungkannya ke relay agar tidak terlalu merusak server
    • Ia tetap menganggap cara ini tidak pantas, tetapi setidaknya bisa menerima data secara real-time tanpa merusak server pihak lain
  • Ia menilai yang tampak hanya scraper umum yang berisik, sementara pihak yang diam-diam memodifikasi software ActivityPub atau relay untuk mengumpulkan data sulit disadari
  • Operator memperingatkan bahwa SocialGist dapat dilacak karena melakukan kesalahan, dan sulit mengetahui berapa banyak organisasi lain yang melakukan hal sama tetapi tidak membuat kesalahan seperti itu

1 komentar

 
GN⁺ 2025-06-10
Komentar Hacker News
  • Tautan di tulisan blog itu hanya mengarah ke daftar instance yang memilih defederasi
    Alasannya tidak menuju daftar resmi Fediblock adalah karena Fediblock sudah ditutup beberapa tahun lalu. Penulis Fediblock dengan jelas menyatakan agar daftar itu tidak dipakai sebagai vonis final dalam bentuk apa pun, dan agar kriteria instance yang masuk dibandingkan dengan cermat terhadap standar masing-masing. Secara naluriah, sepertinya penulis artikel awalnya hendak menautkan entri Fediblock tetapi tidak menemukannya, lalu menggantinya dengan tautan yang paling mirip tanpa pengecekan yang memadai

    • Saya mengelola server Mastodon berukuran menengah, dan pernah memblokir satu server karena salah satu penggunanya melemparkan n-word kepada saya, saya laporkan ke adminnya, dan tidak ada tindakan apa pun
      Ini sama sekali tidak ada hubungannya dengan Fediblock atau mekanisme blokir komunal lainnya. Penggunanya bertindak seenaknya dan adminnya tidak melakukan apa-apa, jadi saya memutuskan tidak ingin berurusan lagi. Lucu melihat FSE mengeluh seolah-olah mereka diblokir karena semacam perkumpulan rahasia. Tanpa konspirasi besar pun, troll biasa bisa langsung membuat orang lain jengkel sampai banyak server memutuskan hubungan dengan mereka
    • Fediblock berakhir pada September 2023, dan tulisan ini penuh dengan cap waktu yang menunjukkan kejadian-kejadian itu terjadi sebelumnya
  • Saya suka bagaimana ceritanya dimulai dari keengganan untuk menerapkan CAPTCHA karena itu merugikan pengguna nyata, lalu 80% sisanya membahas berapa lama pendaftaran publik dan linimasa publik dimatikan, serta seberapa negatif dampaknya bagi pengguna
    Tetap saja, ini tulisan yang menarik, dan membuat saya makin yakin bahwa saya tidak sanggup meng-host ruang komunitas untuk orang lain di internet

  • Ada banyak bagian yang saya suka dari tulisan ini: ada sains warga ketika satu orang memetakan sebagian perangkat pengumpulan intelijen/pengawasan FBI, ada juga serpihan drama Fediverse, dan taktik administrasi sistem untuk operator server kecil juga menarik
    Sosok bernama torswats tampak seperti biang masalah besar, lalu akhirnya ditangkap sehingga muncul subplot tambahan yang menarik. Penulisnya juga terlihat cukup cerdas dan saya suka gaya tulisannya. Layak dibaca, bintang lima

    • Ini tulisan yang sangat bagus dengan campuran detail teknis yang pas. Rasanya akan sangat cocok dijadikan presentasi di acara seperti Chaos Communication Congress
    • Perlu diperhatikan kesimpulan keliru yang diambil penulis. FBI meminta informasi tentang seorang pengguna dan mengirim tangkapan layar yang berisi ancaman kekerasan, tetapi orang dari pihak FSE langsung menyimpulkan bahwa itu cuma omong kosong tak berbahaya
      Terlebih jika mengingat ada CEO lain yang dibunuh hanya 6 bulan sebelumnya. Menjelang akhir tulisan, terlihat bahwa orang itu memang telah melakukan tak terhitung banyaknya tindak kekerasan lewat perantara. Syukurlah orang dari pihak FSE mau berkomunikasi dengan lembaga federal, tetapi melihat tangkapan layar ancaman lalu langsung berasumsi orang itu pasti bukan sosok yang berbahaya menunjukkan bias yang riskan
  • Katanya Fediblock memberi kesan palsu seolah-olah FSE membolehkan hal-hal yang sebenarnya tidak pernah mereka izinkan, tetapi lalu menautkan situs web yang source code-nya di-host di kiwifarms
    Alasan mereka diblokir adalah karena kebanyakan dari kami memang tidak ingin berinteraksi dengan kubu “kebebasan berbicara”, dan nyaris cuma itu alasannya

    • Itu terdengar seperti pernyataan yang tidak tersambung secara logis dengan kalimat yang sedang dibalas. Apa hubungan memblokir atau tidak menyukai seseorang dengan pemeriksaan fakta?
  • Tulisan yang bagus. Ada satu koreksi yang sangat kecil, tidak terlalu penting, dan mungkin juga salah
    Penulis membaca kata “Negative” pada tangkapan layar mesin pencari internal sebagai analisis sentimen, padahal tampaknya lebih mungkin itu berarti hasil “negatif” dalam arti posting itu tidak cocok dengan maksud pencarian, yaitu tombol untuk menandai false positive di sistem internal. Analisis sentimen sepertinya tidak akan terlalu berguna dalam konteks ini

    • Saya tidak setuju. Ikon “Negative” itu berupa kepala orang berwarna merah. Siapa yang akan memilih ikon seperti itu untuk “false positive”? Menurut saya, tafsir sebagai “sentimen negatif” lebih masuk akal
  • “Munculnya pedofil di FSE” tampaknya merupakan masalah di seluruh Fediverse. Kalau mau jujur, Discord juga begitu

    • Pada dasarnya, menurut saya itu berlaku untuk tempat mana pun yang memungkinkan unggah foto dan tidak terhubung ke identitas asli
    • Signal dan Telegram juga begitu
  • Menarik bahwa semua ini bermula dari header Referer. Fakta bahwa browser secara default memberi tahu server sebagian riwayat penelusuran saya terasa seperti masalah privasi
    Kalau ingatan saya benar, Tor tidak punya masalah itu

    • Menariknya, ini bisa diatur baik dari sisi pengguna maupun dari sisi situs yang mengirim referensi
      Kebanyakan browser, setidaknya browser yang relevan, mematuhi header referer-policy yang ditetapkan situs perujuk 1. Framework situs yang umum seperti Django juga punya opsi untuk mengendalikannya 2. Karena sebagian besar user agent mematuhinya, jika situs pengindeks memang menginginkannya, mereka bisa dengan mudah mencegah header itu terkirim untuk sebagian besar pengguna
  • Apa tidak ada cara teknis yang lebih baik untuk menghentikan scraper? Misalnya memblokir IP atau domain di titik masuk alih-alih memproses permintaannya. Meski begitu, mungkin mereka tetap harus menanggung biaya trafik permintaan itu
    Bukankah ada pasar layanan perlindungan DDoS pihak ketiga untuk endpoint API, semacam Cloudflare? Hanya saja, kemungkinan itu bukan solusi yang cocok untuk “Free Speech Extremist” dan juga ada biayanya. Walau begitu, dalam situasi seperti ini mungkin justru bisa menghemat uang

    • “Jadi kami membuat trafik dari IP yang sedang melakukan scraping dibuang oleh server. Masalah selesai! Lalu tak lama kemudian mulai terlihat percobaan besar-besaran dari IP lain. Itu adalah IP rumahan di Amerika Serikat. Mereka membeli proxy residensial.”