# Yan kanal saldırısı
Bilgisayar güvenliğinde yan kanal saldırısı bir bilgisayar sistemine gerçekleştirilirken şifreleme algoritmasının uygulanma şeklinin öğrenilmesinden ziyade uygulanan algoritmadaki zayıflıklara odaklanır (örneğin kriptanaliz ve yazılım hataları). Çoğu yan kanal saldırısı Paul Kocher'in öncülüğünü yaptığı istatistiksel metotlara dayanarak yapılmaktadır.
Zamanlama bilgisi, güç tüketimi, elektromanyetik dalgalar ve hatta duyulan ses dahil olmak üzere yan kanal saldırıları için ekstra bilgi sağlayabilir ve saldırganın lehine olmak üzerine analiz için kullanılabilir. Bazı yan kanal saldırıları ise çalışılan işletim sistemi ile ilgili teknik bilgi gerektirmekle birlikte diferansiyel güç analizi gibi yöntemler en az kara kutu saldırıları kadar etkili olabilmektedir.
Microsoft'un Indiana Üniversitesi ile yürüttüğü bir araştırmaya göre, Web 2.0 uygulamaları ve hizmet amaçlı yazılımların kullanımının artması ile birlikte web tarayıcısı ve sunucu arasındaki trafik şifreli bile olsa web uygulamalarına yan kanal saldırısı yapılma riskini arttırmıştır.
Sosyal mühendislik ve rubber-hose kriptanaliz gibi insanları aldatarak ya da zorlama yoluyla herhangi bir kripto sisteme erişim sağlamayı yan kanal saldırısı olarak düşünülmemektedir. Bilgisayar sistemlerinde yapılan saldırılar için çoğunlukla şifreleme için kullanılır, bu nedenle kriptografik anahtar ve açık metin gibi kavramları içerirler.


## Genel Bakış.
Yan kanal saldırıları birçok şekilde yapılabilir:
  - Önbellek saldırısı — Fiziksel, sanal ya da bulut kullanan sistemlerde saldırganın, hedef kurbanın yaptığı önbellek erişimlerini izleyip takip etmesi ile yapılan saldırılardır.
  - Zamanlama saldırısı — Çeşitli hesaplamalar yapılırken ne kadar zaman aldığını takip edip analiz eden saldırılar. (Örneğin, kurbanın orijinal şifresi ile saldırganın verdiği şifresinin karşılaştırılma süresi)
  - Güç analizi saldırısı — Yapılan hesaplamalarla birlikte sistemin güç tüketimini izleyen ve analiz edilir.
  - Elektromanyetik saldırı — Sistemden yayılan elektromanyetik dalgaları ve radyasyonu ölçerek yapılan saldırı çeşididir. Bu şekilde açık metin ve çeşitli farklı bilgiler elde edilebilir. Daha sonra bu ölçümler, kriptografik anahtarlarla ilgili çıkarım yapmakta güç analizi gibi tekniklerde kullanıldığı gibi ya da kriptografik olmayan yöntemlerdeki gibi kullanılabilir. Örneğin TEMPEST (Ayrıca van Eck dinlemesi ya da radyasyon ölçümü olarak tanınır).
  - Akustik kriptanaliz — Hesaplama sırasında ortaya çıkan ses ile yapılan saldırılardır. (Güç analizi ile oldukça benzer)
  - Diferansiyel kusur analizi — Kriptografik hesaplamalardaki hatalarla birlikte gizli olan bilgilerin elde edilmesi bu şekilde sağlanır.
  - Geriye dönük veri analizi — Önceden silinen verilerin bir şekilde elde edilip analiz edilmesi.
  - Yazılımsal kusur saldırıları — Oldukça ender görülen bir yan kanal saldırısı olarak, Row-hammer bellekteki ayrılan kısmının değiştirilmesi (arttırılması ya da azaltılması) ile hemen bu adresin bitişiğindeki verinin sıklıkla erişilmesi ile yapılır. (Bu şekilde bellek bütünlüğü bozulmuş olur.)
  - Optik - Şifreli ve hassas veriler yüksek çözünürlüklü kayıt imkânı olan kameralarla veya farklı aletlerle kaydedilip, ele geçirilebilir.
Tüm yan kanal saldırılarının temelinde yatan prensip, bir kripto sistemin hesaplamaları sırasında ortaya çıkan fiziksel verinin, kullanılabilir bilgi sağlamasıdır. Bu bilgiler arasında kriptografik anahtarlar, algoritmanın hesaplamalar arasındaki geçişlerinde oluşan veriler ve açık metinlerin tamamı veya bir kısmı yer alabilir. Ayrıca, "Cryptophthora" terimi, hassas verilerin ele geçirilmesi anlamına gelir ve nadiren de olsa, yan kanal saldırıları ile bu tür verilerin elde edilmesi durumunda kullanılır.


## Örnekler.
Yan kanal saldırısı, sistemin güvenliği ile ilgili olup oldukça önemli bilgilerin izlenmesiyle çalışır. Buna örnek olarak AES T-tablo işlemleri veya modüler üs alma işlemlerinin yapılırken takip edilmesi verilebilir. Saldırgan bu şekilde yaptığı saldırıda nasıl bir izleme yaptığına göre gizli anahtarı ele geçirebilir ya da anahtarla ilgili çıkarımlarda bulunabilir. Bu saldırı yapılan kriptografik işlem üzerinde herhangi bir hata ya da farklılık yaratmadığı için saldırı yapılan tarafın, bir saldırı altında olduğunu fark etmesi ihtimalini ortadan kaldırıyor.
2017 yılında popüler işlemcilerde bir takım önbellek zafiyetlerinin bulunmasıyla birlikte kötü niyetli tarafların sistemdeki belleğin içeriğini okumasını ve hatta işletim sisteminde o anda çalışan işlemlerin içeriğini de okunmasına olanak sağladı. (Meltdown ve Spectre saldırıları)
Zamanlama saldırısı, işlemcinin giriş ve çıkış verilerini ya da şifreleme algoritmasının çalıştığı bir sistemdeki bellek verilerini okuyarak gerçekleştirilir. Hatta sadece kriptografik işlemlerin ne kadar sürdüğünü gözlemleyerek bile gizli bir anahtar elde edilebilir. Bu tür saldırılarda, ölçülen zaman verilerinin istatistiksel analizi yapılır. Bu saldırının uygulanabilirliği, ağlar arasında yapılan gözlemlerle doğrulanmıştır.
Güç analizi saldırısı diğer yöntemlere göre işlemci ya da kriptografik devre ile ilgili çok daha ayrıntılı bilgi sağlayabilir. Bu tarz saldırılar kabaca basit güç analizi (SPA) ve diferansiyel güç analizi (DPA) olarak sınıflandırılabilir.
Devreden geçen akımdaki dalgalanmalar radyo dalgaları üretir, elektromanyetik sızıntıların analizinin yapılabilirliği sistemi saldırılara açık hale getirmektedir. Bu saldırılar genellikle güç analizi ile yapılan saldırılarla benzer istatistiksel yöntemler içerir.
Yan kanal saldırısına benzer saldırıların birçok tarihsel örneği vardır. Son zamanlarda ortaya çıkan ve 1943 yılına kadar uzanan kayıtları barındıran NSA belgelerine göre; Bell Telephone isim bir şirket osiloskop yardımıyla yapılan ölçümlerde şifreli haberleşmeyi sağlayan bazı faks makinelerinin gözlemlenmesiyle birlikte osiloskop sinyallerinde bu haberleşmenin deşifre edilebileceği sinyal dalgalanmaları gözlemlendi. Eski bir MI5 memuru olan Peter Wright'a göre, İngiliz Güvenlik Servisi 1960'lı yıllarda Fransız şifreleme araçlarından ortaya çıkan sızıntıları analiz ediyordu. 1980'li yıllarda ise Sovyetlerin daktiloda yazı yazarken ortaya çıkan sesi dinleme ve bu seslerden hangi tuşun basıldığını tespit etme amacı ile IBM markalı elektronik daktilolarının içerisine böcek yerleştirdiği şüphesi hakimdi.
Elektronik cihazların güç tüketimi, ısınmalarına neden olur ve bu ısınma, cihazların sıcaklığını dengelemeye yönelik sistemleri devreye sokar. Cihazın sıcaklığı, yapılan işlemin yoğunluğuna bağlı olarak artar. Sıcaklığı düşürmek için çalışan soğutma sistemleri ise, düşük seviyede de olsa akustik ("gürültü") üretir (örneğin, işlemciler için bazı durumlarda yaklaşık 10 kHz frekansında). Shamir ve arkadaşlarının yürüttüğü bazı araştırmalara göre, kripto sistemleri ve algoritmalarının işleyişi hakkındaki bilgiler bu şekilde de elde edilebileceği öne sürdü. Bu şekilde yapılan saldırılar akustik saldırı olarak tanımlanır. Ayrıca, işlemci yüzeyinde oluşan ısının kızılötesi görüntüleri yine işlemci üzerinde çalışan kod ile ilgili bilgi sağlayabilir. Bu tarz saldırılar ise "Termal Görüntüleme Saldırısı "olarak adlandırılır.
Optik yan kanal saldırısı, sabit diskin hareketlilik göstergesinden elde edilen bilginin ve transistörlerin durumları değiştikçe ortaya çıkan ışık örüntüleri ile yapılabilir.


## Alınan Önlemler.
Yan kanal saldırılarının temeli, saldırının yapılacağı sistemden yan kanaldan açığa çıkan sızıntı ile gizli verinin elde edilmesine dayandığı için alınabilecek önlemler de iki ana kategoriye ayrılmakta: Birincisi açığa çıkan sızıntının tamamen ortadan kaldırılması. İkincisi ise ortaya çıkan veri sızıntısının gizli veri ile ilişkisiz olmasını sağlayarak ya da şifreli metnin deşifre işlemi bittikten sonra geri getirilebilecek rastgele bazı dönüşümlerden geçirilmesi ile birlikte gizli verilerin arasındaki ilişkinin ortadan kaldırılması.
Bazı görüntüleme cihazları, salınan elektromanyetik dalgaları azaltmak için özel koruma panelleri kullanarak TEMPEST saldırılarına karşı duyarlılığı azaltır. Güç hattının iyileştirilmesi ve denetlenmesi, güç analizi saldırılarını oldukça zorlaştırır. Bu tür hassas önlemler, güvenlik açığı oluşturabilecek faktörleri büyük ölçüde ortadan kaldırabilir. Ancak yine de az da olsa analiz edilebilir veri sızıntıları ortaya çıkabilir. Ayrıca, alınan fiziksel önlemler, gizlice yerleştirilen dinleme cihazlarının (akustik saldırılar, işlemci güç analizi ve sıcaklık analizi için kullanılan cihazlar) etkinliğini de engelleyebilir.
Diğer bir önlem olarak oluşan sızıntıyı aynı dalga boyunda bir sinyal ile analiz edilemez hale getirilebilir. Örneğin, zamanlama saldırılarını engellemek için her işlem arasına rastgele bir gecikme eklenebilir. Modern saldırılarda saldırganlar, daha fazla veri toplayarak bu gözlemlerin ortalamalarını alsalar dahi bu tarz önlemler saldırganı oldukça yavaşlatır.
İlk kategoriye giren bir diğer önlem, donanımın tasarım aşamasında yan kanal saldırılarına karşı oluşabilecek açıkları tespit eden bir güvenlik analiz programı kullanmaktır. Zamanlama saldırıları ve önbellek saldırıları, bu tür piyasada bulunan analiz programları ile incelenebilir. Bu programlar, donanımın neden saldırıya açık olduğunu ve saldırılara karşı alınan mimari değişikliklerin ne kadar etkili olduğunu da belirleyebilir. Ancak en etkili yöntem, üretilen donanımın tüm analiz araçları kullanılarak bu tür saldırılara karşı açık vermeyecek şekilde en başından tasarlanıp üretilmesidir.
Saat döngüleri içerisinde hesaplama zamanları tespit edilebilen sistemlerde kullanılacak olan yazılımların gizli olan verilerden tamamen ayrık bir şekilde çalışmak üzere tasarımı yapılabilir, bu sayede zamanlama saldırıları imkânsız hale getirilir. Teoride bunu yapmak mümkünken, pratikte her komutun farklılaşabilecek çalışma zamanlarından ötürü yapılması oldukça zor olan bir önlemdir.
Basit güç saldırılarını zorlaştıracak, ancak diferansiyel güç analizi saldırılarına karşı etkisi sınırlı kalacak bir yöntem, programın program sayacı güvenlik modeline göre tasarlanmasıdır. Bu tür güvenli programlar, çalışma yöntemlerini gizli verilere dayandırmaz. Başka bir deyişle, koşullara bağlı dallanmalar, yalnızca açık verilere dayanır. Bu tasarım yöntemi, programı asenkron olarak tasarlamaktan daha kısıtlayıcı olsa da koşulsuz dallanma yöntemine göre daha az kısıtlayıcıdır. Neredeyse tüm işlemcilerde NOP işlemleri daha fazla güç tüketiyor olsa da sabit bir çalışma şekli, güç tüketimindeki değişimi azaltarak potansiyel bilgi sızıntılarını engelleyebilir. (Bir dallanmanın güç tüketimi, başka bir dallanmadan daha fazla olabilir.) Veriye bağlı olmayan mimarilerde tasarlanan güvenli program da zamanlama saldırılarına karşı güvenlidir.
Eşzamanlı olmayan kodlarla birlikte çalışan modern işlemcilerdeki bellek önbelleğine erişim oldukça uzun zaman almakla birlikte bu şekilde bellek önbelleğine yapılan erişimler izlenip analiz edilebilir haldedir. Bu sebeple kriptografik kodlar önbellek saldırılarına karşı belleği zaten tahmin edilebilecek şekilde örüntü oluşturarak kullanırlar. (girdi alma, program verisini çıktı olarak verme ve bunları tahmin edilebilir aralıklarda yapar.) Örneğin, eğer veriye bağımlı olan arama tabloları kullanılırsa önbelleğe yapılan erişimlerle bu tabloların nerelerine erişildiği anlaşılabilir.
Diğer bir kısmi karşı tedbir ise, veriye bağlı olarak ortaya çıkan güç değişimlerini ve dalgalanmalarını azaltmaya çalışmaktır. Bazı işlemler, gizli verideki 1 bitlerine karşılık gelen verileri kullanabilir. Sabit-ağırlık kodlama (Fredkin kapıları veya çift raylı kodlama) kullanmak, Hamming ağırlığı ile ilgili sızıntıları azaltabilir. Ancak, kullanılan yöntem mükemmel bir dengeleme sağlamadığı sürece bu açıklar tamamen kapatılamaz. Yazılımlarda "Dengeli Tasarım" için veri ve ilgili bölgeler değiştirilebilir.
Genel bir zamanlama referansları olmayan asenkron işlemciler üretilmiştir. Zamanlama ve güç saldırılarını engellemek amacıyla üretilmiş olan asenkron işlemciler, tam aksine zamanlama ve güç saldırılarına karşı devrede olan zafiyetleri daha zor düzeltilebilir hale getirmişlerdir..
İkinci kategoriye giren tekniklerden birisi de "körleştirmedir". Bu yöntemde, RSA'yı çözmek için kullanılan gizli d kuvveti ve onun eşdeğeri olan şifreleme kuvveti olan e ve kalanını hesaplarken m için kullanılıyor. (işlemi basitleştirmek için mod m formüllerde gösterilmedi) Şifreyi çözmeden önce yani verilen şifreli metin y için y^d'yi hesaplamadan önce rastgele bir r numarası seçiliyor ve e r^e elde ediliyor. Ardından şifre çözme işlemi y ·r^e üzerinde (y ·r^e)^d = y^d ·r^e·d = y^d ·r ifadesini elde etmek için yapılıyor. r sayısını sistem kendisi ürettiği için, m r y^d. Bu şekilde şifre çözme işlemi verinin rastgele bir hale getirilmiş halinde yapılıyor ve saldırganın bu durum üzerinde yapabileceği herhangi bir şey olmaması sebebiyle yan kanal saldırısına karşı önlem olarak körleştirme oldukça etkilidir.
Diğer alınabilecek önlemlerden bir tanesi maskeleme yöntemi, genel olarak tüm yan kanal saldırılarına karşı etkilidir. Bu teknikte, hassas veri olan Onun yerine açık metin parçalara ayrılarak işlenir. Bu işlem XOR işlemi ile olacak şekilde desteklenir. Böylece saldırganın anlamlı herhangi bir bilgi elde etmesi için bütün parçaları toplaması ve analiz etmesi gerekir.


## Konuyla ilgili yayınlar.
  - Kitaplar
  - Ambrose, Jude (2010). "Power Analysis Side Channel Attacks: The Processor Design-level Context". VDM Verlag. ISBN 9783836485081. https://books.google.com/books?id=n9wsQwAACAAJ.
  - Makaleler
  - Diferansiyel Güç Analizi, P. Kocher, J. Jaffe, B. Haziran, KRİPTO'99.
  - Diffie-Hellman Uygulamaları üzerinde zamanlama Saldırıları-Hellman, RSA, DSS ve Diğer Sistemler, P. Kocher.
  - Diferansiyel giriş Güç Analizi ve İlgili saldırılar, 1998, S Kocher, J Jaffe, B Haz.
  - Nist.gov bir uyarı Notu ile İlgili Değerlendirme AES Aday Akıllı Kartlar, 1999, S Chari, C Jutla, J R Rao, P Rohatgi
  - DES ve Diferansiyel Güç Analizi, L Goubin ve J Patarin, CHES'99 Bildiriler Kitabı, Ders Notları 1717 Nr, Springer-Verlag
  - Grabher, Philipp (2007). "Cryptographic Side-Channels from Low-power Cache Memory". 
  - Galbraith, Steven D.. "Cryptography and coding: 11th IMA International Conference, Cirencester, UK, December 18-20, 2007 : proceedings, Volume 11". Springer. ISBN 9783540772712. https://books.google.com/books?id=V0L2Ki72osoC&pg=PA17017+Temmuz+2017+tarihinde+Wayback+Machine+sitesinde+arşivlendi..
-