FSE’nin FBI ile Karşı Karşıya Geldiği Olay
(blog.freespeechextremist.com)- FSE yöneticisi, fediverse örneğine gelen yasa dışı kullanıcıları izlerken BoardReader/SocialGist scraping ile FBI’ın bilgi talebine uzanan süreci loglar ve e-postalarla derledi
- Sorunun başlangıç noktası, harici sunucu gönderilerini bile FSE gönderisi gibi gösteren BoardReader arama sonuçlarıydı; bunun yasa dışı kullanıcı akışına ve yanlış atıflara birlikte yol açtığı düşünülüyor
- BoardReader,
User-Agentbilgisini gizleyip konut tipi proxy, Tor ve tarayıcı oturumu yeniden oynatımı kullanarak/api/v1/timelines/public?local=falseuç noktasını kazıdı; engellendikten sonra da istekleri sürdürerek sunucu yükünü ve maliyeti artırdı - FBI, 14 Mart 2023’te
WitchKingOfAngmarile ilgili bir Emergency Disclosure Request gönderdi, ancak ilgili hesap FSE’de değilsneed.socialüzerinde bulunuyordu ve ekli ekran görüntüsü de FSE ekranı değildi - Yönetici, sahte timeline ile BoardReader dizinini kirlettikten sonra belirli ifadelerin Facebook’tan gelen istekleri patlattığını gözlemledi; 2024’teki Torswats haberiyle FBI ilgisinin bağlamının bir kısmının yerine oturduğunu düşünüyor
Yasa dışı kullanıcı akışından başlayan iz sürme
- FSE yöneticisi, pedofiliyle bağlantılı kullanıcıların sunucuya gelmesini FSE için ontolojik bir tehdit olarak görüyordu
- Yasa dışı çocuk cinsel istismarı materyali yüklenmesi, kolluk kuvvetlerinin ilgisi ve ekipmana el konulma ihtimali doğrudan risk oluşturuyordu
- Bazı kullanıcıların yasa dışı içerikleri birden çok siteye saçıp hangi hesabın engellenmeden kaldığını kontrol ederek hareket ettiğini düşünüyordu
- Caydırmak için IP, e-posta,
User-Agentgibi elde edilebilen bilgileri ifşa etmeye çalıştı, ancak bunun etkisi sınırlı kaldı- Çoğu kişi dosya yükleyip ya da alıp ayrılıyor, engellenmeyen yerleri arayan bir örüntü sergiliyor gibi görünüyordu
- Giriş yolunu izlerken birçok kullanıcının
Refererbaşlığının boardreader.com’u işaret ettiği ortaya çıktı
Loglarla izlenen yöntem
- Kamu internetine açık bir fedi örneği işletmenin önkoşulu olarak botları, tarayıcıları, worm’leri ve anormal trafiği bizzat analiz edebilmek gerektiği vurgulanıyor
- Log analizi için
awk,tail -f,mawk -Winteractive,grep,sqlite3,R,sed,sort,psqlkullanılıyorawk, metin logları için SQL benzeri bir araç olarak tanımlanıyordig,whois,traceroute,tcpdump,iftop, Shodan ve Tor exit listeleri gibi ağ araçlarından da yararlanılıyor
- nginx gibi web sunucularının log formatı değiştirilerek keyfi başlıklar, yanıt süresi ve arka uç yanıt süresi gibi bilgiler kaydediliyor
- FSE loglarının,
awkya da elektronik tablo benzeri araçlarla daha kolay işlenebilmesi için sekme ayrımlı biçime yakın hale getirildiği belirtiliyor
- FSE loglarının,
- Basit istatistikler de anormallik tespitinde kullanılıyor
- İstek sayısının ortalaması ve standart sapması hesaplanarak aniden sıçrayan IP’ler, uç noktalar ve istek örüntüleri bulunuyor
- Belirli bir anda “POST isteklerinin %90’ı aynı adresten geliyor” gibi çıkarımlar bu şekilde yapılıyor
BoardReader/SocialGist iz sürme
- boardreader.com başlangıçta bir forum arama aracıydı; FSE yöneticisi bu sitenin fedi’yi düzgün anlamayıp FSE’yi tek bir forum gibi ele aldığını düşünüyor
- Diğer örneklerden gelen herkese açık gönderilerin bile
freespeechextremist.comforum gönderileri gibi gösterildiği söyleniyor - SocialGist kendini “accessible social data” satan bir şirket olarak tanıtıyordu; geliştiricisinin Sırbistan’da olduğunu söyleyen blog içeriği ile gerçek IP’lerin örtüştüğü belirtiliyor
- Diğer örneklerden gelen herkese açık gönderilerin bile
- 5 Mart 2023’te FSE loglarında BoardReader’ın açık bir ziyaret kaydı yoktu, ancak
/api/v1/timelines/public?local=falseüzerinde yüksek hızlı scraping tespit edildi- Tarayıcı kendini Chrome olarak tanıtıyordu, ancak insanın kaydırma hızından çok daha hızlıydı
spider1.boardreader.comilespider43arasında A kayıtları vardı, ancak gerçek trafik o sırada DediPath’e ait olan45.15.176.187IP’sinden geliyordu
- IP engellendikten sonra ABD’deki konut tipi IP’lerden çok sayıda deneme sürdü; yönetici, BoardReader’ın tespitten kaçmak için konut tipi proxy satın aldığı sonucuna vardı
- 8 Mart 2023’te
awk,iptablesve Ruby betikleriyle belirli token’ları kullanan istekler engellenmeye başlandı- Sonrasında Sırp bir ISP IP’sinden
devtools.boardreader.comreferanslı istekler görülmeye başlandı - Bu isteklerin normal bir tarayıcı gibi kaynakları yükleyip Bearer token aldıkları, JavaScript çalıştırdıktan sonra bu token ile scraping’e yeniden başladıkları söyleniyor
- Sonrasında Sırp bir ISP IP’sinden
- 429, 401, 403 ve 500 yanıtları denendi, ancak scraper istekleri daha da sık tekrarlayarak fiilen bir DoS etkisi yarattı
- Daha sonra
402 Payment Requireddönülmeye başlandı; bu sırada TWKN herkese açık timeline erişimi kapatıldı
- Daha sonra
SocialGist ile e-posta yazışmaları
- Yönetici 5 Mart 2023’te
info@boardreader.comadresine crawler bilgisi talebi gönderdi - 13 Mart 2023’te
dave@socialgist.comadresinden neyi öğrenmek istediğini soran bir yanıt geldi- Yönetici, yalnızca yerel gönderilerin alınmasını ve BoardReader’ı açıkça tanımlayan bir
User-Agentkullanılmasını talep etti - Kendi sahip olduğu tüm IP aralıklarını crawling’in durdurulacağı hedefler olarak iletti ve pedofili bağlantılı akış sorununu da bildirdi
- Yönetici, yalnızca yerel gönderilerin alınmasını ve BoardReader’ı açıkça tanımlayan bir
- Dave bunu mühendislik ekibine ileteceğini söyledi, ancak yönetici aynı zaman diliminde geliştiricinin scraper üzerinde hata ayıkladığını düşündü
- Loglarda 13 Mart 2023’te
109.92.154.188adresindendevtools.boardreader.comreferanslı istekler görünüyordu - Yönetici, SocialGist’in duracağını söylerken bir yandan da dolaşma yöntemleri üzerinde çalıştığı kanaatine vardı
- Loglarda 13 Mart 2023’te
FBI’ın Emergency Disclosure Request’i
- 14 Mart 2023’te yönetici,
fbi.govadresinden konu satırı Emergency Disclosure Request olan bir e-posta aldı- Special Agent Peter Christenson,
WitchKingOfAngmarkullanıcısına ait abonelik bilgilerini talep ediyordu - Ekli dosyanın adı
FSE Screen Shot.PNGidi
- Special Agent Peter Christenson,
- E-posta başlıkları, posta sunucusu logları ve
fbi.govSPF bilgileri kontrol edildikten sonra e-postanın gerçekten FBI’dan geldiği sonucuna varıldı - Ekli ekran görüntüsü FSE ekranı değildi
- FSE’yi bir “forum” olarak gösteriyordu ve üst tarafta “Forum • Blackrock Executiv...” ifadesi görünüyordu
- “kill blackrock”, “larry fink” gibi arama terimleri vurgulanmıştı
- Basit bir duygu analizi de içeriyordu
- Gönderi e-postadan 26 gün önce yazılmış olmasına rağmen ekran görüntüsünde “11 hours ago”, “13 hours” gibi zamanlar görünüyordu
WitchKingOfAngmar, FSE kullanıcısı değil sneed.social kullanıcısıydı- Yönetici, FBI’a ilgili kullanıcıya ait bilginin FSE’de bulunmadığını, BoardReader’ın “Free Speech Extremist” etiketini eklediğini ama gönderinin kaynağının FSE olmadığını bildirdi
- FBI ajanı kime sorması gerektiğini sorunca yönetici orijinal sunucuyu kontrol etmelerini söyledi
BoardReader, Facebook ve FBI’a uzandığı düşünülen akış
- Yönetici, FBI ve BoardReader’ın Unicode’u aynı şekilde bozduğunu ve harici sunucu gönderilerini FSE gönderisi gibi yanlış atfetme ortaklığının dikkat çektiğini düşünüyor
- Aslen
1f9e2,1f438,1f44dolan Unicode codepoint’lerinin, geçersiz Unicode’u ifade eden soru işareti kutularına dönüştüğü belirtiliyor
- Aslen
- Bu bulgulara dayanarak FBI’ın BoardReader verisini görüp FSE ile iletişime geçtiği sonucuna varıyor
- 15 Mart 2023’te de BoardReader FSE’ye istek göndermeyi sürdürdü ve yalnızca 402 yanıtları aldı
- Yönetici sınırlı bir kamu açıklaması yayınladı ve FSE’yi kilitli moda aldı
- Hesap olmadan TWKN ya da herkese açık timeline görülemez hale geldi ve kayıtlar kapatıldı
- 16 Mart 2023’ten sonra da BoardReader’ın konut tipi proxy, Tor ve her istekte değişen
User-Agentile engeli aşmaya çalıştığı söyleniyor
Sahte timeline ve veri kirletme
- 24 Mart 2023’ten sonra BoardReader scraping’i ve pedofili bağlantılı kullanıcı akışı sürünce yönetici sahte bir timeline sunmaya başladı
- Küçük bir CGI betiğiyle var olmayan hesaplar ve var olmayan gönderilerden oluşan JSON üretti
- İlk ID’ler rastgele 32 bit sayılardı; daha sonra BoardReader içinde takibi kolaylaştırmak için istek zamanının bir kısmı karıştırıldı
- nginx CGI desteklemediği için bu uç noktaya gelen istekler lighttpd üzerine yönlendirildi
- Gerçekleştirmenin büyük kısmının
awkile yapıldığı belirtiliyor
- Gönderi kelime listelerine BoardReader arama terimleri ile CARNIVORE bağlantılı kelime listeleri karıştırıldı
- Sahte gönderiler BoardReader tarafından dizine eklendi; yönetici rastgele ID’leri BoardReader arama kutusunda aratarak FSE web sunucusu logları ile dizin kayıtlarını karşılaştırdı
Facebook isteklerindeki patlamanın gözlemlenmesi
- Yönetici, sahte gönderi URL’lerine Facebook’tan büyük hacimli istek geldiğini log histogramları üzerinden doğruladı
- Yeşil/mavi
4’lerin yoğun olduğu bölümler 402 yanıtlarıydı ve bunların neredeyse tamamının Facebook kaynaklı olduğu söyleniyor - İstek URL’leri sahte gönderilerle eşleşiyordu
- Yeşil/mavi
- BoardReader dizine ekledikten hemen sonra Facebook’un ilgili gönderileri çektiği düşünülüyor
- Sahte gönderilerin kelime listesini yalnızca “larry fink” olacak şekilde değiştirince Facebook isteklerinin neredeyse anında patladığı belirtiliyor
- Bu ifade kaldırılınca trafik azalıp duruyor
- Tekrar eklenince BoardReader’ın dizine alma sürecinin ardından patlama yeniden başlıyor
- Yönetici akışı
awkCGI → lighttpd → nginx → BoardReader crawler → BoardReader index → Facebook → FBI iç arama arayüzü şeklinde tahmin ediyor- Bu akışta Facebook’un FBI için tam olarak hangi araç ya da depo rolünü oynadığı ise sonuna kadar netleşmiyor
SocialGist’i durdurmak için kullanılan yöntem
- Bant genişliği aşım maliyetini azaltmak için yanıtlar çok yavaşlatıldı ve timeout’a çok yakın bitecek şekilde ayarlandı
- Bazen JSON’un son kısmı kısmen kesilerek parse hatası tetiklendi
- BoardReader’ın sıradan bir JSON parser kullandığı ve yaklaşık 1 dakika harcayıp yine de işe yarar veri alamadığı düşünülüyordu
- Daha sonra rastgele üretilmiş gönderilere Dave’in telefon numarası eklendi ve ertesi gün Dave yanıt verdi
- Dave bir Jira bileti oluşturduğunu ve yakında geri döneceğini söyledi
- Kısa bir yazışmanın ardından scraping hızla durdu, ancak FSE’nin BoardReader dizininden çıkması yaklaşık 1 hafta sürdü
Torswats haberiyle yerine oturan sonradan gelen bağlam
- 18 Ocak 2024’te Wired, Lancaster, CA’den Alan Winston Filion’un tutuklandığını haberleştirdi
- Kendisi Torswats ile ilişkili bir figür olarak anılıyor; bomba ihbarları ve sahte rehine durumları dahil yüzlerce asılsız ihbar üretmekle ilişkilendirildiği aktarılıyor
- Yönetici
WitchKingOfAngmarın aslında bu Torswats olduğunu düşünüyorWitchKingOfAngmaradının “Lord of the Rings” göndermesi gibi göründüğünü belirtiyor- Torswats’ın Larry Fink’e yönelik anlamsız tehditkâr tiradları sıkça kullandığı için FBI’ın Larry Fink bağlantılı tehditlerle ilgilenmiş olabileceğini düşünüyor
- Bu sonradan gelen bağlamla FBI talebi, “larry fink” arama terimi ve Blackrock yöneticilerine yönelik tehdit ilgisinin bir kısmı birbirine bağlanıyor
- Yine de açıkta kalan sorular var
- BoardReader’ın bugün tam olarak ne olduğu
- SocialGist’in BoardReader’ı inandırıcı bir paravan olarak kullanıp kullanmadığı
- Facebook’un bu boru hattında hangi rolü oynadığı
- Facebook’un FBI’a araç sağlayıp sağlamadığı ya da bir veri deposu gibi kullanılıp kullanılmadığı
Fedi yöneticilerine bırakılan tavsiye
- Yönetici, fedi verisi isteniyorsa scraping yerine sahte bir örnek kurup relay’e bağlanmanın sunuculara daha az zarar verdiğini söylüyor
- Bunun da uygunsuz olduğunu düşünüyor, ancak en azından karşı tarafın sunucusunu bozmadan veriyi gerçek zamanlı almak mümkün diyor
- Görünenin sadece gürültülü genel scraper’lar olduğunu, sessizce ActivityPub yazılımını ya da relay’leri değiştirerek veri toplayan aktörleri fark etmenin çok daha zor olduğunu düşünüyor
- SocialGist’in hata yaptığı için izinin sürülebildiğini, aynı işi yapıp da bu tür hataları yapmayan kaç örgüt olduğunu bilmenin zor olduğunu söyleyerek uyarıyor
1 yorum
Hacker News yorumları
Blog yazısındaki bağlantı yalnızca defederasyonu seçen instance’ların listesine gidiyor
Resmî Fediblock listesine gitmemesinin nedeni, Fediblock’un birkaç yıl önce kapanmış olması. Fediblock’un yazarı, bunun hiçbir şekilde nihai hüküm gibi kullanılmaması gerektiğini; listelenen instance’ların gerekçelerinin herkes tarafından kendi ölçütleriyle dikkatle karşılaştırılması gerektiğini açıkça belirtmişti. İçgüdüsel olarak, yazarın Fediblock maddesine bağlantı vermeye çalışıp bulamadığını ve doğru düzgün kontrol etmeden en benzer bağlantıyla değiştirdiğini düşünüyorum
Bunun Fediblock’la ya da başka herhangi bir topluluk temelli engelleme mekanizmasıyla hiçbir ilgisi yok. Kullanıcılar kötü davrandı, yönetici hiçbir şey yapmadı; ben de artık konuşmak istemediğime karar verdim. FSE’nin gizli bir cemiyet yüzünden engellendiğinden yakınması komik. Büyük bir komplo olmadan da sıradan troller insanları bizzat rahatsız edip birden fazla sunucunun bağını koparmasına yol açabilir
Hikâyenin, gerçek kullanıcılara zarar verdiği için CAPTCHA kullanmak istememekle başlayıp sonrasında %80’inin açık kaydın ve açık zaman akışının ne kadar uzun süre kapalı kaldığını, bunun da kullanıcıları ne kadar olumsuz etkilediğini anlatması hoşuma gitti
Yine de eğlenceli bir yazıydı ve çevrimiçi olarak başkaları için bir topluluk alanını kendi başıma barındırmanın benim yapabileceğim bir iş olmadığını kesin olarak hissettirdi
Bu yazıda sevdiğim epey şey var: Bir birey, FBI’ın bilgi toplama/gözetim düzeneklerinin bir kısmını anlamaya çalışan bir tür vatandaş bilimi yapıyor; Fediverse dramından parçalar var; küçük sunucu işletmecileri için sistem yönetimi taktikleri de ilginç
torswats denen kişi epey baş belası gibi görünüyor ve sonunda tutuklanması ilginç bir yan hikâye oluşturuyor. Yazar da oldukça zeki görünüyor, üslubunu beğendim. Beş yıldızlık, okunmaya değer bir yazı
Başka bir CEO’nun yalnızca 6 ay önce öldürüldüğü düşünülürse bu daha da geçerli. Yazının sonuna gelindiğinde, söz konusu kişinin zaten vekilleri aracılığıyla sayısız şiddet eylemi gerçekleştirdiği görülüyor. FSE tarafındaki kişinin federal kurumla iletişim kurması iyi olmuş; ama tehdit ekran görüntülerini görür görmez bunun şiddet eğilimli biri olamayacağını varsaymak tehlikeli bir önyargıyı gösteriyor
“Fediblock, FSE’nin asla izin vermediği şeylere izin vermiş gibi yanlış bir izlenim verdi” deyip, kaynak kodu kiwifarms’ta barındırılan bir web sitesine bağlantı veriyor
Engellenmelerinin nedeni, çoğumuzun “ifade özgürlüğü” cephesiyle etkileşime girmek istememesi; neredeyse hepsi bu
Güzel yazı. Çok küçük, pek önemsiz ve belki de yanlış olabilecek bir düzeltmem var
Dahili arama motoru ekran görüntüsündeki “Negative” kelimesi duygu analizi olarak yorumlanmış; ama aslında o gönderinin arama niyetiyle eşleşmeyen “negatif” bir sonuç, yani dahili sistemde yanlış pozitif olarak bildirme düğmesi olma ihtimali var gibi görünüyor. Bu durumda duygu analizinin pek işe yarayacağını sanmıyorum
“FSE’de pedofiller ortaya çıktı” meselesi Fediverse genelinin bir sorunu gibi görünüyor. Kabul etmek gerekirse Discord da aynı durumda
Bu işin Referer başlığı yüzünden başlamış olması ilginç. Tarayıcının varsayılan olarak gezinme geçmişimin bir kısmını sunucuya söylemesi bir gizlilik sorunu gibi görünüyor
Doğru hatırlıyorsam Tor’da bu sorun yok
Çoğu tarayıcı, en azından konuyla ilgili olanlar, başvuran sitenin ayarladığı referer-policy başlığına uyar 1. Django gibi yaygın site framework’lerinde de bunu kontrol eden seçenekler var 2. Çoğu kullanıcı aracısı buna uyduğundan, indeksleme sitesi isteseydi çoğu kullanıcı için bu başlığın gönderilmesini kolayca engelleyebilirdi
Scraper’ları engellemek için daha iyi teknik yöntemler yok muydu? İstekleri işlemek yerine giriş noktasında IP’yi ya da domain’i engellemek gibi. Yine de istek trafiğinin maliyetini ödemiş olabilirler
API endpoint’leri için üçüncü taraf DDoS koruma hizmetleri pazarı yok mu, Cloudflare gibi şeyler. Gerçi “Free Speech Extremist” için uygun bir çözüm olmama ihtimali yüksek ve maliyeti de var. Yine de böyle bir durumda gerçekten maliyet tasarrufu sağlamış olabilir