Bloga dön

Parmak İzi Tarayıcılarını Tespit Etmek İçin Deneysel Yöntemler: Sürüm Beyanından Davranış Doğrulamasına

IMC 2024’te yayımlanan bir çalışma, tespiti tekrarlanabilir bir çevrimiçi deneye dönüştürdü: tarayıcının kendisi hakkında ne söylediğine güvenmek yerine, alt düzey nesnelerin özelliklerini saydı ve beyan edilen sürümle karşılaştırdı. Yöntem, sonuçtan daha öğretici.

Tarayıcı parmak izlerinin tespit edilip edilemeyeceği konusunda çok sayıda iddia var ve bunların çoğu yalnızca sonuca odaklanıyor. Kimin kazandığını tartışmak yerine, araştırmacıların bu soruyu nasıl tekrarlanabilir bir deneye dönüştürdüğüne ve hangi ölçütlerle karar verdiğine bakmak daha yararlı.

ACM Internet Measurement Conference (IMC) 2024’te yayımlanan Browser Polygraph başlıklı çalışma, Arizona State University, Boston University ve Amazon araştırmacıları tarafından yürütüldü; DOI numarası 10.1145/3646547.3688455. Laboratuvarda simüle edilmiş veri kullanmak yerine sistem, büyük bir finans şirketinin gerçek üretim ortamında 4,5 ay boyunca çalıştırıldı ve 205.000 gerçek kullanıcı oturumunu kapsadı. Yaygın on ortam maskeleme çözümü test edildi; normal kullanıcı trafiği ise kontrol grubu olarak kullanıldı.

Deney nasıl kuruldu

Üç tasarım tercihi, tespitin iş akışını etkilemeden tüm trafiğe uygulanmasını mümkün kıldı.

Özelliklerin düşük maliyetli olması gerekiyordu. Tespit yalnızca sabit bir özellik kümesini okuyor ve her çalıştırmanın maliyeti milisaniye ve KB düzeyinde kalıyor. Bu nedenle örnekleme yapmadan tüm trafiğe uygulanabiliyor ve kullanıcı açısından fark edilir bir etki oluşturmuyor.

Özelliklerin kararlı olması gerekiyordu. Kullanıcının değiştirebileceği parametreler yerine, tarayıcının kendisi tarafından belirlenen alt düzey yapılar seçildi. Her tarayıcı sürümü farklı bir JavaScript motoruyla gelir ve sürümler arasında API sayısı ile her nesneye bağlı özellik sayısında küçük farklar bulunur. Çalışmada Chrome 110 ile Chrome 114 aralığı karşılaştırma için kullanıldı: sistem 28 kritik nesnenin özelliklerini saydı ve sonucu tarayıcının beyan ettiği sürümle karşılaştırdı. Eşleşme yoksa beyan ile gerçek davranış aynı teknik temelden gelmiyor demektir.

Etiketlerin güvenilir olması gerekiyordu. Test edilen her ortam aynı üretim trafiğine sırayla bağlandı ve aynı kurallarla değerlendirildi; kontrol grubu ise gerçek kullanıcıların normal davranışından oluştu. Böylece sonuç, bir şeyin öznel olarak “gerçek görünüp görünmediğini” değil, aynı kurallar altında bu trafiğin ayırt edilip edilemediğini gösteriyor.

Simülasyonun gerçek olup olmadığını değerlendiren ölçütler

Çalışmada kullanılan ölçümler dört grupta toplanabilir.

  • Tutarlılık: tarayıcının beyan ettiği sürüm, alt düzey nesne yapısıyla eşleşiyor mu? Bu en temel ve taklit edilmesi en zor ölçüt; çünkü bir metin değerini değiştirmek, motor içindeki nesne ve özellik sayısını birlikte değiştirmiyor.
  • Tespit oranı: çalışma dört çözüm üzerinde ayrıntılı deneyler yaptı ve tespit oranları %67 ile %84 arasında çıktı.
  • Gerçek cihazlardan sapma: aynı karar kuralları altında normal tarayıcıların risk puanı 0 iken test edilen çözümlerin ortalaması 8,85 ile 11,66 arasındaydı. Bu puan, öznel bir benzerlik izlenimini değil, gerçek dağılımdan uzaklığı ifade ediyor.
  • Ayırt edilebilirlik: test edilen trafik normal trafikten ayrılabiliyor mu? Ayrılamayan bir kategori, bu yönteme göre gerçek tarayıcılarla arasında davranışsal bir boşluk göstermiyor.

Dört ölçüt içinde birincisi neden, diğer üçü ise onun sonuçlarıdır.

Dört sonuç kategorisi nerede ayrışıyor

Çalışma, test edilen çözümleri alt düzey uygulama biçimlerine göre dört kategoriye ayırdı.

Birinci kategoride alt düzey özellikler bilinen hiçbir gerçek tarayıcı sürümüyle eşleşmiyor; dolayısıyla bunlara karşılık gelen bir motor yok. Basit bir tarama bile uyumsuzluğu ortaya çıkarıyor.

İkinci kategoride ortam gerçek parmak izi özelliklerine sahip, ancak kimlik değiştirildiğinde yalnızca yüzeydeki beyan değişiyor ve alttaki motor aynı kalıyor. Bu, çalışmada en sık görülen modeldi. Bir benzetmeyle, kartvizitte yeni sürüm yazıyor ama aksan hâlâ eski. Sorun tek tek parametrelerin ne kadar iyi ayarlandığı değil, beyan ile davranış arasındaki boşluk; tespitlerin önemli bölümü buradan geliyor.

Üçüncü kategoride alt motor kimlikle birlikte değişiyor. Ortam hangi sürümü beyan ediyorsa o sürüme karşılık gelen motor çalışıyor; dolayısıyla tutarlılık korunuyor ve bu tespit yöntemi trafiği ayıramıyor. Makale ayrıca bu kategoriyi belirlemek için daha karmaşık tespit yöntemlerinin gerektiğini belirtiyor.

Dördüncü kategori tarayıcının kendisini değiştirmiyor. Gerçek bir tarayıcı sanal makine içinde çalıştırılıyor ve ardından hedef yapılandırma yükleniyor. Tarayıcı gerçekten gerçek olduğu için tespit sistemi onu ayıramıyor; ancak işletim maliyeti yüksek ve ölçeklendirilmesi zor.

Dört kategori arasındaki fark parametre sayısında değil, beyan ile davranışın aynı teknik temelden gelip gelmediğinde yatıyor.

Ortam çözümü seçerken pratik noktalar

Tespitin odağı beyanları okumaktan davranışı doğrulamaya kaydı; bu nedenle değiştirilebilir yüzey parametreleri giderek daha az avantaj sağlıyor. Pratik değerlendirmede:

  • Parametre listesini değil, alt katmanı sorun. Beyan edilen sürüm değiştiğinde alt katman da değişiyor mu? Parmak izleri gerçek kombinasyonlar olarak otomatik mi üretiliyor, yoksa değerler elle mi birleştiriliyor?
  • Ortamları birbirleriyle karşılaştırın. Birden fazla ortam çok benzer alt düzey özellikler döndürüyorsa izolasyon tam değildir.
  • Önce tutarlılık, sonra farklılaşma. İçeride birbiriyle çelişen özellikler ne kadar çok ayarlanırsa tespit için görünen yüzey o kadar büyür.
  • Genel bir tespit sayfasını geçmek, platformun ortamı kabul edeceği anlamına gelmez. Son doğrulama yine küçük miktarda gerçek trafikle yapılmalıdır.

Ortam izolasyonundaki temel mesele, her ortamın kendi içinde tutarlı ve bağımsız bir bütün olmasıdır. PurpleMark’ın ele aldığı konu da budur. Tespit ve anti-detection yöntemleri geçerli uyumluluk sınırları içinde kullanılmalıdır; bu çalışmanın asıl değeri, hangi ürünün iyi ya da kötü olduğuna dair bir sıralama vermek yerine değerlendirmeye kanıta dayalı bir temel sağlamasıdır.