Tor Kokarsa Neylenir?

Ziyahan Albeniz - 18 Eylül 2018 -

Kullandığınız browser'ı seçerken sadece hıza mı bakıyorsunuz? Her an yeni versiyonlarıyla karşılaştığımız browser'ınızı ne kadar güncel tutuyorsunuz? Microsoft Edge ve Safari tarayıcıları üzerinde ortaya koyulan yeni phishing saldırıları tarayıcı seçimlerimizin önemini gösteriyorken, Tor Browser 7.x versiyonunda NoScript eklentisinin bypass edilerek script çalıştırabildiğimizi öğrenmemiz aynı haftaya denk geldi. Daha fazlası için sizi içeri alalım.

Tor Kokarsa Neylenir?

Tor, internette anonim olarak gezinmek isteyen kullanıcıların müracaat ettiği bir sistem. Tor'u bilgisayarınıza ya da mobil cihazınıza tek başına kurabileceğiniz gibi, Tor browser ile birlikte yükleyebilirsiniz.

Tor Browser gizliliğinizi temin etmek için olabildiğince tedbirli davranır. Fakat sadece IP'nizi gizlemek değil, browserınızın diğer ziyaretçiler arasından ayırt edilmesini sağlayacak fingerprint'inin elde edilmemesi için de elinden geleni yapmaktadır. Öyle ki Tor Browser penceresini maximize etmeye kalktığınızda bile ofsayt olarak addettiği bu hareket için size sarı kart gösterir.

Tor Browser'ın kimliğinizi gizli tutmak namına aldığı tedbirlerden bir diğeri de browserda script çalışmasını, siz aksini belirtene kadar engellemesidir. NoScript eklentisi ile whitelist ettiğiniz siteler dışındaki tüm sitelerde script çalışması engellenir. Böylece herhangi bir JS kodu ile, örneğin bir WebRTC bağlantı isteği yapıp IP adresinizin ifşa olması senaryosunun önüne geçilir. Sadece JS değil, ActiveX kontrolleri, flash nesneleri vb zararlı olabilecek içeriklerin tamamı engellenir.

NoScript eklentisinin web sayfasında devreye girmesi esasesen sayfanın Content-Type'ı ile doğrudan ilintili. Zira NoScript eklentisi script çalıştırabilecek bir context ile karşılaştığında örneğin Content-Typetext/html olan bir sayfaya denk geldiğinde burada derhal script motorunu durdurur.

Fakat 10 Eylül günü Zerodium'un Twitter hesabı üzerinden yapılan paylaşımda, NoScript eklentisindeki bir ZeroDay zafiyeti sebebiyle Tor kullanıcıların kimliklerinin ifşa olabileceği belirtildi.

Zafiyetin ayrıntılarına bakacak olursak:

Tor Browser'ın 7.x versiyonlarında tüm JS kodlarını bloklayan NoScript eklentisinin Safest modu, HTTP yanıtındaki basit bir trick ile bypass edilebiliyor ve JS dosyalarının çalışması mümkün olabiliyor.

Content-Type: text/html;/json

Anlaşılan o ki script çalışmasını durdurmak için tasarlanan kod, Content-Type'ı yanlış bir biçimde parse ediyor ve /json stringinden hareketle script execute edemeyecek bir context olduğunu düşündüğü için, script motorunu devredışı bırakmıyor.

NoScript "Classic" bu zafiyeti 5.1.8.7 güncellemesi ile birlikte fixledi. Tor Browser ise 8.0 versiyonundan itibaren NoScript'in bu zararlı versiyonunu içermiyor. Tor Browser kullanıcıları ivedilikle tarayıcılarını güncelleyebilir.

Zafiyetin ayrıntılarına ulaşmak için lütfen tıklayınız.

Arife Tarif Gerekmez: Address Bar Spoofing

Google güvenlik ekibi, modern browserlarda adres çubuğunun en önemli güvenlik göstergesi olduğunu belirtiyor. Sitenin gerçek kimliği, doğru bir sitede olup olmadığınız bu gösterge sayesinde anlaşılabiliyor. Nitekim daha önce de Fiddler'ın yazarı Eric Lawrence kişisel blogunda bu konuyu Line Of Death yazısı ile gündeme getirmiş. Bu ölüm hattının üst kısmına, web geliştiricilerin neden müdahale edemediğine, aksi bir durumda ise ne gibi sorunlar yaşanacağına değinmiş idi. Tüm bu ehemmiyetine rağmen neredeyse aynı yıl içerisinde ikinci kez adres bara yönelik spoofing saldırı ile karşılaşıyoruz.

Bunlardan ilki Nisan 2017'de yayınlanan Homograph zafiyeti idi. Homograph atağı özetle Unicode karakter setinde bulunan karakterlerin ASCII setindeki karakterlerle temsil edilmesinden hareketle yapılan saldırılardır. IDN (International Domain Name) özelliği sayesinde uluslararası karakterleri içeren domain adı alınmasından hareket eden saldırganlar, farklı alfabedeki benzer harfleri kullanarak meşru domainleri taklit etmekte ve ziyaretçileri tuzağa düşürmeye çalışmaktadır.

Örneğin xn--80ak6aa92e.com adresi adres çubuğunda "аpple.com" olarak gözükmektedir.

Browserlar çok geçmeden bu konuda gerekli tedbirleri aldılar. IDN olarak girilen bir adresi, adres çubuğunda ASCII formata dönüştürüp göstermeye başlamaları ile birlikte yaşanacak tehlikeli sonuçların önü bir miktar alınmış oldu.

Adres çubuğuna dair bir diğer spoofing tekniği ise Pakistanlı araştırmacı Rafay Baloch'a ait. Daha önce de Blackhat başta olmak üzere çeşitli konferanslarda browser güvenliği üzerine araştırmalarını paylaşan Baloch, bu defa Microsoft Edge ve Safari tarayıcılarda tespit ettiği adres spoofing tekniği ile karşımızda.

Baloch’un paylaştığı araştırmanın ayrıntıları şöyle: Microsoft Edge ve Safari browserlar, sayfa yüklenmesi esnasında adres çubuğundaki adresin Javascript tarafından değiştirilmesine, sayfa yüklenmeye devam ederken izin veriyorlar. Web sitesinin hizmet vermediği bir port üzerinden bir kaynak yüklenmeye çalışılırken, uzun süren bu işlem esnasında DOM'a müdahale edip, içeriği istedikleri şekilde set edebiliyor. Bu esnada da meşru bir domaine, esasen hizmet vermediği bir port üzerinden yapılan istek adres çubuğunda kalmaya devam ettiği için, kullanıcının yanılmasına katkı sunuyor.

Baloch bu isteği yapmadan hemen önce Gmail login sayfasının base64 encoded halini, önce decode edip sonra DOM'a eklediği için URL'de görülen adres ile (http://gmail.com:8080), phishing sayfasının inandırıcılığı da bir hayli artıyor. Baloch’un tekniğinde setinterval komutu ile bu işlem her 100 saniyede bir tekrarlanarak, içeriğin ve adres çubuğundaki spoof edilen adresin sabit kalması hedefleniyor.

İşte Rafay Baloch'un zafiyet istismarı için kullandığı kod:

function spoof()
{
var gmail = 'PCFET0NC8+KArOK.........ZHk+PC9odG1sPg=='; // Gmail sayfasının base64 encoding hali kısaltılmıştır.
x=document.body.innerHTML=atob(gmail);
document.write("<title>Gmail</title>");
document.write("x");
window.location.assign("https://www.Gmail.com:8080");
}
setInterval(spoof(),100000);
</script> 

Yukarıdaki PoC Microsoft Edge browsera ait. Microsoft'un Edge browserındaki bu zafiyetin yayınlanan son güvenlik güncellemesi ile fixlendiği belirtildi. Bu yazı yazıldığı esnada Baloch, Apple'ın Safari 12 versiyonu ile birlikte zafiyeti fixlediğini duyurdu.

Araştırmanın ayrıntıları için lütfen tıklayınız.