Monthly Archives: March 2014

DNS’in Kökü

Gece itibariyle DNS’lerde bir sıkıntı olduğu söyleniyordu. Bana da bununla ilgili epey bir mesaj geldi. “Şu İSS’yi kullanıyorum, şu DNS sunucusunu kullanıyorum fakat Internete bağlanamıyorum, zaman aşımı alıyorum” diye gelen mesajlar sonrası kendim kontrol ettiğimde bir sıkıntı görememiştim. Fakat, Twitter‘da konuyla ilgili tweet sayıları giderek artmaya başladı ve ardından da Chip Türkiye‘nin “Türkiye’de DNS’lerin de kökü kazınıyor!” haberi geldi. Sanırım, söylentilerdeki doğruluk payı giderek artmaya başladı diyebilirim.

Yazıyı yayımladıktan bir süre sonra tekrar taslak formuna aldım. DNS’lerin kökünün kazınmasından ziyade daha farklı bir şeylerin döndüğünü düşünüyordum. Sabah ise OpenDNS ve Google DNS sunucuları üzerinden yapılan sorguların her ne hikmetse Türk Telekom sunucularına yönlendiğini gördüm. Bunun birçok sebebi olabilir. DNS spoofing, DNS hijacking, arada bulunan bir transparan DNS proxysisi ile sorguların açık DNS sunucularına ulaşmadan İSS’nin DNS sunucularına yönlendirilmesi gibi. Yaptığım basit bir analizde aldığım sonuç, yapılanı doğrular nitelikteydi:

kame ~ $ nslookup twitter.com 8.8.8.8
Server:    8.8.8.8
Address:   8.8.8.8#53

Non-authoritative answer:
Name       twitter.com
Address:   195.175.254.2

kame ~ $ nslookup twitter.com 208.67.222.222
Server:    208.67.222.222
Address:   208.67.222.222#53

Non-authoritative answer:
Name       twitter.com
Address:   195.175.254.2

Bir de engellenmemiş bir adresin çıktısına bakalım:

kame ~ $ nslookup duckduckgo.com 8.8.8.8
Server:    8.8.8.8
Address:   8.8.8.8#53

Non-authoritative answer:
Name       duckduckgo.com
Address:   176.34.131.233
Name       duckduckgo.com
Address:   46.51.197.88
Name       duckduckgo.com
Address:   46.51.197.89

Engellenmemiş adres için herhangi bir sıkıntı yok gibi durmakta. Şimdi bunu daha anlaşılır bir dille anlatalım. DNS (domain name system); türkçesi alan adı sistemi, Internet ağını oluşturan birimlerin IP adreslerini akılda daha kolay tutulması için dönüştürülen adresleri (domain, www.duckduckgo.com gibi) ve iletişimi organize eden bir sistemdir. DNS sunucuları ise Internet adreslerinin IP karşlığının kayıtlı tutulduğu sunuculardır. Bir örnekle anlatmak gerekirse, www.duckduckgo.com adresini tarayıcınızdan girdiniz, bu Intenet adresindeki makine ile iletişim kurulabilmesi için DNS sunucusuna sorgunuz gitti, DNS sunucusu ise eğer bu isim karşılığındaki IP adresine sahipse, 50.18.192.250 dedi ve bu IP’ye sahip makineye yönlendirildiniz. Fakat, yukarındaki çıktıda Google DNS kullanıyorsanız ve tarayıcınızdan www.twitter.com yazdığınız anda sorgunuz gitmesi gereken Google DNS sunucuları yerine 195.175.254.2 adresine, yani Türk Telekom’a yönlendirildi.

Bu işin biraz da tekniğine bakalım. Bir İSS’siniz ve kötü niyetli bir DNS sunucusu yapmak istiyorsunuz. Bu DNS sunucunuzun IP’sini 195.175.254.2 olduğunu varsayalım. Diğer yanda, ülkenizde hizmet veren güvenilir Google gibi DNS sunucuları var. Siz bu sunucuları kendi kullanım amacınızla işleyişlerini manipüle edip yani gasp edip kendi kötü niyetli sunucunuza yönlendirdiniz (route). Ardından Google DNS kullanan biri Twitter’a girmek istedi. Sorgusunu gönderdi, hop bu sefer Google DNS yanıt verecekken kurduğunuz kötü niyetli DNS sunucusu yanıt verdi. Yani bunu yapabilmek için de adresi twitter.com/195.175.254.2 olarak atadınız. twitter.com diyen 199.59.149.230‘a erişmek yerine tanımlanmış olan 195.175.254.2 IP adresli makineye erişecektir. Bu makine ne yapabilir? Sizi burada bekletebilir, … kararla site erişime engellendi yazısı ile karşılayabilir, DNS sorgularını loglayabilir, sizlere gereksiz reklam sonuçları gösterebilir (bunu yapan birçok İSS mevcut) vs.

Şu an bizim yaşadığım durum da; siz Google veya OpenDNS kullandığınız takdirde, sorgularınız Türk Telekom’un sunucusuna gidiyor ve burada bekletiliyorsunuz. Normalde bu DNS’ler ile erişmeniz gereken adrese de sahte DNS sunucusunda bekletildiğiniz için erişemiyorsunuz. Erişemediğiniz için de sadece yaptığınız sorgu biliniyor. Bu şekilde herhangi bir hesabın, kimin kullandığının bilinmesi mümkün olmaz. Fakat, bir spoofing yapılırsa o zaman işin rengi değişir.  Spoofing’de de siz herhangi bir siteye bağlandığınızı zannedersiniz fakat IP/adres manipüle edildiği için hiç alakası olmayan, saldırganın bilgilerinizi çalacağı sahte bir yere ulaşırsınız. Böylece, örneğin Twitter’a giriş yaptığınızı sanarken sahte bir Twitter sitesi üzerinden tüm bilgileriniz alınabilir.

Şimdi bu yönlendirme ile ilgili bir diğer bir tespite gelelim. İlk başta ben Twitter ve Youtube‘a girenleri mi tespit etmek istiyorlar, bu yüzden sadece bu ikisi mi yönlendirildi diye düşünmüştüm. Fakat sonradan rastgele, daha önce engellenmiş iki porno sitesi için tekrar nslookup yaptım. Sonuç:

kame ~ $ nslookup pornhub.com 8.8.8.8
Server:    8.8.8.8
Address:   8.8.8.8#53

Non-authoritative answer:
Name       pornhub.com
Address:   195.175.254.2

kame ~ $ nslookup xnxx.com 8.8.8.8
Server:    8.8.8.8
Address:   8.8.8.8#53

Non-authoritative answer:
Name       xnxx.com
Address:   195.175.254.2

Fakat, buna henüz gasp edilmemiş bir DNS sunucusu ile bakarsak:

kame ~ $ nslookup xnxx.com 77.88.8.8
Server:    77.88.8.8
Address:   77.88.8.8#53

Non-authoritative answer:
Name       xnxx.com
Address:   141.0.174.37
Name       xnxx.com
Address:   141.0.174.38
Name       xnxx.com
Address:   141.0.174.35
Name       xnxx.com
Address:   141.0.174.39
Name       xnxx.com
Address:   141.0.174.34

Anlaşılan engelli tüm adresler Google DNS ve OpenDNS için aynı yere yönlendirilmiş durumda. İSS tarafından Yandex DNS‘te herhangi bir yönlendirme (routing) olmadığı için sonuç sorunsuz gözüküyor. Şimdilik, Google DNS ve OpenDNS kullanmamak, yaşanabilecek manipülasyonlardan ve spoofing gibi saldırılardan etkilenmeyi azaltacaktır. Kaldı ki Türk Telekom tarafından yapılan bu şeyin yasalara aykırı ve suç olduğu da söylenmektedir. Daha önce de DNS gaspı (hijacking) ile ilgili belirttiğim üzere İSS’ler bunu daha öncede yapabilmekte, olmayan sayfa sorgularında sizlere yanıt vermekte, bunu sahte DNS sunucuları ile gerçekleştirmekte, sorguları reklamların olduğu sitelere yönlendirmekteydiler.

Sonuç olarak, ortada ciddi bir sıkıntının olduğunu söylemek gerekli ve bu durum yakından takip edilmeli. Açıkçası gasp edilen 2 DNS sunucusunun engellenmemiş adreslerin sorgularına verecekleri yanıtlar da “kötü niyetli” birileri tarafından manipüle edilmeye açıktır. Şu anda dava hazırlıkları da yapılmakta. Yazıyı kafam çok karışmış bir şekilde yazdım. Hatam varsa şimdiden kusura bakmayın. Bilgilendirirseniz memnun olurum.

Bu konuyla ilgili olarak kısaca birkaç link vereyim (siz de konuyla ilgili yazı linkleri verirseniz buraya eklerim):

[1] http://www.turk-internet.com/portal/yazigoster.php?yaziid=46356
[2] https://eksisozluk.com/entry/41565793

Ekleme (03.04.2013): Twitter yasağı Anayasa Mahkemesi tarafından kaldırıldı ve sonunda TİB denilen kurum-cuk kademeli olarak engeli kaldırdıklarını duyurdu. Peki DNS yönlendirmesi bitti mi? Hemen VPN, Tor vs kullanmayı bırakıp Twitter’a girmek mantıklı mı? Yeni analizimize bakalım:

kame ~ $ nslookup twitter.com 8.8.8.8
Server:         8.8.8.8
Address:        8.8.8.8#53

Non-authoritative answer:
Name:   twitter.com
Address: 199.16.156.70
Name:   twitter.com
Address: 199.16.156.38
Name:   twitter.com
Address: 199.16.156.198

Peki engeli henüz kaldırılmamış Youtube için bakalım:

kame ~ $ nslookup youtube.com 8.8.8.8
Server:         8.8.8.8
Address:        8.8.8.8#53

Non-authoritative answer:
Name       youtube.com
Address:   195.175.254.2

O da ne? DNS yönlendirmesi devam ediyor! Yani; VPN, Tor vs. kullanmaya GoogleDNS, OpenDNS gibi yönlendirilmiş DNS sunucuları kullanmamaya kaldığınız yerden devam ediyorsunuz.

Tor Bir Öcü Mü?

Gelen yorumlardan sonra bu yazıyı yazmak şart oldu. Tor bir öcü mü, anonimlik nedir bir bakalım.

Anonimlik nedir? Anonimlik, özne setleri (anonimlik seti) içinde kimliğin saptanamaz olma durumuna denir. Bu tanım ilk olarak 2000 yılında Pfitzmann ve Hansen tarafından yapılmış ve Anonim literatürü genelinde kabul edilmiştir. Pfitzmann-Hansen için anonimlik, bir öznenin başka özneler (bir düşman, rakip, saldırgan) tarafından farkedilmeden anonim olarak işlemine devam etmesidir. Anonimliğin bu tanımı, ayrıca, düşmanların (rakiplerin, saldırganların) anonim özneler hakkında bilgi edinmeye çalışması olasılığını da ortaya çıkartmaktadır. Anonimlik düzeyi ölçülebilir. Burada çok teknik detaya girmeyeceğim ama kısaca şunun iyi kavranması gerekli; Anonimlik kişisel tehlike modellerine dayanır. Kimsiniz, kimden gizleniyorsunuz? Neden ve ne tür bir risk alıyorsunuz? Bunun cevabını verecek olan da anonim olmak isteyen öznedir. Her öznenin farklı yöntemleri, aldığı farklı riskler vardır ve kısaca herbiri eşsizdir.

Anonimliğe kısa bir giriş yaptıktan sonra konuya Tor açısından bakalım. Tor, misyon olarak devam etmekte olan ifade özgürlüğü, çevrimiçi gizlilik hakları ve sansür alanlarında,  teknoloji, müdafa, araştırma ve eğitim için küresel bir kaynak olmayı hedeflemektedir. Sizlere belirli bir düzey anonimlik sağlar, çeşitli riskler içerir (mitm, dinleme vs.) ve bunu da olabildiğince güvenli ve gereksiz işlem yükü bindirmeden yapar. Büyük medya organizasyonları tarafından (özellikle yabancı) çok farklı şekillerde, özellikle çocuk pornosu, uyuşturucu, terörizme aracı gibi tanıtılmaktadır. Tor’u duyan kişiler genellikle bunu kullananlardan, konferanslardan, kendi websitesinden öğrenmediği ve genellikle bu medya organizasyonların yaptığı haberler ve yazdığı makalelerden öğrendiği için kafalarda çok farklı bir algı oluşmaktadır. Tor, bu “kötü” şeyler için yapılmış, yasa dışılığı savunan bir araç değildir. Fakat, bilinen şudur; evet birileri Tor’u kullanarak yasa dışı aktivitelerde bulunmaktadır.

Yasa dışı aktivitelere gelelim. Kötü bireyler, kötü bireylerdir. Tor olsun veya olmasın, zaten kötü bir şeyler yapmışlardır, yapıyorlardır veya yapacaklardır. Kaldı ki Tor’un sağlayacağı anonimlikten çok daha fazla seçeneğe sahiptirler. Bunun için büyük miktarlada para harcayabilirler, farklı ülkelerdeki bilgisayarları hackleyerek kötüye kullanabilirler vs. Fakat, parası olmayan, normal bir bireyin anonimlik için, ifade özgürlüğü için, sansürü aşabilmek için çok fazla bir alternatifi yoktur. Teoride suçluların Tor kullandığı söylenebilir, fakat daha fazla ve daha iyi seçeneklere sahiptirler. Tor’un olması veya olmaması onları kötü işler yapmaya devam etmekten alıkoymayacaktır.

Şimdi bir elimizde (Suriye’de Tor ile rejime yakalanmadan ailesi ile iletişim kuran bir kız olayı var.) ifade özgürlüğü kısıtlanmış, baskıcı bir ülkede, sansürden erişilemeyen sitelerde dünyaya sesini duyurmak isteyen bir birey var. Diğer elimizde de bu kötü bireylerden biri var. Soru şu; biz bu ikisini nasıl dengeleyeceğiz? Bu iki duruma nasıl bir değer vereceğiz? Bu durumları nasıl değerlendireceğiz? Baskıcı ülkede yaşayan bireyle, kötü işler yapan bireye nasıl bir değer atayacağız? Bunların hangisinin daha önemli olduğuna nasıl karar vereceğiz? Cevabı kısaca şudur; bu seçimi yapmak kimseye düşmez. Baskıcı ülkede yaşayan kişinin elinden böyle bir seçeneği alırsanız kendini özgürce ifade edemeyecek, özgür bilgiye ulaşamayacak ve hatta öldürülebilecektir. Fakat kötü bireyin elinden Tor alınırsa, kötülük yapabilmek için farklı birçok yönteme başvuracaktır. Kaldı ki, normal bireyler, yani bizlerin Tor dışında çok fazla alternatifi yoktur.

Bununla birlikte, bir analiz için kurulan Exit Relay’e ait Tor trafiğinin %3’ünde “kötü” aktiviteye rastlanmıştır. Medyanın Tor’u nasıl öcü gibi gösterdiğine gelelim. BBC, Tor ve Silkroad ile nasıl uyuşturucu alınacağına dair bir makale yazıyor. İşin enteresan tarafı Tor geliştiricilerinin hiçbiri böyle bir şeyi savunmamasına rağmen makale Tor’un yasa dışı işler için kullanılan bir araç gibi göstermekte. Makalenin yorum kısmında ziyaretçilerden gelen “artık sayenizde öldürülmeden uyuşturucu alacağım” diyen teşekkür mesajları ile bir patlama yaşanıyor. Bu makalenin devamında gelen yeni BBC makalesinde ise uyuşturucu aldıklarını ve çok iyi olduğunu söylüyorlar. Burada amaç Tor’u bir öcü göstermenin ve yapmaya çalıştığını yıkmanın yanında daha fazla tıklama ve daha fazla gelir için makale yazmak da denilebilir.

Yazı ek olarak kısaca Tor kullanıcılarının bilmesi gereken basit bir terminolojiden bahsedeyim:

Web: The World Wide Web. Tarayıcı ile erişilebilen, Internetin parçasıdır.
Deep Web: Bilgisi hiçbir arama motoru tarafından kaydedilmemiştir. Bu bilgi veritabanlarında tutulan veya yapılan istek sonrası oluşturulan sayfaları da kapsamaktadır.
Dark Web: Web’in herkerse açık Internet tarafından kolayca erişilemeyen, erişilmek için özel araçlara ihtiyaç duyulan kısmı. Tor ağı için Hidden Service, I2P ağı için eepsites.
Herkese Açık Internet: Herkesin kullanıma açık olan, devletler ve İSS’ler tarafından filtrelenen ve sansürlenen Internet.
Özel Ağ: Belirli bir amaç için oluşuturulan bilgisayar ağı.

Son olarak sıkça yapılan yanlış önerilerden bahsedeyim. Tor tarayıcısı nasıl geliyorsa, geldiği gibi kalmalı (fingerprint ne kadar önemli kötü yollardan deneyimlemeyin). Eklenti kurmayın, bir örnek isterseniz Adblock. Reklamları engellerken Tor’un gerçek IP’yi sızdırdığı farkedilmiştir ve bu yüzden kurulması tavsiye edilmiyor. Bir diğeri Adobe Flash. Bilgisayarınızda Adobe Flash eklentisi olsa dahi Tor tarayıcısında bunu aktif etmeyin. Son olarak Java. Tor tarayıcıda gördüğünüz üzere NoScript eklentisi mevcut. Eğer güvendiğiniz bir site değilse scriptlere izin vermeyin.

YaCy – P2P Arama Motorunuz

Twitter‘ın erişime engellemesi ile ilgili mesajım için buraya tıklayabilirsiniz.

YaCy, p2p mantığı üzerine kurulu ücretsiz, açık kaynak, özgür bir arama motoru yazılımdır. Genel olarak Java dili ile yazılmıştır ve platform bağımsızdır. Yani, illa GNU/Linux kullanmanıza gerek yoktur. P2P ağlarda olduğu gibi YaCy’de de birçok istemci vardır. Her YaCy-istemcisi birbirlerinden bağımsız olarak bir Internet sayfasını tarayabilir, analiz edebilir, sonuçları YaCY-istemcilerinin erişebilmesi için ortak bir indeks veritabanında tutup paylaşabilir. Tüm YaCy-istemcileri eşittir ve arama portallarında (Google, Bing, Yandex vs) merkezi bir sunucusu yoktur. Kısaca, YaCy için merkezsizleştirilmiş arama motoru da denilmektedir.

Merkezsizleştirilmiş arama motoru nedir?

merkezsizleştirme

Özel mülkiyet bir arama motoru düşünün. Bir merkezi ve yönetici(leri) mevcuttur. Bu arama motorunun sizin kontrolünüz dışında olan özel sunucularının bir merkezi vardır, sizin aramalarınızla ilgili bilgi toplar, sonuçları çeşitli gerekçelerle (telif vs.) sansürleyebilir, sizin arama sorgularınız ve eriştiğiniz sonuçlarla ilgili profil oluşturup bunu reklam için kullanabilir veya satabilir. YaCy’de ise bu durum tamamen farklıdır. Öncelikle, böyle bir merkeze bağlı değilsiniz. Kendi arama motorunuzun hem yöneticisi hem de kullanıcısısınız. Diğer yandan arama portallarındaki gibi içeriğiniz sansürlenmez, yöneticiler tarafından gözetlenmez ve herhangi bir reklam yoktur. Kendi içeriğinizi oluşturabilir, istediğiniz siteleri indeksleyebilir ve 600’den fazla istemcinin düzenli olarak katkı yaptığı 1.4 milyardan fazla dökümana sorunsuz, herhangi bir engele ve kısıtlamaya takılmadan erişebilirsiniz.

Kurulum ve ilk çalıştırma

İlk önce sistemimize Java kurmalıyız. Ardından YaCy’i kurabilir ve çalıştırabiliriz. Windows kullanıcıları buradan MacOS kullanıcıları da buradan indirip kurabilirler. Paket yöneticiniz ve dağıtımınız ne olduğunu bilmediğim için Debian türevi dağıtımlara uygun bir Java kurulumu gösterdim. Diğer kurulum ve çalıştırma dağıtım bağımsızdır.

kame - $ apt-get install openjdk-7-jre
kame ~ $ wget -c http://yacy.net/release/yacy_v1.68_20140209_9000.tar.gz
kame ~ $ tar xzv yacy_v1.68_20140209_9000.tar.gz && mv yacy ~/.yacy
kame ~ $ cd ~/.yacy && sh startYACY.sh

Temel ayarlar

Tarayıcınızdan localhost:8090‘a girdiğinizde YacY’nin durum (status) ana sayfasını göreceksiniz. Şimdi ilk olarak yanındaki Basic Configuration‘a tıklayarak bizi ilgilendiren birkaç ayarı yapalım. 1. seçenek dil seçeneği. Buradan size uygun olan bir dili seçebilirsiniz. 2. seçenek kullanım amacı. Üç seçenek mevcut. İlki, topluluk tabanlı arama. YaCy-istemcileri üzerinden arama yaparsınız. İkincisi, YaCy’i diğer YaCy-istemcilerinden bağımsız olarak yapılandırır, kendi indekslediğiniz ve robotlarla taradığınız siteler üzerinde arama yapılacak şekilde yapılandırabilirsiniz. Üçüncüsü, kendi ağınız ve siteniz için bir arama moturu oluşturabilirsiniz. 3. seçenek kullanıcı adınız. Herhangi bir şey yazabilirsiniz. 4. seçenek ise diğer YaCy istemcilerinin de erişebilmesi için port ayarı. Çok şart değil, port erişilebilir olursa hem performans açısından hem de diğer istemcilere indeks katkısı açısından biraz daha iyi olacaktır. Ayarlarınız tamamsa Set Configuration diyerek kaydedebilirsiniz. iptables’da port açmak isterseniz:

kame ~ $ iptables -I INPUT -p tcp --dport 8090 --syn -j ACCEPT
kame ~ $ iptables -I INPUT -p udp --dport 8090 -j ACCEPT

Bir arama gerçekleştirelim

yacy_arama

Görüldüğü üzere çok kapsamlı bir sonuç (daha devam ediyordu fakat ben yarıda kestim) elde edemedik. Bunun temel nedeni çok taze bir konuyu aratmak istememdi, ayrıca daha çok robotlarla taramaya ve indekslemeye ihtiyacı olduğundandır. Diğer bir deyişle, YaCy’nin birçok istemciye ihtiyacı vardır. Fakat, bu arama YaCy’nin yetersiz olduğu fikri oluşturmasın. Şu ana kadar beni pek üzdüğünü söyleyemem. Sorgularıma verdiği yanıtlar hep yeterliydi.

Arama motoruma herkes erişebilir mi?

Evet. Herkes erişebilir. Bu ister YaCy istemcisi olsun, ister Internette arama moturunuzun açık 2014-03-21-170646_1920x1080_scrotadresini bilen olsun veya diğer arama portallarının örümcekleri olsun erişebilirler. Status sayfasında, sağ köşede bir kutu göreceksiniz. Address kısmına baktığınızda sunucu (host), açık adres (public adress) ve YaCy adreslerinizi (yacy address) görebilirsiniz. Açık adresinize herkes (örümcekler dahil ve adresinizi dağıttığınız sürece) erişebilir. Bu yüzden Account ayarlarında Acces only with qualified account seçeneği ile bir yönetici (admin) şifresi belirleyebilirsiniz. Local robots.txt bölümünden de örümceklerin neye erişemeyeceklerini de ayarlayabilirsiniz.

2014-03-21-170630_1920x1080_scrotBen de indeks yapmak istiyorum

Sol menüde Index Production alt menüsünü göreceksiniz. Crawler/Harvester‘a tıkladığınızda açılan sayfa üzerinden indekslemek istediğiniz sayfanın linkini girerek bu işlemi gerçekleştirebilirsiniz.

Son sözler

YaCy çok detaylı ve kapsamlı bir arama motorudur. Burada çok temel birkaç şeyden bahsettim. Genel anlamda dört temel özelliği vardır. Tarama (crawl), indeksleme, arama ve yönetici arayüzü ve veritabanı. Merkezi bir sunucusu yoktur, sansür, reklam, gözetim gibi durumlardan arındırılmıştır. Yüksek derecede gizlilik sağlar. Çeşitli sıkıntılara sahip olsa da kesinlikle desteklenmelidir. Son olarak, YaCy ne kadar çok istemci sahibi olursa o kadar çok etkin, güvenli, sansürsüz, reklamsız bir arama motoru olacaktır.

TİB ve Metadata

5651 sayılı Internet düzenlemesinin etkileri ve tepkileri sürerken, Gül’ün hiç şaşırtmayan bir hamleyle onayladığı ve birkaç sorunlu şey var düzeltilecek demesi ile hükümetten yana saf tuttuğunu bir kez daha ispatlamıştı. Cumhurbaşkanı danışmanı Yusuf Müftüoğlu The Wall Street Journal‘a “Türk siyasetinin paranoyak tarzı” makalesi ile ilgili sitem dolu bir e-posta göndermiş. Bu e-postada da özellikle dikkatimi çeken Gül’ün Internet düzenlemesindeki “en tartışmalı maddelerin –global normlar ile en uygunsuz olanların– derhal değiştirileceği yönünde hükümetten güvence aldıktan sonra bu onayı vermiştir” cümlesi oldu. Ayrıca, haberin başlığı da Gül’ün Internet yasasına direndiğini söylemektedir. Peki metnin devamında Gül’ün direndiğine dair bir ibare var mı? Yok ve daha kötüsünü belirtmişler. Adı da metadata!

Öncelikle, metadata nedir değildir? Kısaca, bir veri hakkındaki verilerdir. Bunu detaylandırırsak eğer, belirli bir veri setine ya da kaynak hakkında nasıl, ne zaman ve kim tarafından oluşturulduğu hakkında tanımlayıcı bilgiler içerir. Metadata çoğunlukla Internet içeriğine bir gönderme olsa da fiziksel veya elektroknik içerikler hakkında da olabilir. Ayrıca, bir yazılım veya elle oluşturulabilirler. Biraz daha ayrıntıya girelim, bir metadata saat kaçta, nereden, hangi baz istasyonunu kullanarak kimi aradığınızı, arama yaptığınız telefonun IMEI numarasını, ne kadar süre konuştuğunuzu vb. bilgileri içerir. Bunu Internet açısından düşünecek olursak, örneğin bir e-posta gönderdiniz, e-postalarınıza nereden eriştiğiniz, ne zaman eriştiğiniz, IP adresiniz, e-postada kullandığınız adınız, alıcının adı, zaman dilimi, yazı karakter kodu, sunucu transfer bilgisi gibi detaylı bilgileri içermektedir. İşin komik tarafı şu:

Son olarak, servis sağlayıcıları internet kullanıcılarının yalnızca üst verilerini (metadata) TİB’e verecek ve bu yalnızca mahkeme emri ile yapılabilecek. Önceki şeklinde, daha detaylı bilgilerin mahkeme emri gerektirmeksizin iletilmesi isteniyordu.

Sizin gizliliğinize ait tüm içerikler “mahkeme emri” adı altında bir şekilde TİB’e verilebilecek. Bununla birlikte, metadata çok kapsamlı ve sadece tek taraflı bilgiler içermediği için sizinle birlikte iletişime konu olan karşı tarafa ait bilgiler de verilmiş olacak. Tabi ki bizler Internet kullanmasını bilmeyen ve gizlilik konusunda yeterince bilgi sahibi olmadığımız için bu açıklamayı da “evet, kesinlikle çok haklısınız” çerçevesinde değerlendiriyoruz. Üzülerek söylüyorum ki, açıklama yaptıkça daha çok batıyorlar ve şuna artık eminim, ne dediklerinin veya söylediklerinin ne anlama geldiğinden bile emin değiller.

Metadata ile ilgili meşhur bir örnek de Petraeus skandalıdır. Bu skandal, CIA yöneticisi olan general David Petraeus ile gazeteci ve Amerikan ordusu istihbaratında görevli Paula Broadwell arasındaki evlilik dışı ilişki ve konuya dahil birçok farklı kişiden oluşmaktadır. Kısaca, Paula ve David ortak bir anonim e-posta kullanarak birbirleriyle iletişim kurmaktadırlar. İkisi de e-posta göndermek yerine bu anonim e-postada yazdıklarını kaydedip okumaktalar. Paula, kamuya açık alanlardan Internete girip bu kayıtlı mesajları okur ve nerden, ne zaman okunduğuna ve oluşturulduğuna dair metadata verisi birikir. FBI’ın araştırması sonucunda da metadatalar ile Paula’nın kimliğine erişilir.  Guardian’ın metadata’ya giriş makalesinde metadata ile ne tür bilgilerin toplandığına dair detaylı bir anlatım mevcut. Buradan bazı şeyleri aktaracağım:

Kamera

  • GPS bilgileri
  • Oluşturulma ve düzenleme tarihi
  • Fotoğrafa ait içerik bilgileri
  • Kamera modeli
  • Kamera ayarları (flash, f-stop, shutter hızı vs.)
  • Fotoğraf özellikleri (boyut vs.)

Facebook

  • Ad ve soyad, doğum tarihi, yer, iş, ilgi alanları gibi biyografi bilgileri
  • Kullanıcı adı ve ID
  • Abonelikler
  • Cihaz bilgileri (telefon, bilgisayar vs.)
  • Aktiviteler, beğeniler, etkinlikler
  • Facebook etkinliğine dair zaman, saat ve saat dilimi

Twitter

  • Ad, yer, profil bilgileri ve URL
  • Hesap oluşturulma tarihi
  • Kullanıcı adı ve ID
  • Tweetlerin gönderildiği yer, zaman ve saat dilimi
  • Tweetlerin ve cevapların ID’si
  • Takipçiler, takip edilenler, favoriler
  • Tweetlerin gönderildiği uygulama

Google Arama

  • Arama sorguları
  • Aramada çıkan sonuçlar
  • Arama sonucu erişilen bağlantılar

Tarayıcı

  • Ziyaret edilen sayfalara ait bilgiler ve zamanı
  • Otomatik tamamla ile muhtemel giriş bilgileri ve kullanıcı verileri
  • IP adresi, cihaz ve donanım bilgileri, işletim sistemi ve tarayıcı bilgisi
  • Websitelerinden alınan çerez ve cache verileri

Neyse ki bizler teknolojinden anlamayan insanlarız ve bunların ne anlama geldiğini bilmiyoruz. Teşekkürler TİB, teşekkürler Müftüoğlu, teşekkürler Gül! Sayenizde Internet hiç olmadığı kadar “özel hayatın ve iletişimin gizliliğine” saygılı olmamıştı. Google’dan aratıp anaysayadan bir iki şey “sallamak” isterdim sizlere ama artık yazmaktan tiksiniyorum.

Interneti Kapatmaya Doğru Giderken

Kendine gazeteci diyen 4 kişi; Rasim Ozan Kütahyalı, Mehmet Barlas, Mahmut Övür ve Erdal Şafak, atv’de canlı yayında Tayyip Erdoğan‘la bir araya gelip gündeme dair soruları sordular ve sorulara yanıt aradılar. Konuşma beklediği gibi döndü dolaştı Internete düşen ses kayıtlarına geldi ve Erdoğan:

30 Mart’tan sonra atacağımız başka adımlar var. Bu konuda kararlılığımız var. Biz bu milleti Youtube’a, Facebook’a, bilmem şuraya buraya yediremeyiz. Atılması gereken adım neyse biz bu adımı en kesin hatlarla atacağız. Kapatılması dahil.

diyerek ilerleyen süreçte gelecek website engellerinin de haberini vermiş oldu. Interneti “sınırsız bir şey, engeli yok” diyerek kendi denetimi altında tutmayı istemesi zaten şaşırtıcı bir şey değildi. Daha önce de bu konuyla ilgili olarak bir şeyler demişti diye hatırlıyorum.

Bununla birlikte, son günlerde yaşanan SSL sertifika hataları, Google’a ve birçok siteye erişimde sıkıntılar, Internet’in aşırı yavaş oluşu ben ve birçok kişide de bir şeyler üzerine çalıştıkları izlenimini uyandırdı. Yeni Internet düzenlemesi ile getirdikleri URL tabanlı engellemenin altyapısını muhtemel tüm İSS’ler için kullanılabilir olmasını sağlamaktaydılar veya muhtemel Erişim Sağlayıcıları Birliği’nin altyapısı için çalışmalar yapıyorlardı. Her şekilde bizler için hayırlı bir şeylerin olmadığı ortadır. Bugünkü açıklamadan sonra da denedikleri sistem her ne ise başarılı bir sonuç alamadılar ve çok kullanılan ve paylaşımların döndüğü, haberlerin çok hızlı yayıldığı, Erdoğan’ın da zikrettiği bu websitelerin kapatılmasına –dolaylı da olsa– karar verdiler.

URL tabanlı engellemenin olduğu gün traceroute Youtube için olması gereken sonucu vermişti. Google’da yaşanan SSL hataları ve erişim sıkıntılarının yaşandığı zaman baktığımda ise tarayıcıdan Google’a erişilse bile traceroute çıktısında zaman aşımlarının olduğu ve ICMP paketinin Google sunucularına ulaşamadığını farkettim. Bu şu anlama geliyor; traceroute’da paketler Google’a ulaşıp geri dönemiyor; belki de erişiyor fakat dönüş yolunda çeşitli sorunlarla karşılaşıyor. Bu sorunlar; bir güvenlik duvarı veya çeşitli güvenlik önlemleri tarafından bilinçi olarak bloklama olabilir, hop’larda ICMP kapalı olabilir, bloklama traceroute’u etkileyebilir fakat sunucu bağlantıları bundan etkilenmeyebilir.

traceroute to google.com (64.15.117.245), 30 hops max, 60 byte packets
 1  192.168.2.1 (192.168.2.1)  2.590 ms  4.451 ms  5.076 ms
 2  93.155.2.5 (93.155.2.5)  12.404 ms  13.838 ms  15.903 ms
 3  81.212.106.141.static.turktelekom.com.tr (81.212.106.141)  17.969 ms  19.386 ms  20.518 ms
 4  pendik-t2-1-pendik-t3-1.turktelekom.com.tr.221.212.81.in-addr.arpa (81.212.221.61)  22.794 ms  23.862 ms  25.339 ms
 5  * * *
 6  212.156.41.202.static.turktelekom.com.tr (212.156.41.202)  50.162 ms  28.137 ms  27.943 ms
 7  * * *
 8  * * *
 9  * * *
 10 * * *

Kısaca bu çıktıyı yorumlarsak (30. hop’a kadar böyle, çıktı uzun diye 10’da bıraktım.):

  • Son erişilebilir sistem 6. hop’tur.
  • Sorun 7. hop’ta olabilir ya da 6. ve 7. hop arasındaki bağlantıda olabilir.
  • Bu sorun belki dönüş yolunda da olabilir. 6. ve 7. hop’lardaki istemcilerin farklı dönüş yolları olmasından kaynaklanıyor da olabilir.
  • 7. hop’un dönüş yolunda bir sorun olduğu halde 6. hop’un dönüş yolunda herhangi bir sorun olmayabilir.
  • Sorun bu sistemden kaynaklanabilir veya bu tamamen farklı bir sistem olabilir.
  • İşin kötü tarafı bu sorun İSS’den kaynaklanan bir sorun da olabilir.

Bu analizin daha tutarlı olabilmesi için de birçok farklı noktadan buna benzer analizler yapılmalıdır. Bugün tekrar traceroute ve tcptraceroute yaptığımda paketlerin Google sunucularına ulaştığını gördüm. Bu, sanırım analizi desteklemesi açısından önemli bir nokta olsa gerek. Ek olarak, TCP/IP konusunda yeterli bilgiye sahip olmadığım için daha iyi analizler yapılırsa eğer lütfen bana ulaşın yazıya ekleyeyim. Bununla birlikte, İSS’den kaynaklanan bir sorun olabilir demiştim. Dikkat ettiyseniz İSS’den sonra paketler kayboluyor. Ayrıca, bu sorundan ziyade gözetim ve erişim engelleri için bir donanımın kullandığı anlamına gelebilir. İSS’nin tek başına yazılımsal olarak böyle bir trafik yükünü çekmesi pek muhtemel gözükmediği için donanım üzerinde çalışan yazılımlar böyle “sorunlar“‘a da neden olabilirler.

Öte yandan, bugün Lütfü Elvan’ın bir açıklaması oldu. Önemli noktaları buraya alıntılıyorum:

Sayın Başbakanımızın ifade ettiği husus şu: dünyanın hiçbir ülkesinde görülmeyen alçakça saldırılar var. Dünyanın hangi ülkesine gitseniz, bu ülkenin başbakanına, bakanlarına, ailesine, küfürler hakaretler, ağza alınmayacak ifadeler olmaz. Maalesef bunların hepsi internet ortamında yer alıyor. Dünyanın hiçbir ülkesinde bu tür uygulamaya müsaade edilmez… Böyle bir şey yok. Dünyanın hangi ülkesine giderseniz gidin, bu tür hususlarla karşı karşıya kalmak mümkün değil. Eğer böyle bir şey olsa, anında bunun engellenmesi yapılır. Düşünün Başbakan’a, Cumhurbaşkanı’na küfür edilecek, olmadık hakaretler yapılacak, yasa dışı bir takım görüntüler alınıp ve bunlar servis edilecek, bunları da biz içimize sindireceğiz. Böyle bir şey mümkün değil. Böyle bir şey olamaz…

Konunun tekrar dönüp dolaşıp ahlaki değerler üzerinden dayatılmaya çalışılan bir sansüre geldiğini gösteriyor. Elvan, dikkati çekecek çok önemli şeyler söylemiş, özellikle de anında bunun engellemesi yapılır kısmı ilerleyen sürecin bir habercisi gibidir. Ayrıca, Abdullah Gül; “Facebook ve Youtube gibi platformların kapatılması söz konusu olamazdedi. Fakat, o ne derse ben tam tersini düşüneceğim için bu açıklamasını da günü kurtarmak amaçlı olarak yorumluyorum. Erdoğan’ın bu çıkışı, üzerine söylenenler, aslında pek de tartışma yaratmadı. Diğer yandan, böyle bir algı yaratılmaya çalışıyor. Buna gündem değiştirme, hedef saptırma, oyalama ne derseniz diyin. 1 yıl daha iktidardalar. Yerel seçimleri kaybetmeleri bu açıdan çok bir anlam ifade etmiyor. Hatta bence yerel seçimleri kaybedersek yargılanırız veya bir şeyler değişebilir algısı da iğrenç geliyor. Son olarak, bu websitelerin kapatılması seçimlerde bir hilenin döneceği ve bunun da sosyal medya üzerinde en az şekilde duyurulması veya konuşulmasını istedikleri için 30 Mart tarihi özel olarak seçildi izlenimi uyandırmıyor da değil.

Tarayıcılar ve Eklentiler

E-postalar üzerinden de bu sorular devamlı sorulduğu için kısa bir rehber hazırladım. Umarım işinizi görür.

İlk olarak belirtmeliyim ki bu rehberin %100 anonimlik veya güvenlik sağladığı yanılgısına kapılmak veya burada yazan tarayıcı ve eklentileri kullanarak gizliliğin sağlandığı, anonim kalındığı ve güvenli olunduğu kullanıcıyı büyük riskler içine çekebilir. Bu kavramların içi iyi bir şekilde doldurulmadığı sürece, bir tarayıcıdan veya eklentiden bir şeyler beklemek hata olur. Buraya kadar her şey anlaşıldıysa bana sıkça sorulan sorulara geçelim.

Hangi tarayıcıları kullanıyorum?

Neden Firefox Aurora ve Tor Browser kullanıyorum?

Öncelikle bu iki tarayıcıyı şu şekilde ayıralım: Firefox Aurora benim anonimliğe ihtiyaç duymadan, güdenlik işlerimi yüksek bir güvenlik sağlayarak gerçekleştirdiğim, eklenti desteği yüksek, stabil ve hızlı bir tarayıcıdır. Diğer yandan Tor Browser, anonim kalmamı sağlayan ve bunu en iyi şekilde yapan, benimle ilgili, gerçek kimliğime veya trafiğime ait en düşük bilgiyi sızdıran (İSS trafiğinizi şifreli bile görse %100 anonimlik diye bir şey yoktur!) bir tarayıcı olup, anonimliğe ihtiyaç duyduğum zamanlarda kullandığım diğer tarayıcıdır. İki tarayıcının kullanım amaçlarını ayırdıktan sonra diyeceğim bir diğer şey de, evet Firefox Aurora veya Google Chrome veya Opera veya başka bir tarayıcı da Tor ağı üzerinden Internete çıkabilir. Fakat, anonimlik açısından bakarsak Firefox’un Tor ağı üzerinden Internete çıkması sizinle ilgili belirleyici bir bilgi sızdırır. Kaldı ki çeşitli ayarları (useragent vs) değiştirseniz dahi sizinle ilgili bilgi toplayan servisler Tor Browser’dan farklı bir tarayıcı kullandığınızı parmak izleri (fingerprinting) üzerinden görebilir.

Hangi eklentileri kullanıyorum?

Tor Browser; HTTPS-Everywhere, Tor Button ve NoScript eklentileri ile birlikte gelmektedir. Bunun dışında başka bir eklenti kurmaya gerek yoktur. Diğer yandan, kurulacak eklentilerin anonimlik derecesini etkileme olasılığı da mevcuttur. Tor Browser’ı olduğu haliyle korumak en iyisidir.

Firefox Aurora için kullandığım eklentileri ve özelliklerini sıralayarak ilerleyeyim.

Adblock Edge, Adblock Plus’ın forklanmış halidir. Kendi tanımında da yazdığı üzere farkı; Plus  –muhtemelen– maddi kazanç sağlamak için bazı reklamlara (acceptable ads) izin vermektedir, Edge’de ise izin yoktur.

Tarayıcı üzerinden şifreli ve gizli mesajlaşmak ve sohbet (OTR) için –şimdilik– en iyi eklenti. Ayrıca, grup özelliğine sahip olduğu için birden fazla kişi ile bir grupta toplu yazışma yapabilirsiniz. Bilinmesi gereken en temel şey, Cryptocat kullanırken IP adresiniz gizlenmiyor ve bu yüzden takip edilebilme olasılığınız vardır. Tor ağı üzerinden Cryptocat kullanarak bunu da aşabilirsiniz. Bunun için custom server’dan Tor Hidden Service’i seçebilirsiniz.

Eğer tarayıcı üzerinde bir proxy yönetimi ihtiyacı duyuyorsam bunun için kullandığım tek eklenti. Proxy yönetimi ile kastettiğim gerektiğinde örneğin Tor, i2p gibi proxyler veya sahip olduğum shell hesabı ile ssh tünel için kullanmaktır.

Birçok website https yapısına sahip olsa bile ziyaretçileri http üzerinden karşılamaktadır. Bu eklenti ise güvenli olmayan http bağlantısını –eğer website sahipse– https olarak yeniden yazar ve kullanıcıları şifreli bir bağlantı ile karşılamaya zorlar. Olmazsa olmazdır. Bunun örneğini çok yakınlarda bir Youtube videosuna yapılan URL tabanlı engeli aşmada ne kadar işe yaradığını görmüştük. Fakat tek sıkıntı, hala ve ısrarlar birçok website https kullanmamakta ve SSL sertifikası için para ödememektedir. Ayrıca, tavsiye olarak SSL Oberservation özelliğini aktif edin. Bu sizlere eğer bir man-in-the-middle saldırısı varsa bilgi verecek ve eklentinin daha iyi geliştirilmesi için EFF‘ye anonim rapor gönderecektir.

Tarayıcı üzerinden OpenPGP şifreli e-posta göndermek için -bence- en iyi eklenti. Grafik arayüzü, hazır gelen servisler (Gmail, Yahoo vs.), anahtar yönetimi ile son kullanıcıya yönelik ve bu işi de en basit şekilde yerine getiriyor. Artık günümüzde şifreli e-posta göndermek bir zorunluluk olduğu için denenmesinde fayda var.

Websiteleri üzerinde gelen JavaScript, Java, Flash, Silverlight ve diğer çalıştırılabilir eklentilerin kontrolünü ve iznini kullanıcıya bırakarak bu eklentilerden gelebilecek veri toplama ve saldırıları engeller. Hatırlarsanız, Freedom Hosting baskını sonrası zararlı bir JavaScript bulunduğundan Tor Browser’ın bundan etkilendiği –kısa süre içinde bu durum düzeltildi– sözedilmişti.

Bunu kısaca şöyle anlatayım; bir websiteye herhangi bir makaleyi okumak için girdiniz, bu site üzerinde sunulan içerik olarak bir Youtube videosu da var, bu videoyu izlemeseniz dahi tarayıcınız Youtube’dan gelen isteği yanıtladı, ayrıca bir de Analytics mevcut. Böylelikle Google, Analytics ve Youtube ile sizin girdiğiniz siteyi ve okumak istediğiniz makaleyi, bu site üzerinde ne kadar vakit harcadığınızı öğrenerek sizin profilinizi çıkarmaktadır. RequestPolicy ise bu websitelerden gelen istekleri otomatik olarak engelliyor. Yönetim işini kullanıcıya bırakıyor. Diğer yandan XSS veya CSRF gibi saldırıları da bu şekilde engellemektedir. NoScript ile birlikte müthiş bir ikili oluşturur.

Uzun zamandır Cookieless Cookies, yani çerezsiz çerezler (tercüme benim) nedir, bir sayfayı çerezler ve JavaScript kapalı, VPN üzerinden ziyaret ettiğiniz zaman bile bu yöntemle takip edilebildiğinizi anlatmak istiyordum. Nasip bu yazıya oldu. Kısaca Etag (entity tag) kavramını açıklayayım. Etag, http’nin parçası olan bir protokol olup, bir URL’de gelen içeriklerin (gif, jpeg, js vs.) değişip değişmediğini doğrular ve her içeriğe özgü bir etag (checksum, sağlama toplamı) atar. Eğer URL’deki içerik değişmişse yeni bir etag atanır. Bir örnek vereyim; bir sayfaya girdiniz, sayfada bir jpeg var. Bu jpeg’in kendine ait bir etag’ı mevcut. Tarayıcı jpeg’i açtığı ve etag’ı öğrendiği zaman sunucuya doğrulama için bilgi gönderir. Sunucu jpeg’de bir değişklik olup olmadığını kontrol eder. Eğer yoksa jpeg’i yeniden almaya gerek kalmaz ve böylece gereksiz veri akışından kurtulunur. Ziyaretçilerin takibi ise bu yöntemle olmaktadır. Çünkü sunucu her tarayıcıya has bir etag verecek ve veritabanından da bunu kontrol edecektir. Bunu aşmada Self-Destructing Cookies’in yanısıra Secret Agent eklentisi de işe yaramaktadır. Tarayıcının useragent’ını düzenli olarak değiştirerek devamlı farklı etag’ların oluşturulmasını sağlar ve bunlar üzerinden gerçekleştirilecek takibi aşmaya çalışır. Whitelist’e sahip, böylece güvendiğiniz websitelerini buraya ekleyebilir ve sorunsuz kullanabilirsiniz.

Otomatik olarak kullanılmayan çerezleri temizleyen bir eklenti. Ayrıca bir whitelist’e de sahip. Buraya güvendiğiniz websiteleri girerek diğer sitelerden gelen çerezlerin belirli bir zaman aralığında otomatik ve kalıcı olarak silinmesini sağlayabilirsiniz. Böylelikle farkında olmadan çerezler tarafından gözetlenmenin de önüne geçersiniz.

Bir imajın sahte olup olmadığını anlamanın en iyi yolu bu eklentiden geçiyor. Örneğin Twitter’da paylaşılan bir fotoğrafın o ana ait olup olmadığını merak ettiniz. Bu eklenti ile fotoğrafa sağ tıklayarak TinEye’ın devasa veritabanında aratabilir, daha önce kullanılmışsa hangi sitelerde ve ne zaman kullanıldığını görebilirsiniz. Dezenformasyona karşı ilaç gibi gelecektir.

WebPG’de tıpkı Mailvelope gibi GnuPG/PGP şifreli e-postalar göndermenizi sağlayan gayet kullanışlı bir eklenti. Bazı web arayüzleri ile sıkıntıları giderilebilmiş değil ama basit bir kullanıma sahip. Sisteminizde ekli olan size ve arkadaşlarınıza sahip tüm anahtarları otomatik olarak alıyor. Denemeye kesinlikle değer.

Vim kullanmaktan büyük keyif aldığım bir editör. Kısayolları çok sevdiğim için ve bunları da bir tarayıcı üzerinde fareye ihtiyaç duymadan rahat bir şekilde kullanabilmek için en iyi eklenti Vimperator. Gerçi, VimFx ve Vimium ve Pentadactyl gibi uygulamalar da mevcut. Hepsi de aynı işi yapıyor.

Tüm bunlar gizliliğim, anonimliğim veya güvenliğim için yeterli midir?

Hayır! Öncelikle gizlilik, anonimlik ve güvenlik gibi kavramlar doğru anlaşılmalıdır. Anlaşılmadığı takdirde kullandığınız araçlar elinizde bir çöpe dönüşür. Bu yüzden tekrar ve tekrar tavsiye olarak gizlilik, anonimlik gibi kavramların içini iyi doldurmak ve bu konularda bolca araştırma yapmak gerekiyor.