Telegram Bir Güvenli Mesajlaşma Aracı Değildir

Çalışma mekanizmasında geçerliliği ve güvenliği kanıtlanmış, birçok kez saldırılarla sınanmış ve sınanmaya da devam eden SSL/TLS gibi bir protokolü kullanmak yerine kendi uydurduğu ve içinde bilinen zafiyetler barındıran bir protokol kullanan Telegram‘ı kriptolojiden bihaber olanların yayması oldukça manidar.

 

Telegram adlı mesajlaşma uygulaması, “güvenli”, “şifreli” veya “kriptolu” gibi kelimelerin gerçekte ne mana ifade ettiğini tam bilmeden, kulağa efsunlu gelen çağrışımlarıyla harekete geçen sözde blog yazarları ve uzmanlar tarafından çokça öne çıkarılıyor. Telegram, altyapısında mesleğinde kriptoloji/kriptografi geçmişi olmayan uygulamacılar tarafından üretilen MTProto adlı garip bir şifreleme kullanıyor. Ve maalesef çok ilginç bir şekilde bu protokolde sanki bir marifetmiş gibi hiçbir şekilde SSL/TLS kullanılmıyor. MTProto neredeyse hiçbir kriptoloji otoritesi tarafından şimdiye kadar etraflıca elden geçirilmediği, saldırılarla sınanmadığı ve mimarisinde yer alan güvenlik problemleri nedeniyle sanki doğarken ölmüş denilebilecek çok tuhaf bir protokol olarak Telegram’ın omurgasını oluşturuyor. Çok vahimdir ki Telegram, Türkiye’de sadece yabancı kaynaklardan takip ettikleri blog yazılarını çevirmekle ve aparmakla günlerini geçiren sözde teknoloji uzmanları tarafından hiçbir bilimsel dayanağı olmayacak bir şekilde nazara verilmeye devam ediyor.

 

MTProto Telegram Mimari

MTProto Telegram Mimari

 

Telegram ve MTProto’nun Sıkıntıları

Telegram uygulaması kullanıcılar arasındaki mesajların dünya üzerindeki birkaç sunucu üzerinden yönlendirilmesinden ibaret bir yapıda işliyor. Bu yapıda;

  • Bir kriptolojik protokolün veya algoritmanın gerçekten güvenli olabilmesi için “non-deterministic” bir yapıda olması gerekirken, MTProto neredeyse tamamen “deterministic” bir yapıdadır.
  • Kimlik doğrulaması sadece sunucu ile istemciler (kullanıcılar) arasında yapılıyor yani istemciler arasında bir kimlik doğrulaması söz konusu değil.
  • Şifreleme sadece sunucu ile istemci arasında yapılıyor ve de protokol kendisine o kadar güveniyor ki TLS kullanmıyor! Şifreleme uçtan uça gerçekleşebiliyor, fakat kimlik doğrulaması olmadığı için sunucu bile isterse man-in-the-middle (ortadaki adam) saldırısı gerçekleştirebiliyor. Ya da sunucuyu ele geçirenler mitm yapabiliyor. Bu şekilde Telegram’ın kimlik doğrulaması üzerine başarılı bir saldırı bile tasarlanıp uygulanabildi ve Telegram bunu kendi sistemi dışında olduğunu iddia edip kabullenmedi!
  • Sistem “sunucuya güven” prensibine dayanıyor ki, bu son kullanıcılar açısından aslında hiçbir şey ifade etmiyor.
  • Sunucular arasındaki iletişime ve verilerin sunucularda nasıl depolandığına dair bilgi bulunmuyor.
  • Şimdiye kadar hiçbir yerde kullanılmamış olan AES-IGE implementasyonu MTProto’da baş tacıdır. AES-IGE’nin aslında doğrulanmış bir şifreleme olmadığını da belirtmek gerekir.
  • Protokol ve kullanılan algoritma yapısı kriptoanaliz süreçlerinden geçmediği için içinde tuzak, arkadan dolanma ve trapdoor gibi gizli yapıların olup olmadığı bilinmiyor. Bu yola NSA’in sık başvurduğunu öğrenmiştik.
  • MTProto’da şifreyi çözen anahtar için düz metnin özeti SHA-1 alınıyor ve sadece bu kullanılıyor. Halbuki güvenli tasarımlarda düz metinler önce şifrelenip sonra özeti alınıyor. Ayrıca SHA-1’in artık kırılabildiği ve güvensiz olduğu, bu yüzden Google, Microsoft başta olmak üzere birçok şirket, servislerinde yavaş yavaş SHA-256 kullanımına geçtiği de biliniyor.
  • Karşılıklı kullanılan açık anahtarlar kimlik doğrulamasına tabi tutulmamaktadır. Bu noktada da açıkça man-in-the-middle (ortadaki adam) saldırısına davetiye çıkarılmaktadır. İsteyen herkes (kötücül niyetliler dahil) Telegram API’sini kullanarak kendi uygulamasını üretebilir ve bunu yayabilir ki, Telegram için birçok 3. parti uygulama yapılmış.
  • Hızlı mesajlaşma altyapısının arka planındaki gerçek ise kriptoloji gereklilikleri açısından verdiği ödünlerdir. Özellikle gizlilik için verdiği teknik ödünler nedeniyle çok hızlı olduğu görünmektedir. Mesela SHA-256 performans kaygıları nedeniyle özet işlemlerinde tercih edilmiyor. Çünkü şifrelemede ne kadar sıkılaştırma yapılırsa, hız ve performans o kadar düşmektedir.
  • Ve daha birçok teknik sıkıntı…

 

Telegram’ın Güvenliği için Herkese Meydan Okuması

Telegram kriptoloji camiası tarafında hiç ciddiye alınmayan bir yarışma başlatmıştı. Bu yarışma birkaç kezdir tekrarlanıyor ve bir sonuca ulaşılamıyor. Sonuç olarak kimsenin protokolü kıramadığı söylendi! Halbuki bir kriptoanaliz için gerekli olabilecek verileri sunmadan sadece komik şifreli metinleri vererek sizden protokolü kırmanızı istiyorlardı.

Kriptoanaliz aşamasında saldırgana sınırsız imkanlar sunulması ve protokolün de maksimum saldırı gücü karşısında gücünün test edilmesi gerekiyordu. MTProto neredeyse tamamen “deterministic” bir yapıda kurulması, zaten onun etrafında ciddi şüpheler oluşmasına meydan vermektedir. Ayrıca ilk yarışmaların çerçevesinde MITM perspektifi, bilinen düz metin, seçili düz metin, seçili şifreli metin, değiştirme/modifiye etme ve tekrar saldırıları kesinlikle yoktu. Bunların yerine elinizde sadece rastgele şifreli metinler mevcuttu. Şu sıralar yapılan meydan okumada ise sunucuyu ele geçirmiş bir saldırgan olarak 2 Telegram kullanıcısının mesajlarını okumanız isteniyor!

Yani Telegram, tüm kriptoloji bilimiyle dalga geçercesine kendisinin çalıp ve oynadığı, teknolojiye vakıf olmayan sözde teknoloji uzmanlarının da buna def tutarak karşılık verdiği bir alabildiğine göz boyacılığı ile kendisinin kırılmaz olduğu iddiasını güçlendirme amacını güdüyor. Hatta yaptığı yarışma bir ara BBC’nin haberlerine bile konu olabildi! Belli başlı İngilizce teknoloji kaynaklarında okuduklarını kullanıcılara yenilikmiş gibi sunan ve “her konuda yazabilen” yazarların biraz daha dikkatli olması ve mümkünse güvenlik ve kriptoloji gibi inanılmaz teknik ve detaylı bilgi gerektiren bir konuda ahkam kesip, tavsiye yapmamaları son kullanıcılar açısından çok daha faydalı olacaktır.

 

Referanslar:

Kriptoloji için yararlanabileceğiniz Türkçe kaynaklar:

M. MEKİN PESEN

YAZAR:

Özel bir kurumda kıdemli bilgi güvenliği uzmanı olarak çalışan M. Mekin Pesen, Elektrik-Elektronik Mühendisliği lisans ve Bilgi Güvenliği Mühendisliği yüksek lisans diplomaları ile CISSP, ECSA, CEH ve CCSA sertifikalarına sahiptir. Kendisi siber güvenlik ve bilgi güvenliği genel başlıkları altında çeşitli konularda uzmanlaşmaktadır.


    

E-Bültene Kaydolun, Makaleler Posta Kutunuza Gelsin

Bu yazıyı başka hiçbir yerde ve şekilde yayınlayamazsınız ve/veya kullanamazsınız. Bu yazıyı kullanmanız, başka herhangi bir uyarıya gerek kalmadan her türlü hukuki sonucu daha en baştan kabul ettiğiniz manasına gelir.
  • Telegram’da iki yeni önemli güvenlik açığı daha ortaya çıkarıldı: http://cs.au.dk/~jakjak/master-thesis.pdf

  • Yusuf Anıl Erdem

    Neye göre kime göre güvenli? Yazı çok abartılmış. Altı üstü yazışılıyor. Sanki NASA ile haberleşiyoruz. Whatsapp çok mu güvenli veya diğer uygulamalar? Ben hizmete bakarım. Hızlı,sade ve hoş. Teşekkür ediyorum

  • Eyüp C. Elma

    Merhaba,

    Blogumda Telegram hakkında giriş seviyesinde bir tanıtım makalesi yazdım. Sebebi ise Whatsapp tekelinden insanları biraz olsun kurtarmak ve daha yenilikçi, daha başarılı, daha özgür bir yazılıma sevketmekti.

    Yazımda üzerinde pek durmasam da, bir-iki paragrafta atıf amaçlı olarak güvenlik konusuna değindim. Sizin açınızdan bakarsak, göz boyayıcı güvenlik sahteciliğine aldanmış biri olarak birkaç cümle yazdım.

    Biraz araştırınca da, sizin makalenize ulaştım. Şimdi size sormak istediğim soruya geleyim, bu soru amatör bir soru olacak gibi duruyor çünkü bilişim güvenliği adına hiçbir başarım yok.

    Telegram’in detay vermeden, sadece kendi MTPROTO ile şifrelenmiş metinlerinin anlaşılmasını veya yine bir detay vermeden bir hacker kurgusu ile iki kullanıcının mesaj trafiğinin izlenmesini şart koştuğunu söylemişsiniz. Olması gereken bu değil midir? Yani kastım şu, onlar bu detayları vermeden kötü niyetli insanlar veya onları taklit etme amaçlı yarışmaya katılan insanlar da bu detaylar paylaşılmadı diye anlayamıyorlarsa, bu şifre haliyle çözülemez demektir. Yani bu şekilde de güvenli diyemez miyiz?

    Umarım “olayı çooook yanlış” anlamamışımdır. :) Yazı için teşekkürler. Genel gidişatı reddedip doğrusunu savunan aykırı makaleler gayet güzel oluyor.

    • Merhaba,

      Telegram için “bir özgür yazılımdır” diyemeyiz. O aslında açık kaynak da değil. Ayrıca Telegram, güvenli iletişim için asla bir alternatif de değil. Maalesef yanlış algı yüzünden böyle bilinir hale geldi.

      Alternatifleri ise -hala sıkıntıları olsa da- piyasadeki mevcut rakiplerine göre kendilerini fazlasıyla kanıtlamış olan TextSecure, ChatSecure ve Signal gibi uygulamalardır. Eğer bir alternatif arayışında iseniz, bunları kullanmanız şu aşamada çok daha mantıklı ve güvenlidir.

      Genel olarak “bilgi güvenliği ve/veya siber güvenlik” alabildiğine teknik ve üzerinde konuşurken ihtisas gerektiren alan(lar)dır. Ayrıca bunlar çok çatı tabirlerdir. Yani aslında bunların altında derya deniz, çok dallanan uzmanlık sahaları vardır. Bu konuda fikir vermesi açısından https://www.sibergah.com/genel/bilgi-guvenligi-nedir-ve-nasil-siniflandirilir/ yazısı yararlı olabilir.

      Kriptoloji konusu ise güvenlik konusunun hem tam içinde hem de etrafında onu çevreleyebilen, ileri derecede matematik içeren bir bilim dalıdır diyebiliriz. Kriptoloji, her şeyden önce ciddi birer analiz, analitik ve matematik kabiliyetleri gerektirir. Neredeyse çoğu güvenlik uzmanının aslında sadece kullanım şekli ve araçları itibarıyla vakıf olabildiği ve detaylarını bilmediği alabildiğine derin bir konudur/daldır.

      Kriptoloji bilimi 2. Dünya ve hatta 1. Dünya savaşından bu yana daha doğru dürüst bilgisayar teknolojisi bile gelişmeden önce üzerinde çalışılan bir alan olduğu için konuyla ilgili fazlasıyla oturmuş bilimsel yaklaşımlar, altyapılar ve bu konuda bir otoriterlik mevzuu söz konusudur.

      Bir sistemde/uygulamada en baştan yeni bir kriptoloji protokolü kullandığını iddia eden birilerinin bu alan (ve ileri matematik) üzerinde çok sağlam bir deneyiminin olması beklenir. Hele ki bu alanda sınanmış ve bilinen alternatifleri kullanmıyor iddiasını güdüyorsanız, çok ama çok sağlam çalışmış olmanız beklenir! Eğer yeni bir protokol iddiasıyla ortaya çıkmışsanız, bunu tamamen açıp incelenmesine ve sorgulanmasına izin vermeniz gerekir. Hal böyleyken Telegram’ın ve ilgili protokolünün buraya kadar sıraladığım hiçbir tabire ve/veya kritire uymadığını en baştan bilmemiz gerekiyor.

      Kriptoloji, kendi içerisinde “kriptografi” (şifre yazmak, algoritma geliştirme) ve “kriptoanaliz” (şifrelemeyi çözmek, algoritmayı kırmak) olmak üzere iki farklı branşa ayrılır. Kriptolojiye bir “hacker kurgusu” ile bakamaz, bunun yerine bir kriptoanaliz bakış açısına sahip olmanız gerekir. Kriptoanaliz, kriptografiden çok daha zorlu bir konudur.

      Kriptoanaliz için önceden bilinmesi ve hazır edilmesi gereken kriterler bellidir. Yani sadece şifreli metinleri vererek al bunları çöz den(ile)mez. Kaldı ki güvensizlik sadece iki kişi arasında şifreli olarak gidip gelen metinlerin sorgulanmasında değildir. Şifrelemeyi sağlayan protokol incelenmeli, Telegram’ın altyapısı ve sunucular mesajları şifreli olarak mı tutuyor diye sorgulanmalı, kullanıcı ve sunucu arasındaki iletişim sorgulanmalı, kullanıcı ve kullanıcı arasındaki iletişim sorgulanmalı vs vs. Yani her bir noktaya ayrı ayrı bakılmak zorunda. Sadece “al sana şifreli metinler, çöz bunları” demek, 5 yaşındaki çocukların eline karıştırılmış Rubik küpü verip, sonrada “çözemediki” diye dalga geçmektir.

      Telegram’daki en temel sorunlar ise AES-IGE’nin kriptoloji camiasında güvensiz olmasından ötürü hiç kullanılmamış olmasına karşın Telegram’ın içinde kullanılması, “non-deterministic” bir yapıda olması gerekirken onun neredeyse tamamen “deterministic” (yani en amiyane tabirle örneğin şifrelemede ‘A’ harfinin hep ‘K’ harfi olarak belirlenmesi) olması, bütün mesajların Telegram sunucularında şifresiz açık metin olarak tutuluyor olması (Telegram’da bu sunuculara erişen herkes mesajları görebiliyor) vs. Sonuçta bunlar sağlanmadan asla güvenlidir diyemezsiniz.

      Peki Türkiye’de gizlilik, mahremiyet ve güvenlik kimin umrunda? Umrunda olanların da hangi derecede nereye kadar umrunda?

      • Eyüp C. Elma

        Anlıyorum. Detaylıca, profesyonelce özetlemişsiniz aslında fakat ben sizin kadar detayları göremediğim için hep standart kullanıcı gözleriyle seyretmeye devam edeceğim sanırım Telegram ve kriptoloji ilişkisini.

        Kendi blogumda da belirttiğim bir detayı size bildirmek isterim. Mahkeme kararına rağmen, verilerin şifrelenmiş olduğu için asla veremeyeceklerini belirtmişti destek ekibi. Bu mesajların, yalnızca kendi API’larını kullanan clientler tarafından decrypt edileceğini bildirmişlerdi.

        Dolayısıyla, yalnızca uygun clientler ile, 100 mesaja kadar seçim izniyle kopyalayabileceğimi, onun haricinde web servisinden giriş yapılsa dahi resimlerin data şifresi olarak trafikte ilerleyeceğini belirttiler. Buradaki başka detayları anlamadım fakat mesajlarından hatırladıklarım bunlardı.

        Bunların hepsi bir yana, eminim ki Rus istihbaratı bu servislerin yakasını bırakmayacaktır fakat gönüllülerden oluşan ordu biraz daha güven veriyor. Öte yandan, bizim hükümetimiz okumasın da Ruslar, olmadı Amerikanlar okusun düşüncesi ne kadar sağlıklı veya ne kadar hayatta tutucu olur bilmiyorum.