15 Haziran 2008 Pazar

GSM

Giriş
GSM Tarihçesi

GSM "Devinimli İletişim için Küresel Dizge" anlamına gelen ve bugün Dünya’da çok yaygın bir şekilde kullanılan roaming durumunda bile kesintisiz olarak hücresel haberleşme yapılmasını sağlayan standardın adıdır. GSM ilk olarak 1982’de Conference of European Posts and Telegraphs (CEPT) kuruluşunun kurduğu Groupe Spécial Mobile (GSM) adındaki bir çalışma grubu olarak faaliyetine başladı. 1989’da ise GSM sorumluluğu European Telecommunication Standards Institute (ETSI)’ye verildi ve hemen ardından 1990’da ilk GSM sepesifikasyonu yayımlandı.

GSM 2G olarak adlandırılan ikinci nesil sistemlerden biridir. 2G sistemlerde 1Gnin aksine sayısal veri akışı yapılmaya başlanmıştır. GSM haberleşmesi için şu anda 800-900 MHz bandını kullanmaktadır GSM standartlarının belirli amaçları vardı. Bu amaçlarını şu şekilde sıralayabiliriz:
– Yüksek ses iletişimi kalitesi
– Operatörün maliyetlerini düşürmek
– Roaming desteği (kesintisiz hizmet)
– Kolayca yeni servisler eklemek

Aralık 1947’de Bell Labs mühendisleri D. H. Ring ve W. Rae Young gezgin telefonlar için altıgen hücreleri önerdiler. Böylece belirli bir alanda kapsamayı artırmak ve frekansları tekrar kullanmak mümkün hale gelmiştir

.
Şekil 1


Şekil 1’de görüldüğü gibi şebeke hücrelere bölünmüştür ve her bir hücre altıgen şeklindedir. (Aslında yer yüzü şekilleri bu hücrelerin mükemmel bir altıgen olmalarını önler)
Farklı renklerdeki hücreler farklı frekansları göstermektedir. Görüldüğü gibi farklı hücreler aynı renkte olabilmektedir. Yani aynı frekansı kullanan hücreler şebekede mevcuttur. Bu özellik sayesinde frekans tekrar kullanılabilmektedir. Hücrelerin altıgen olması sayesinde ise tekrar kullanılan bu frekansları kullanan kullanıcıların iletişimlerinin karışması önlenmektedir.

Hücresel şebekelerde yüksek güçlü bir verici büyük bir alana hizmet verir. Düşük güçlü vericiler ise şekilde görünen hücrelere hizmet vermektedir. Az önce belirtildiği gibi farklı hücrelerde aynı frekans kullanılabilir. Farklı frekansları kullanan hücreler bir “küme” oluştururlar. Şekilde bir küme yedi hücreden oluşmaktadır. Tüm şebeke ise bu kümelerin tekrarlanmasından oluşur. Yani bir şebekede pek çok küme bulunmaktadır.

1.1 GSM Mimarisi

GSM şebekesinin mimarisine bakılacak olursa pek çok ara yüz ve teknik terimle karşılaşılır. GSM mimarisi Şekil 2’de gösterilmiştir.

Şekil 2


Um MS (mobil istasyon) ile BTS (Baz İstasyonu) arasındaki “hava” ara yüzüdür. Bu ara yüzün amacı şebekeden aboneye hücre ve paket anahtarlamalı veri akışını radyo haberleşmesi vasıtasıyla sağlamaktır. Abis ara yüzü BTS (Baz İstasyonu) ile BSC (Baz İstasyonu Denetçisi) arasındaki ara yüzdür.BTS ve BSC Abis ara yüzü üzerinden haberleşirler. A ara yüzü ise BSCler ile MSC (Mobil Anahtarlama Merkezi) arasındaki haberleşmeyi sağlar. GSM şebekesinin işlevlerini yerine getirmesini sağlayan ve bu ara yüzler üzerinden haberleşen pek çok donanım bulunmaktadır. Bu donanımlar ve işlevleri şu şekildedir:
Ø BTS (Base Tranceiver Station): Hücrenin alıcı-vericilerini içerir. Sistem bileşenleri arasındaki iletişimi sağlar. GSM için radyo hattı protokolleri BTS ile mobil cihaz arasında çalışır. GSM ara yüzünde TDMA radyo protokolleri kullanılır.
Ø BSC (Base Station Controller): Radyo kaynaklarının yönetimi ile görevlidir. Ayrıca MSC (Mobile Switching Center) ile mobil cihaz arasındaki ara yüzdür.
Ø MSC – Mobile Switching Center (Anahtarlama Merkezi): Sistemin merkezi kısmıdır. Anahtarlamanın yanında mobil abonenin tüm ihtiyaçlarını karşılar: kayıt olma, asıllama, handover, çağrı yönlendirme, sabit telefon hattına (PSTN) bağlanma v.s. Ayrıca bir çok hücreden sorumludur.

Bu donanımların yanında GSM şebekelerinde abonelere ilişkin pek çok detayların tutulduğu veritabanları bulunmaktadır. Bu veritabanları ve işlevleri ise şu şekildedir:

Ø HLR – tüm kullanıcıların bilgilerini ve konumlarını saklar (şebeke başına bir tane)
Ø VLR – Roaming halindeki kullanıcıların geçici profilllerini saklar
Ø Cihazlarla ilgili bilgileri tutar (siyah, gri ve beyaz listeler - IMEIler)
Ø AuC – Kullanıcıların gizli anahtarlarını saklar

GSM şebekelerinin abone sayısı her geçen gün artmaktadır ve şu anda 1.5 milyar civarında abonesi bulunmaktadır. Bu denli çok tercih edilen bir sistemin güvenlik probleminin de ne kadar ciddi bir boyutta olduğu aşikardır. GSM’de güvenlik probleminin birden çok boyutu vardır. Operatör açısından bakılacak olursa, bir operatör şebekesini kullanan abonenin asıllanmasını ister. Böylece o anda hangi abone şebeke kaynaklarını kullanmaktadır sorusunun cevabını elde etmiş olur. Bu bilgi ücretlendirme ve gizlilik açısından önemlidir. Ayrıca bir operatör kullanıcılarının hizmetlere erişimlerini denetlemelidir. Bu tarz yetkilendirmeler için erişim denetleme listeleri (ACL-Access Control List) kullanılmaktadır. Böylece aboneler yetkilerini aşamamaktadır. Probleme bir de abone açısından bakılabilir. Bir abone mutlaka iletişiminin gizli tutulmasını ve başkaları tarafından ele geçirilmemesini ister. Ayrıca ne zaman, nasıl ve ne kadar süreyle şebekeyi kullandığının da operatör dışında kimse tarafından bilinmemesini ister.(Anonimlik) GSM’de operatör ve abonenin memnun olmasını sağlamak için bu problemlerin etkin bir şekilde çözülmesi gerekmektedir. Burada “etkin” kelimesinden kasıt, gerçeklenecek çözümlerin uygulanabilir olmasıdır. Yani şebekenin kalitesini düşürecek ve ya maliyetini yükseltecek güvenlik çözümleri aboneler açısından uygulanabilir çözümler olarak kabul edilemezler.


1. GSM Şebekelerinde Güvenlik
2.1 GSM’de Güvenliğin Özellikleri

GSM şebekelerinde güvenliğin belirli özellikleri bulunmaktadır. Bu özellikleri şu şekilde özetleyebiliriz:

Ø Anahtar yönetimi cihazdan (mobil telefon) bağımsızdır. Böylece aboneler
Mobil telefonlarını diledikleri gibi değiştirebileceklerdir.
Ø Abonenin kimliği korunmalıdır. Havadaki veriyi pasif olarak dinleyerek kullanıcının
kimliği saptanamamaktadır.
Ø Şüpheli cihazların saptanabilmektedir. EIR’deki siyah, beyaz ve gri listelerin amacı
şüpheli ve şüpheli olmayan cihazların ayırt edilmesini sağlamaktır.
Ø Abonenin asıllanması sağlanmaktadır.
Ø Şebekedeki işaretler ve abonenin verisi korunmaktadır.


GSM şebekelerinde güvenliğin sağlanması aşamalarında SIM kartın da büyük rolü olmaktadır. SIM kart abonenin tanımlayıcılarını, anahtarları ve algoritmaları taşıyan akıllı karttır. SIMde bulunan tanımlayıcılar şu şekildedir:

– Ki – Abonenin Asıllanması Sırasında Kullanılan Anahtarı
– IMSI – International Mobile Subscriber Identity
– TMSI – Temporary Mobile Subscriber Identity
– MSISDN – Mobile Station International Service Digital Network
– PIN – Personal Identity Number
– LAI – Location area identity

Bu tanımlayıcılardan TMSI’nin rolü önemlidir. TMSI asıllama prosedürlerinden sonra geçici olarak aboneye atanır.Ve her bir konum güncellemesinde (yeni MSC) aboneye tekrar yeni bir TMSI atanır. TMSI IMSI yerine kullanılır ve anonimliği sağlar. Ayrıca yerine geçmeyi engeller. Örneğin eğer hep IMSI kullanılsaydı SIMi kopyalanan bir abonenin yerine kolayca geçilebilinirdi. TMSI MS ile şebekenin birbirleri ile haberleşmeleri sırasında kullanılmaktadır.

2.2 GSM’de Asılama ve Şifreleme

GSM şebekelerinde asılama sırasında pek çok şebeke elemanı devreye girer. Daha önce bahsedilen veritabanları asılama aşamasında kullanılacak verileri de tutmaktadır. Bunlardan AuC (Authentication Center) asılama ve şifreleme algoritmaları için gerekli verileri sağlar. (RAND, SRES, Kc) HLR (Home Location Register) ise MSC’ye (RAND, SRES, Kc) üçlüsünü sağlar. VLR (Visitor Location Register) ise abone ev alanında değilken HLR’ın görevini üstlenir ve MSC’ye (RAND, SRES, Kc) üçlüsünü sağlar

Asılama sırasında kullanılan algoritma A3 algoritmasıdır. Bu algoritmanın amacı MSC tarafından aboneye gönderilen bir rasgele sayı olan RAND sayısının kullanılarak imzalı bir yanıt (SRES – signed response) oluşturmaktır. Algoritmanın blok diyagramı Şekil 3te görülmektedir.
Şekil 3
Şekilden de görüldüğü gibi algoritmaya giriş parametreleri olarak SIM kartta bulunan 128 bitlik Ki gizli anahtarı ile MSCden aboneye gönderilen yine 128 bitlik RAND rasgele sayısı verilmektedir ve çıkışta 32 bitlik bir imzalı yanıt elde edilmektedir. Bu yanıt tekrar MSC’ye yollanmaktadır. MSC de kullanıcıdaki Ki gizli anahtarını AuC veritabanından alır ve Ki ile RAND ı A3 algoritmasına parametre olarak vererek bir SRES değeri elde eder. Ve ardından aboneden gelen SRES değeri ile kendi elde ettiği SRES değerini karşılaştırır. Eğer bu iki değer eşit ise kullanıcı asılanmış olur. Fakat eşit değil ise bir güvenlik probleminin mevcut olduğu anlaşılır.

GSM’de güvenliği sağlanması için A3 algoritmasından sonra A8 algoritması devreye girer. Bu algoritma ses güvenliği için bir Kc oturum anahtarı üretme algoritmasıdır. Kc anahtarı GSM spesifikasyonunda “confidentiality key” yani gizlilik anahtarı olarak geçmektedir ve bu nedenle Kc ile gösterilmektedir. Bu algoritmanın giriş parametreleri A3 ile aynıdır. Yani 128 bitlik RAND rasgele sayısı ile Ki gizli anahtarını alır ve çıkış olarak 64 bitlik bir Kc oturum anahtarı üretir. Burada ilginç olan nokta Kc nin son 10 bitinin 0 olması yani aslında anahtarın 54 bit olmasıdır. Şekil 4te A8 algoritmasının blok diyagramı görünmektedir.

Şekil 4

A8 algoritması ile Kc oturum anahtarı elde edildikten sonra artık şebeke ile abone haberleşmeye hazırdır. Haberleşmede gizliliği sağlayan algoritma A5 şifrele algoritmasıdır. A5 şifreleyicisi bir akış şifreleyicisidir. Bu algoritma donanımla gerçeklendiğinde çok iyi performans göstermektedir. A5 GSM spesifikasyonu ile halka yayımlanmamıştır fakat sonraları tersine mühendislik ile algoritmanın detayları öğrenilmiştir. A5 algoritması SIM kartta gerçeklenmiştir ve bu algoritmanın bazı çeşitleri bulunmaktadır:

Ø A5/0 – şifreleme yok
Ø A5/1 – daha güvenli
Ø A5/2 – az güvenli
Ø A5/3 – 3G şebekelerde kullanılması planlanıyor

A5 algoritmasının blok diyagramı Şekil 5 ile verilmiştir.


Şekil 5

Şekilden de görüleceği gibi A5 algoritması hem abone tarafında hem de BTS’te gerçeklenmektedir. Algoritma giriş parametresi olarak A8 tarafından üretilmiş olan 64bitlik Kc oturum anahtarını ve 22 bitlik Fn çerçeve numarasını almaktadır. Çıkışında ise 114 bitlik bir anahtar akışı (“key stream”) üretmektedir. Bu anahtar akışı ve açık metin (abonenin ses verisi) XOR kapısından geçirilerek 114 bitlik şifreli metin elde edilir. BTS ise aynı parametreleri A5 algoritmasına uygular ve aynı anahtar akışını elde eder. Bu anahtar akışını ve şifreli metini XOR kapısından geçirerek açık metini elde eder.

Tüm algoritmaları gözden geçirdikten sonra bütün bu adımları içeren Şekil 6 GSM’de güvenliğin nasıl sağlandığını güzel bir şekilde özetlemektedir.


Şekil 6


GSM güvenliğin adımlarını özetleyecek olursak:

Ø İlk olarak A3 algoritması ile abone kendini şebekeye asıllar. Bu algoritma Ki gizli anahtarını ve şebeke tarafından gönderilen RAND rasgele sayısını kullanarak bir SRES imzalı yanıtını oluşturur. Şebeke de aynı adımlardan geçerek bir SRES yanıtı oluşturur ve aboneden gelen SRES ile karşılaştırarak aboneyi asıllar.
Ø A3ün ardından A8 anahtar üretme algoritması devreye girer ve RAND rasgele sayısı ile Ki gizli anahtarını parametre alarak Kc oturum anahtarını üretir.
Ø A8 algoritmasının ardından haberleşme esnasında A5 algoritması devreye girer. A5 bir akış şifreleme algoritmasıdır ve A8in ürettiği Kc oturum anahtarını kullanarak abonenin verisini şifreleyerek baz istasyonuna yollar.


3.GSM Şebekelerine Karşı Gerçekleştirilen Saldırılar

GSM şebekelerinde güvenliğin sağlanması için geliştirilen algoritmalar (A3, A5 ve A8) başlangıçta gizli tutulmuştur. Halbuki bu durum Kerkchoff’un prensiplerine ters düşmektedir. Kerckhoff’a göre algoritmalar gizli tutulmamalıdır ve sistemin güvenliği algoritmaların ve anahtarların gücünde olmalıdır. Sonraları bu algoritmaların nasıl çalıştıklarının detayları tersine mühendislik çalışmaları sonucunda öğrenilmiştir ve sisteme yönelik pek çok saldırılar önerilmiştir.Bu saldırılardan en önemlileri şunlardır:

– Golic, 1997 (A5/1)
– Goldberg+Wagner, 1998 (COMP128)
– Goldberg+Wagner+Briceno, 1999 (A5/2)
– Biryukov+Shamir+Wagner, 2000 (A5/1)
– Biham +Dunkelman, 2000 (A5/1)
– Ekdahl+Johansson, 2002 (A5/1)
– Barkan+Biham+Keller, 2003 (A5/2)+

Bu saldırılar sonucunda algoritmaların temelini oluşturan bir öz alma fonksiyonu olan COMP128 algoritması ile A5/2 tamamen kırılmıştır ve A5/1’in zayıf olduğu ispatlanmıştır.

GSM şebekelerinde asıllama esnasında belirtildiği gibi sadece abone şebekeye asıllanmaktadır. Burada ciddi bir eksiklik vardır. Şebeke aboneye asıllanmamaktadır. Bu da saldırganlara baz istasyonun yerine geçilebileceği fikrini vermektedir. Böylelikle GSM şebekelerine karşı ortadaki adam saldırısı mümkün hale gelmektedir. GSM şebekelerinde ortadaki adam saldırısını gerçekleştiren sahta baz istasyonu şebekenin iki açığından yararlanır:
– MS-BS arası her zaman şifreleme yoktur (A5/0)
– Sadece abone asıllanır, BS asıllanmaz.

Şekil 7de ortadaki adam saldırısı görülmektedir. Sahte baz istasyonu gerçek baz istasyonu ile abonenin arasına girer ve aboneye karşı baz istasyonu, baz istasyonuna karşı abone gibi davranır. Böylece ikisi ile de geçerli birer oturum açar ve tüm haberleşmeyi izleyebilir.
Şekil 7


GSM şebekelerine karşı gerçekleştirilebilecek bir diğer saldırı da tekrarlama saldırısıdır. Yine bir kötü niyetli baz istasyonu (RAND,SRES,Kc) üçlüsünü saklar ve bir süre sonra abone ile oturum açma işlemlerini gerçekleştirirse geçerli bir Kc üreterek geçerli bir oturum açabilir. GSM güvenlik alt yapısında tekrarlama saldırılarına karşı herhangi bir korunma bulunmamaktadır. Bir rastgele sayı ve ya zaman damgası ile oturumların taze (fresh) olduğu anlaşılarak bu problem ortadan kaldırılabilir.

GSM şebekelerine karşı düzenlenebilecek diğer bir saldırı türü ise SIM saldırılarıdır. SIM saldırıları ile Ki gizli anahtarı kolaylıkla ele geçirilebilmektedir. Fakat bu saldırılar için SIM kartı ele geçirilmelidir. Nisan 1998’de gerçekleştirilen bir saldırı ile COMP128 algoritmasının Ki gizli anahtarını sızdırdığı ortaya çıkarılmıştır. Bunun için ortalama 50.000 tane RAND rasgele sayısı kullanılmıştır. SIMe yapılabilecek diğer saldırılar ise güç tüketimi analizi ve zamanlama saldırılarıdır.

Diğer bir saldırı da “GSM Klonlama” olarak bilinen bir saldırıdır. Bu saldırı fikri David Wagner ve Ian Goldberg tarafından ortaya atılmıştır. Saldırı bir seçilmiş rasgele sayı saldırısıdır. (“chosen challange attack”) Trafik analizi ile belirli kurallar çerçevesinde seçilen RAND rasgele sayıları SIM kartına uygulanır. SIM kart ise bu RAND sayısını Ki gizli anahtarı ile birlikte COMP128 algoritmasının gerçeklendiği A3 algoritmasına uygular ve SRES imzalı yanıtını geri döner. Araştırmacılar bu SRES imzalı yanıtlarını analiz ederek 8 saat gibi bir sürede Ki anahtarının elde edilebileceğini göstermişlerdir.

Son olarak GSM şebekelerine karşı gerçekleştirebilecek saldırılardan biri de hizmeti engelleme (“denial of service” ve ya kısaca DOS) saldırılarıdır. GSM şebekelerine radyo kaynakları BSCye (Baz istasyonu denetçisi) yapılan istekler sonucu elde edilerek kullanılmaktadır. Radyo kaynağı istek ve cevabı süreci Şekil 8de görülmektedir:


Şekil 8



Görüldüğü gibi ilk olarak mobil istasyon baz istasyonuna bir kanal isteğinde bulunmuştur. Bunun üzerine baz istasyonu benzer bir kanal isteğini baz istasyonu denetçisine göndermiştir. BSC ise kullanılabilir olan kanallardan birini baz istasyonuna atamıştır ve baz istasyonu bu atamayı mobil istasyona bildirmiştir.Buradaki temel problem baz istasyonunun herhangi bir asıllama yapmadan kanal isteğini direkt olarak BSCye yönlendirmesi ve BSCnin de herhangi bir asıllama yapmadan bu kanalı baz istasyonuna ve sonuçta mobil istasyona atamasıdır. Değerli bir kaynak olan radyo kanalları herhangi bir asıllama yapılmaksızın isteyen her şahsa verilmektedir. Bu da DOS saldırılarını mümkün hale getirmektedir. Kötü niyetli bir mobil istasyon sürekli kanal isteğinde bulunarak kulnılabilir haldeki radyo kanallarını tüketerek iyi niyetli kullanıcıların kanal isteklerinin karşılanamamasına neden olabilirler. Bunun için Valer Bocan ve Vladimir Creiu “Threats and Countermeasures in GSM Networks” adlı makalelerinde bir çözüm önermektedir. Çözüm Şekil 9 da görünmektedir:

Şekil 9

Önerilen çözümde baz istasyonu kanal isteğinden hemen önce bir önasıllama gerçekleştirerek isteği yapan mobil istasyonu asıllar. Eğer istasyon asıllanamazsa kanal isteği geri çevirilir. Asıllama başarılı ise kanal isteği BSCye iletilir ve kullanılabilir kanal varsa isteği karşılanır. Bu önasıllama sırasında 128 bitlik tek kullanımlık bir rasgele sayı kullanılır.

Sonuç olarak GSM şebekelerine pek çok saldırı önerilmiştir. Algoritmaların gizli tutulmasının sistemin güvenliğini artırmayacağı bir kez daha ortaya çıkmıştır. Abone sayısının her geçen gün artması GSM şebekelerinde güvenlik problemlerinin önemini günden güne artırmaktadır. Bu nedenle uzmanlar bu konu üzerinde daha fazla araştırma yapmakta ve çözümler üretmektedir.













4.Kaynaklar

§ Threats and Countermeasures in GSM Networks ,Valer BOCAN & Vladimir CRElU
§ Principles And Applications Of GSM Vijay Garg & Joseph Wilkes
§ http://www.gsm-security.net/faq/gsm-authentication-key-generation.shtml
§ http://en.wikipedia.org/wiki/Global_System_for_Mobile_Communications
§ http://www.cs.berkeley.edu/~daw/talks/SAC02.ppt (about cell phone security)
§ GSM and UMTS Security - Peter Howard, Vodafone Group R&D
§ http://www.cs.iastate.edu/~cs610jw/class-1.ppt
§ Overview of the GSM system and protocol architecture Moe Rahnema,IEEE Communication magazine, pp 92-100, April 1993
§ http://www.nada.kth.se/kurser/kth/2D1449/04-05/kth_crypto_2004.ppt
§ GSM protocol architecture: radio subsystem signaling M. Mouly, M. B. Pautet, Proceedings of the IEEE, vol. 86, Issue 7, July 1998


Giriş
GSM Tarihçesi

GSM "Devinimli İletişim için Küresel Dizge" anlamına gelen ve bugün Dünya’da çok yaygın bir şekilde kullanılan roaming durumunda bile kesintisiz olarak hücresel haberleşme yapılmasını sağlayan standardın adıdır. GSM ilk olarak 1982’de Conference of European Posts and Telegraphs (CEPT) kuruluşunun kurduğu Groupe Spécial Mobile (GSM) adındaki bir çalışma grubu olarak faaliyetine başladı. 1989’da ise GSM sorumluluğu European Telecommunication Standards Institute (ETSI)’ye verildi ve hemen ardından 1990’da ilk GSM sepesifikasyonu yayımlandı.

GSM 2G olarak adlandırılan ikinci nesil sistemlerden biridir. 2G sistemlerde 1Gnin aksine sayısal veri akışı yapılmaya başlanmıştır. GSM haberleşmesi için şu anda 800-900 MHz bandını kullanmaktadır GSM standartlarının belirli amaçları vardı. Bu amaçlarını şu şekilde sıralayabiliriz:
– Yüksek ses iletişimi kalitesi
– Operatörün maliyetlerini düşürmek
– Roaming desteği (kesintisiz hizmet)
– Kolayca yeni servisler eklemek

Aralık 1947’de Bell Labs mühendisleri D. H. Ring ve W. Rae Young gezgin telefonlar için altıgen hücreleri önerdiler. Böylece belirli bir alanda kapsamayı artırmak ve frekansları tekrar kullanmak mümkün hale gelmiştir

.
Şekil 1


Şekil 1’de görüldüğü gibi şebeke hücrelere bölünmüştür ve her bir hücre altıgen şeklindedir. (Aslında yer yüzü şekilleri bu hücrelerin mükemmel bir altıgen olmalarını önler)
Farklı renklerdeki hücreler farklı frekansları göstermektedir. Görüldüğü gibi farklı hücreler aynı renkte olabilmektedir. Yani aynı frekansı kullanan hücreler şebekede mevcuttur. Bu özellik sayesinde frekans tekrar kullanılabilmektedir. Hücrelerin altıgen olması sayesinde ise tekrar kullanılan bu frekansları kullanan kullanıcıların iletişimlerinin karışması önlenmektedir.

Hücresel şebekelerde yüksek güçlü bir verici büyük bir alana hizmet verir. Düşük güçlü vericiler ise şekilde görünen hücrelere hizmet vermektedir. Az önce belirtildiği gibi farklı hücrelerde aynı frekans kullanılabilir. Farklı frekansları kullanan hücreler bir “küme” oluştururlar. Şekilde bir küme yedi hücreden oluşmaktadır. Tüm şebeke ise bu kümelerin tekrarlanmasından oluşur. Yani bir şebekede pek çok küme bulunmaktadır.

1.1 GSM Mimarisi

GSM şebekesinin mimarisine bakılacak olursa pek çok ara yüz ve teknik terimle karşılaşılır. GSM mimarisi Şekil 2’de gösterilmiştir.

Şekil 2


Um MS (mobil istasyon) ile BTS (Baz İstasyonu) arasındaki “hava” ara yüzüdür. Bu ara yüzün amacı şebekeden aboneye hücre ve paket anahtarlamalı veri akışını radyo haberleşmesi vasıtasıyla sağlamaktır. Abis ara yüzü BTS (Baz İstasyonu) ile BSC (Baz İstasyonu Denetçisi) arasındaki ara yüzdür.BTS ve BSC Abis ara yüzü üzerinden haberleşirler. A ara yüzü ise BSCler ile MSC (Mobil Anahtarlama Merkezi) arasındaki haberleşmeyi sağlar. GSM şebekesinin işlevlerini yerine getirmesini sağlayan ve bu ara yüzler üzerinden haberleşen pek çok donanım bulunmaktadır. Bu donanımlar ve işlevleri şu şekildedir:
Ø BTS (Base Tranceiver Station): Hücrenin alıcı-vericilerini içerir. Sistem bileşenleri arasındaki iletişimi sağlar. GSM için radyo hattı protokolleri BTS ile mobil cihaz arasında çalışır. GSM ara yüzünde TDMA radyo protokolleri kullanılır.
Ø BSC (Base Station Controller): Radyo kaynaklarının yönetimi ile görevlidir. Ayrıca MSC (Mobile Switching Center) ile mobil cihaz arasındaki ara yüzdür.
Ø MSC – Mobile Switching Center (Anahtarlama Merkezi): Sistemin merkezi kısmıdır. Anahtarlamanın yanında mobil abonenin tüm ihtiyaçlarını karşılar: kayıt olma, asıllama, handover, çağrı yönlendirme, sabit telefon hattına (PSTN) bağlanma v.s. Ayrıca bir çok hücreden sorumludur.

Bu donanımların yanında GSM şebekelerinde abonelere ilişkin pek çok detayların tutulduğu veritabanları bulunmaktadır. Bu veritabanları ve işlevleri ise şu şekildedir:

Ø HLR – tüm kullanıcıların bilgilerini ve konumlarını saklar (şebeke başına bir tane)
Ø VLR – Roaming halindeki kullanıcıların geçici profilllerini saklar
Ø Cihazlarla ilgili bilgileri tutar (siyah, gri ve beyaz listeler - IMEIler)
Ø AuC – Kullanıcıların gizli anahtarlarını saklar

GSM şebekelerinin abone sayısı her geçen gün artmaktadır ve şu anda 1.5 milyar civarında abonesi bulunmaktadır. Bu denli çok tercih edilen bir sistemin güvenlik probleminin de ne kadar ciddi bir boyutta olduğu aşikardır. GSM’de güvenlik probleminin birden çok boyutu vardır. Operatör açısından bakılacak olursa, bir operatör şebekesini kullanan abonenin asıllanmasını ister. Böylece o anda hangi abone şebeke kaynaklarını kullanmaktadır sorusunun cevabını elde etmiş olur. Bu bilgi ücretlendirme ve gizlilik açısından önemlidir. Ayrıca bir operatör kullanıcılarının hizmetlere erişimlerini denetlemelidir. Bu tarz yetkilendirmeler için erişim denetleme listeleri (ACL-Access Control List) kullanılmaktadır. Böylece aboneler yetkilerini aşamamaktadır. Probleme bir de abone açısından bakılabilir. Bir abone mutlaka iletişiminin gizli tutulmasını ve başkaları tarafından ele geçirilmemesini ister. Ayrıca ne zaman, nasıl ve ne kadar süreyle şebekeyi kullandığının da operatör dışında kimse tarafından bilinmemesini ister.(Anonimlik) GSM’de operatör ve abonenin memnun olmasını sağlamak için bu problemlerin etkin bir şekilde çözülmesi gerekmektedir. Burada “etkin” kelimesinden kasıt, gerçeklenecek çözümlerin uygulanabilir olmasıdır. Yani şebekenin kalitesini düşürecek ve ya maliyetini yükseltecek güvenlik çözümleri aboneler açısından uygulanabilir çözümler olarak kabul edilemezler.


1. GSM Şebekelerinde Güvenlik
2.1 GSM’de Güvenliğin Özellikleri

GSM şebekelerinde güvenliğin belirli özellikleri bulunmaktadır. Bu özellikleri şu şekilde özetleyebiliriz:

Ø Anahtar yönetimi cihazdan (mobil telefon) bağımsızdır. Böylece aboneler
Mobil telefonlarını diledikleri gibi değiştirebileceklerdir.
Ø Abonenin kimliği korunmalıdır. Havadaki veriyi pasif olarak dinleyerek kullanıcının
kimliği saptanamamaktadır.
Ø Şüpheli cihazların saptanabilmektedir. EIR’deki siyah, beyaz ve gri listelerin amacı
şüpheli ve şüpheli olmayan cihazların ayırt edilmesini sağlamaktır.
Ø Abonenin asıllanması sağlanmaktadır.
Ø Şebekedeki işaretler ve abonenin verisi korunmaktadır.


GSM şebekelerinde güvenliğin sağlanması aşamalarında SIM kartın da büyük rolü olmaktadır. SIM kart abonenin tanımlayıcılarını, anahtarları ve algoritmaları taşıyan akıllı karttır. SIMde bulunan tanımlayıcılar şu şekildedir:

– Ki – Abonenin Asıllanması Sırasında Kullanılan Anahtarı
– IMSI – International Mobile Subscriber Identity
– TMSI – Temporary Mobile Subscriber Identity
– MSISDN – Mobile Station International Service Digital Network
– PIN – Personal Identity Number
– LAI – Location area identity

Bu tanımlayıcılardan TMSI’nin rolü önemlidir. TMSI asıllama prosedürlerinden sonra geçici olarak aboneye atanır.Ve her bir konum güncellemesinde (yeni MSC) aboneye tekrar yeni bir TMSI atanır. TMSI IMSI yerine kullanılır ve anonimliği sağlar. Ayrıca yerine geçmeyi engeller. Örneğin eğer hep IMSI kullanılsaydı SIMi kopyalanan bir abonenin yerine kolayca geçilebilinirdi. TMSI MS ile şebekenin birbirleri ile haberleşmeleri sırasında kullanılmaktadır.

2.2 GSM’de Asılama ve Şifreleme

GSM şebekelerinde asılama sırasında pek çok şebeke elemanı devreye girer. Daha önce bahsedilen veritabanları asılama aşamasında kullanılacak verileri de tutmaktadır. Bunlardan AuC (Authentication Center) asılama ve şifreleme algoritmaları için gerekli verileri sağlar. (RAND, SRES, Kc) HLR (Home Location Register) ise MSC’ye (RAND, SRES, Kc) üçlüsünü sağlar. VLR (Visitor Location Register) ise abone ev alanında değilken HLR’ın görevini üstlenir ve MSC’ye (RAND, SRES, Kc) üçlüsünü sağlar

Asılama sırasında kullanılan algoritma A3 algoritmasıdır. Bu algoritmanın amacı MSC tarafından aboneye gönderilen bir rasgele sayı olan RAND sayısının kullanılarak imzalı bir yanıt (SRES – signed response) oluşturmaktır. Algoritmanın blok diyagramı Şekil 3te görülmektedir.
Şekil 3
Şekilden de görüldüğü gibi algoritmaya giriş parametreleri olarak SIM kartta bulunan 128 bitlik Ki gizli anahtarı ile MSCden aboneye gönderilen yine 128 bitlik RAND rasgele sayısı verilmektedir ve çıkışta 32 bitlik bir imzalı yanıt elde edilmektedir. Bu yanıt tekrar MSC’ye yollanmaktadır. MSC de kullanıcıdaki Ki gizli anahtarını AuC veritabanından alır ve Ki ile RAND ı A3 algoritmasına parametre olarak vererek bir SRES değeri elde eder. Ve ardından aboneden gelen SRES değeri ile kendi elde ettiği SRES değerini karşılaştırır. Eğer bu iki değer eşit ise kullanıcı asılanmış olur. Fakat eşit değil ise bir güvenlik probleminin mevcut olduğu anlaşılır.

GSM’de güvenliği sağlanması için A3 algoritmasından sonra A8 algoritması devreye girer. Bu algoritma ses güvenliği için bir Kc oturum anahtarı üretme algoritmasıdır. Kc anahtarı GSM spesifikasyonunda “confidentiality key” yani gizlilik anahtarı olarak geçmektedir ve bu nedenle Kc ile gösterilmektedir. Bu algoritmanın giriş parametreleri A3 ile aynıdır. Yani 128 bitlik RAND rasgele sayısı ile Ki gizli anahtarını alır ve çıkış olarak 64 bitlik bir Kc oturum anahtarı üretir. Burada ilginç olan nokta Kc nin son 10 bitinin 0 olması yani aslında anahtarın 54 bit olmasıdır. Şekil 4te A8 algoritmasının blok diyagramı görünmektedir.

Şekil 4

A8 algoritması ile Kc oturum anahtarı elde edildikten sonra artık şebeke ile abone haberleşmeye hazırdır. Haberleşmede gizliliği sağlayan algoritma A5 şifrele algoritmasıdır. A5 şifreleyicisi bir akış şifreleyicisidir. Bu algoritma donanımla gerçeklendiğinde çok iyi performans göstermektedir. A5 GSM spesifikasyonu ile halka yayımlanmamıştır fakat sonraları tersine mühendislik ile algoritmanın detayları öğrenilmiştir. A5 algoritması SIM kartta gerçeklenmiştir ve bu algoritmanın bazı çeşitleri bulunmaktadır:

Ø A5/0 – şifreleme yok
Ø A5/1 – daha güvenli
Ø A5/2 – az güvenli
Ø A5/3 – 3G şebekelerde kullanılması planlanıyor

A5 algoritmasının blok diyagramı Şekil 5 ile verilmiştir.


Şekil 5

Şekilden de görüleceği gibi A5 algoritması hem abone tarafında hem de BTS’te gerçeklenmektedir. Algoritma giriş parametresi olarak A8 tarafından üretilmiş olan 64bitlik Kc oturum anahtarını ve 22 bitlik Fn çerçeve numarasını almaktadır. Çıkışında ise 114 bitlik bir anahtar akışı (“key stream”) üretmektedir. Bu anahtar akışı ve açık metin (abonenin ses verisi) XOR kapısından geçirilerek 114 bitlik şifreli metin elde edilir. BTS ise aynı parametreleri A5 algoritmasına uygular ve aynı anahtar akışını elde eder. Bu anahtar akışını ve şifreli metini XOR kapısından geçirerek açık metini elde eder.

Tüm algoritmaları gözden geçirdikten sonra bütün bu adımları içeren Şekil 6 GSM’de güvenliğin nasıl sağlandığını güzel bir şekilde özetlemektedir.


Şekil 6


GSM güvenliğin adımlarını özetleyecek olursak:

Ø İlk olarak A3 algoritması ile abone kendini şebekeye asıllar. Bu algoritma Ki gizli anahtarını ve şebeke tarafından gönderilen RAND rasgele sayısını kullanarak bir SRES imzalı yanıtını oluşturur. Şebeke de aynı adımlardan geçerek bir SRES yanıtı oluşturur ve aboneden gelen SRES ile karşılaştırarak aboneyi asıllar.
Ø A3ün ardından A8 anahtar üretme algoritması devreye girer ve RAND rasgele sayısı ile Ki gizli anahtarını parametre alarak Kc oturum anahtarını üretir.
Ø A8 algoritmasının ardından haberleşme esnasında A5 algoritması devreye girer. A5 bir akış şifreleme algoritmasıdır ve A8in ürettiği Kc oturum anahtarını kullanarak abonenin verisini şifreleyerek baz istasyonuna yollar.


3.GSM Şebekelerine Karşı Gerçekleştirilen Saldırılar

GSM şebekelerinde güvenliğin sağlanması için geliştirilen algoritmalar (A3, A5 ve A8) başlangıçta gizli tutulmuştur. Halbuki bu durum Kerkchoff’un prensiplerine ters düşmektedir. Kerckhoff’a göre algoritmalar gizli tutulmamalıdır ve sistemin güvenliği algoritmaların ve anahtarların gücünde olmalıdır. Sonraları bu algoritmaların nasıl çalıştıklarının detayları tersine mühendislik çalışmaları sonucunda öğrenilmiştir ve sisteme yönelik pek çok saldırılar önerilmiştir.Bu saldırılardan en önemlileri şunlardır:

– Golic, 1997 (A5/1)
– Goldberg+Wagner, 1998 (COMP128)
– Goldberg+Wagner+Briceno, 1999 (A5/2)
– Biryukov+Shamir+Wagner, 2000 (A5/1)
– Biham +Dunkelman, 2000 (A5/1)
– Ekdahl+Johansson, 2002 (A5/1)
– Barkan+Biham+Keller, 2003 (A5/2)+

Bu saldırılar sonucunda algoritmaların temelini oluşturan bir öz alma fonksiyonu olan COMP128 algoritması ile A5/2 tamamen kırılmıştır ve A5/1’in zayıf olduğu ispatlanmıştır.

GSM şebekelerinde asıllama esnasında belirtildiği gibi sadece abone şebekeye asıllanmaktadır. Burada ciddi bir eksiklik vardır. Şebeke aboneye asıllanmamaktadır. Bu da saldırganlara baz istasyonun yerine geçilebileceği fikrini vermektedir. Böylelikle GSM şebekelerine karşı ortadaki adam saldırısı mümkün hale gelmektedir. GSM şebekelerinde ortadaki adam saldırısını gerçekleştiren sahta baz istasyonu şebekenin iki açığından yararlanır:
– MS-BS arası her zaman şifreleme yoktur (A5/0)
– Sadece abone asıllanır, BS asıllanmaz.

Şekil 7de ortadaki adam saldırısı görülmektedir. Sahte baz istasyonu gerçek baz istasyonu ile abonenin arasına girer ve aboneye karşı baz istasyonu, baz istasyonuna karşı abone gibi davranır. Böylece ikisi ile de geçerli birer oturum açar ve tüm haberleşmeyi izleyebilir.
Şekil 7


GSM şebekelerine karşı gerçekleştirilebilecek bir diğer saldırı da tekrarlama saldırısıdır. Yine bir kötü niyetli baz istasyonu (RAND,SRES,Kc) üçlüsünü saklar ve bir süre sonra abone ile oturum açma işlemlerini gerçekleştirirse geçerli bir Kc üreterek geçerli bir oturum açabilir. GSM güvenlik alt yapısında tekrarlama saldırılarına karşı herhangi bir korunma bulunmamaktadır. Bir rastgele sayı ve ya zaman damgası ile oturumların taze (fresh) olduğu anlaşılarak bu problem ortadan kaldırılabilir.

GSM şebekelerine karşı düzenlenebilecek diğer bir saldırı türü ise SIM saldırılarıdır. SIM saldırıları ile Ki gizli anahtarı kolaylıkla ele geçirilebilmektedir. Fakat bu saldırılar için SIM kartı ele geçirilmelidir. Nisan 1998’de gerçekleştirilen bir saldırı ile COMP128 algoritmasının Ki gizli anahtarını sızdırdığı ortaya çıkarılmıştır. Bunun için ortalama 50.000 tane RAND rasgele sayısı kullanılmıştır. SIMe yapılabilecek diğer saldırılar ise güç tüketimi analizi ve zamanlama saldırılarıdır.

Diğer bir saldırı da “GSM Klonlama” olarak bilinen bir saldırıdır. Bu saldırı fikri David Wagner ve Ian Goldberg tarafından ortaya atılmıştır. Saldırı bir seçilmiş rasgele sayı saldırısıdır. (“chosen challange attack”) Trafik analizi ile belirli kurallar çerçevesinde seçilen RAND rasgele sayıları SIM kartına uygulanır. SIM kart ise bu RAND sayısını Ki gizli anahtarı ile birlikte COMP128 algoritmasının gerçeklendiği A3 algoritmasına uygular ve SRES imzalı yanıtını geri döner. Araştırmacılar bu SRES imzalı yanıtlarını analiz ederek 8 saat gibi bir sürede Ki anahtarının elde edilebileceğini göstermişlerdir.

Son olarak GSM şebekelerine karşı gerçekleştirebilecek saldırılardan biri de hizmeti engelleme (“denial of service” ve ya kısaca DOS) saldırılarıdır. GSM şebekelerine radyo kaynakları BSCye (Baz istasyonu denetçisi) yapılan istekler sonucu elde edilerek kullanılmaktadır. Radyo kaynağı istek ve cevabı süreci Şekil 8de görülmektedir:


Şekil 8



Görüldüğü gibi ilk olarak mobil istasyon baz istasyonuna bir kanal isteğinde bulunmuştur. Bunun üzerine baz istasyonu benzer bir kanal isteğini baz istasyonu denetçisine göndermiştir. BSC ise kullanılabilir olan kanallardan birini baz istasyonuna atamıştır ve baz istasyonu bu atamayı mobil istasyona bildirmiştir.Buradaki temel problem baz istasyonunun herhangi bir asıllama yapmadan kanal isteğini direkt olarak BSCye yönlendirmesi ve BSCnin de herhangi bir asıllama yapmadan bu kanalı baz istasyonuna ve sonuçta mobil istasyona atamasıdır. Değerli bir kaynak olan radyo kanalları herhangi bir asıllama yapılmaksızın isteyen her şahsa verilmektedir. Bu da DOS saldırılarını mümkün hale getirmektedir. Kötü niyetli bir mobil istasyon sürekli kanal isteğinde bulunarak kulnılabilir haldeki radyo kanallarını tüketerek iyi niyetli kullanıcıların kanal isteklerinin karşılanamamasına neden olabilirler. Bunun için Valer Bocan ve Vladimir Creiu “Threats and Countermeasures in GSM Networks” adlı makalelerinde bir çözüm önermektedir. Çözüm Şekil 9 da görünmektedir:

Şekil 9

Önerilen çözümde baz istasyonu kanal isteğinden hemen önce bir önasıllama gerçekleştirerek isteği yapan mobil istasyonu asıllar. Eğer istasyon asıllanamazsa kanal isteği geri çevirilir. Asıllama başarılı ise kanal isteği BSCye iletilir ve kullanılabilir kanal varsa isteği karşılanır. Bu önasıllama sırasında 128 bitlik tek kullanımlık bir rasgele sayı kullanılır.

Sonuç olarak GSM şebekelerine pek çok saldırı önerilmiştir. Algoritmaların gizli tutulmasının sistemin güvenliğini artırmayacağı bir kez daha ortaya çıkmıştır. Abone sayısının her geçen gün artması GSM şebekelerinde güvenlik problemlerinin önemini günden güne artırmaktadır. Bu nedenle uzmanlar bu konu üzerinde daha fazla araştırma yapmakta ve çözümler üretmektedir.













4.Kaynaklar

§ Threats and Countermeasures in GSM Networks ,Valer BOCAN & Vladimir CRElU
§ Principles And Applications Of GSM Vijay Garg & Joseph Wilkes
§ http://www.gsm-security.net/faq/gsm-authentication-key-generation.shtml
§ http://en.wikipedia.org/wiki/Global_System_for_Mobile_Communications
§ http://www.cs.berkeley.edu/~daw/talks/SAC02.ppt (about cell phone security)
§ GSM and UMTS Security - Peter Howard, Vodafone Group R&D
§ http://www.cs.iastate.edu/~cs610jw/class-1.ppt
§ Overview of the GSM system and protocol architecture Moe Rahnema,IEEE Communication magazine, pp 92-100, April 1993
§ http://www.nada.kth.se/kurser/kth/2D1449/04-05/kth_crypto_2004.ppt
§ GSM protocol architecture: radio subsystem signaling M. Mouly, M. B. Pautet, Proceedings of the IEEE, vol. 86, Issue 7, July 1998


Giriş
GSM Tarihçesi

GSM "Devinimli İletişim için Küresel Dizge" anlamına gelen ve bugün Dünya’da çok yaygın bir şekilde kullanılan roaming durumunda bile kesintisiz olarak hücresel haberleşme yapılmasını sağlayan standardın adıdır. GSM ilk olarak 1982’de Conference of European Posts and Telegraphs (CEPT) kuruluşunun kurduğu Groupe Spécial Mobile (GSM) adındaki bir çalışma grubu olarak faaliyetine başladı. 1989’da ise GSM sorumluluğu European Telecommunication Standards Institute (ETSI)’ye verildi ve hemen ardından 1990’da ilk GSM sepesifikasyonu yayımlandı.

GSM 2G olarak adlandırılan ikinci nesil sistemlerden biridir. 2G sistemlerde 1Gnin aksine sayısal veri akışı yapılmaya başlanmıştır. GSM haberleşmesi için şu anda 800-900 MHz bandını kullanmaktadır GSM standartlarının belirli amaçları vardı. Bu amaçlarını şu şekilde sıralayabiliriz:
– Yüksek ses iletişimi kalitesi
– Operatörün maliyetlerini düşürmek
– Roaming desteği (kesintisiz hizmet)
– Kolayca yeni servisler eklemek

Aralık 1947’de Bell Labs mühendisleri D. H. Ring ve W. Rae Young gezgin telefonlar için altıgen hücreleri önerdiler. Böylece belirli bir alanda kapsamayı artırmak ve frekansları tekrar kullanmak mümkün hale gelmiştir

.
Şekil 1


Şekil 1’de görüldüğü gibi şebeke hücrelere bölünmüştür ve her bir hücre altıgen şeklindedir. (Aslında yer yüzü şekilleri bu hücrelerin mükemmel bir altıgen olmalarını önler)
Farklı renklerdeki hücreler farklı frekansları göstermektedir. Görüldüğü gibi farklı hücreler aynı renkte olabilmektedir. Yani aynı frekansı kullanan hücreler şebekede mevcuttur. Bu özellik sayesinde frekans tekrar kullanılabilmektedir. Hücrelerin altıgen olması sayesinde ise tekrar kullanılan bu frekansları kullanan kullanıcıların iletişimlerinin karışması önlenmektedir.

Hücresel şebekelerde yüksek güçlü bir verici büyük bir alana hizmet verir. Düşük güçlü vericiler ise şekilde görünen hücrelere hizmet vermektedir. Az önce belirtildiği gibi farklı hücrelerde aynı frekans kullanılabilir. Farklı frekansları kullanan hücreler bir “küme” oluştururlar. Şekilde bir küme yedi hücreden oluşmaktadır. Tüm şebeke ise bu kümelerin tekrarlanmasından oluşur. Yani bir şebekede pek çok küme bulunmaktadır.

1.1 GSM Mimarisi

GSM şebekesinin mimarisine bakılacak olursa pek çok ara yüz ve teknik terimle karşılaşılır. GSM mimarisi Şekil 2’de gösterilmiştir.

Şekil 2


Um MS (mobil istasyon) ile BTS (Baz İstasyonu) arasındaki “hava” ara yüzüdür. Bu ara yüzün amacı şebekeden aboneye hücre ve paket anahtarlamalı veri akışını radyo haberleşmesi vasıtasıyla sağlamaktır. Abis ara yüzü BTS (Baz İstasyonu) ile BSC (Baz İstasyonu Denetçisi) arasındaki ara yüzdür.BTS ve BSC Abis ara yüzü üzerinden haberleşirler. A ara yüzü ise BSCler ile MSC (Mobil Anahtarlama Merkezi) arasındaki haberleşmeyi sağlar. GSM şebekesinin işlevlerini yerine getirmesini sağlayan ve bu ara yüzler üzerinden haberleşen pek çok donanım bulunmaktadır. Bu donanımlar ve işlevleri şu şekildedir:
Ø BTS (Base Tranceiver Station): Hücrenin alıcı-vericilerini içerir. Sistem bileşenleri arasındaki iletişimi sağlar. GSM için radyo hattı protokolleri BTS ile mobil cihaz arasında çalışır. GSM ara yüzünde TDMA radyo protokolleri kullanılır.
Ø BSC (Base Station Controller): Radyo kaynaklarının yönetimi ile görevlidir. Ayrıca MSC (Mobile Switching Center) ile mobil cihaz arasındaki ara yüzdür.
Ø MSC – Mobile Switching Center (Anahtarlama Merkezi): Sistemin merkezi kısmıdır. Anahtarlamanın yanında mobil abonenin tüm ihtiyaçlarını karşılar: kayıt olma, asıllama, handover, çağrı yönlendirme, sabit telefon hattına (PSTN) bağlanma v.s. Ayrıca bir çok hücreden sorumludur.

Bu donanımların yanında GSM şebekelerinde abonelere ilişkin pek çok detayların tutulduğu veritabanları bulunmaktadır. Bu veritabanları ve işlevleri ise şu şekildedir:

Ø HLR – tüm kullanıcıların bilgilerini ve konumlarını saklar (şebeke başına bir tane)
Ø VLR – Roaming halindeki kullanıcıların geçici profilllerini saklar
Ø Cihazlarla ilgili bilgileri tutar (siyah, gri ve beyaz listeler - IMEIler)
Ø AuC – Kullanıcıların gizli anahtarlarını saklar

GSM şebekelerinin abone sayısı her geçen gün artmaktadır ve şu anda 1.5 milyar civarında abonesi bulunmaktadır. Bu denli çok tercih edilen bir sistemin güvenlik probleminin de ne kadar ciddi bir boyutta olduğu aşikardır. GSM’de güvenlik probleminin birden çok boyutu vardır. Operatör açısından bakılacak olursa, bir operatör şebekesini kullanan abonenin asıllanmasını ister. Böylece o anda hangi abone şebeke kaynaklarını kullanmaktadır sorusunun cevabını elde etmiş olur. Bu bilgi ücretlendirme ve gizlilik açısından önemlidir. Ayrıca bir operatör kullanıcılarının hizmetlere erişimlerini denetlemelidir. Bu tarz yetkilendirmeler için erişim denetleme listeleri (ACL-Access Control List) kullanılmaktadır. Böylece aboneler yetkilerini aşamamaktadır. Probleme bir de abone açısından bakılabilir. Bir abone mutlaka iletişiminin gizli tutulmasını ve başkaları tarafından ele geçirilmemesini ister. Ayrıca ne zaman, nasıl ve ne kadar süreyle şebekeyi kullandığının da operatör dışında kimse tarafından bilinmemesini ister.(Anonimlik) GSM’de operatör ve abonenin memnun olmasını sağlamak için bu problemlerin etkin bir şekilde çözülmesi gerekmektedir. Burada “etkin” kelimesinden kasıt, gerçeklenecek çözümlerin uygulanabilir olmasıdır. Yani şebekenin kalitesini düşürecek ve ya maliyetini yükseltecek güvenlik çözümleri aboneler açısından uygulanabilir çözümler olarak kabul edilemezler.


1. GSM Şebekelerinde Güvenlik
2.1 GSM’de Güvenliğin Özellikleri

GSM şebekelerinde güvenliğin belirli özellikleri bulunmaktadır. Bu özellikleri şu şekilde özetleyebiliriz:

Ø Anahtar yönetimi cihazdan (mobil telefon) bağımsızdır. Böylece aboneler
Mobil telefonlarını diledikleri gibi değiştirebileceklerdir.
Ø Abonenin kimliği korunmalıdır. Havadaki veriyi pasif olarak dinleyerek kullanıcının
kimliği saptanamamaktadır.
Ø Şüpheli cihazların saptanabilmektedir. EIR’deki siyah, beyaz ve gri listelerin amacı
şüpheli ve şüpheli olmayan cihazların ayırt edilmesini sağlamaktır.
Ø Abonenin asıllanması sağlanmaktadır.
Ø Şebekedeki işaretler ve abonenin verisi korunmaktadır.


GSM şebekelerinde güvenliğin sağlanması aşamalarında SIM kartın da büyük rolü olmaktadır. SIM kart abonenin tanımlayıcılarını, anahtarları ve algoritmaları taşıyan akıllı karttır. SIMde bulunan tanımlayıcılar şu şekildedir:

– Ki – Abonenin Asıllanması Sırasında Kullanılan Anahtarı
– IMSI – International Mobile Subscriber Identity
– TMSI – Temporary Mobile Subscriber Identity
– MSISDN – Mobile Station International Service Digital Network
– PIN – Personal Identity Number
– LAI – Location area identity

Bu tanımlayıcılardan TMSI’nin rolü önemlidir. TMSI asıllama prosedürlerinden sonra geçici olarak aboneye atanır.Ve her bir konum güncellemesinde (yeni MSC) aboneye tekrar yeni bir TMSI atanır. TMSI IMSI yerine kullanılır ve anonimliği sağlar. Ayrıca yerine geçmeyi engeller. Örneğin eğer hep IMSI kullanılsaydı SIMi kopyalanan bir abonenin yerine kolayca geçilebilinirdi. TMSI MS ile şebekenin birbirleri ile haberleşmeleri sırasında kullanılmaktadır.

2.2 GSM’de Asılama ve Şifreleme

GSM şebekelerinde asılama sırasında pek çok şebeke elemanı devreye girer. Daha önce bahsedilen veritabanları asılama aşamasında kullanılacak verileri de tutmaktadır. Bunlardan AuC (Authentication Center) asılama ve şifreleme algoritmaları için gerekli verileri sağlar. (RAND, SRES, Kc) HLR (Home Location Register) ise MSC’ye (RAND, SRES, Kc) üçlüsünü sağlar. VLR (Visitor Location Register) ise abone ev alanında değilken HLR’ın görevini üstlenir ve MSC’ye (RAND, SRES, Kc) üçlüsünü sağlar

Asılama sırasında kullanılan algoritma A3 algoritmasıdır. Bu algoritmanın amacı MSC tarafından aboneye gönderilen bir rasgele sayı olan RAND sayısının kullanılarak imzalı bir yanıt (SRES – signed response) oluşturmaktır. Algoritmanın blok diyagramı Şekil 3te görülmektedir.
Şekil 3
Şekilden de görüldüğü gibi algoritmaya giriş parametreleri olarak SIM kartta bulunan 128 bitlik Ki gizli anahtarı ile MSCden aboneye gönderilen yine 128 bitlik RAND rasgele sayısı verilmektedir ve çıkışta 32 bitlik bir imzalı yanıt elde edilmektedir. Bu yanıt tekrar MSC’ye yollanmaktadır. MSC de kullanıcıdaki Ki gizli anahtarını AuC veritabanından alır ve Ki ile RAND ı A3 algoritmasına parametre olarak vererek bir SRES değeri elde eder. Ve ardından aboneden gelen SRES değeri ile kendi elde ettiği SRES değerini karşılaştırır. Eğer bu iki değer eşit ise kullanıcı asılanmış olur. Fakat eşit değil ise bir güvenlik probleminin mevcut olduğu anlaşılır.

GSM’de güvenliği sağlanması için A3 algoritmasından sonra A8 algoritması devreye girer. Bu algoritma ses güvenliği için bir Kc oturum anahtarı üretme algoritmasıdır. Kc anahtarı GSM spesifikasyonunda “confidentiality key” yani gizlilik anahtarı olarak geçmektedir ve bu nedenle Kc ile gösterilmektedir. Bu algoritmanın giriş parametreleri A3 ile aynıdır. Yani 128 bitlik RAND rasgele sayısı ile Ki gizli anahtarını alır ve çıkış olarak 64 bitlik bir Kc oturum anahtarı üretir. Burada ilginç olan nokta Kc nin son 10 bitinin 0 olması yani aslında anahtarın 54 bit olmasıdır. Şekil 4te A8 algoritmasının blok diyagramı görünmektedir.

Şekil 4

A8 algoritması ile Kc oturum anahtarı elde edildikten sonra artık şebeke ile abone haberleşmeye hazırdır. Haberleşmede gizliliği sağlayan algoritma A5 şifrele algoritmasıdır. A5 şifreleyicisi bir akış şifreleyicisidir. Bu algoritma donanımla gerçeklendiğinde çok iyi performans göstermektedir. A5 GSM spesifikasyonu ile halka yayımlanmamıştır fakat sonraları tersine mühendislik ile algoritmanın detayları öğrenilmiştir. A5 algoritması SIM kartta gerçeklenmiştir ve bu algoritmanın bazı çeşitleri bulunmaktadır:

Ø A5/0 – şifreleme yok
Ø A5/1 – daha güvenli
Ø A5/2 – az güvenli
Ø A5/3 – 3G şebekelerde kullanılması planlanıyor

A5 algoritmasının blok diyagramı Şekil 5 ile verilmiştir.


Şekil 5

Şekilden de görüleceği gibi A5 algoritması hem abone tarafında hem de BTS’te gerçeklenmektedir. Algoritma giriş parametresi olarak A8 tarafından üretilmiş olan 64bitlik Kc oturum anahtarını ve 22 bitlik Fn çerçeve numarasını almaktadır. Çıkışında ise 114 bitlik bir anahtar akışı (“key stream”) üretmektedir. Bu anahtar akışı ve açık metin (abonenin ses verisi) XOR kapısından geçirilerek 114 bitlik şifreli metin elde edilir. BTS ise aynı parametreleri A5 algoritmasına uygular ve aynı anahtar akışını elde eder. Bu anahtar akışını ve şifreli metini XOR kapısından geçirerek açık metini elde eder.

Tüm algoritmaları gözden geçirdikten sonra bütün bu adımları içeren Şekil 6 GSM’de güvenliğin nasıl sağlandığını güzel bir şekilde özetlemektedir.


Şekil 6


GSM güvenliğin adımlarını özetleyecek olursak:

Ø İlk olarak A3 algoritması ile abone kendini şebekeye asıllar. Bu algoritma Ki gizli anahtarını ve şebeke tarafından gönderilen RAND rasgele sayısını kullanarak bir SRES imzalı yanıtını oluşturur. Şebeke de aynı adımlardan geçerek bir SRES yanıtı oluşturur ve aboneden gelen SRES ile karşılaştırarak aboneyi asıllar.
Ø A3ün ardından A8 anahtar üretme algoritması devreye girer ve RAND rasgele sayısı ile Ki gizli anahtarını parametre alarak Kc oturum anahtarını üretir.
Ø A8 algoritmasının ardından haberleşme esnasında A5 algoritması devreye girer. A5 bir akış şifreleme algoritmasıdır ve A8in ürettiği Kc oturum anahtarını kullanarak abonenin verisini şifreleyerek baz istasyonuna yollar.


3.GSM Şebekelerine Karşı Gerçekleştirilen Saldırılar

GSM şebekelerinde güvenliğin sağlanması için geliştirilen algoritmalar (A3, A5 ve A8) başlangıçta gizli tutulmuştur. Halbuki bu durum Kerkchoff’un prensiplerine ters düşmektedir. Kerckhoff’a göre algoritmalar gizli tutulmamalıdır ve sistemin güvenliği algoritmaların ve anahtarların gücünde olmalıdır. Sonraları bu algoritmaların nasıl çalıştıklarının detayları tersine mühendislik çalışmaları sonucunda öğrenilmiştir ve sisteme yönelik pek çok saldırılar önerilmiştir.Bu saldırılardan en önemlileri şunlardır:

– Golic, 1997 (A5/1)
– Goldberg+Wagner, 1998 (COMP128)
– Goldberg+Wagner+Briceno, 1999 (A5/2)
– Biryukov+Shamir+Wagner, 2000 (A5/1)
– Biham +Dunkelman, 2000 (A5/1)
– Ekdahl+Johansson, 2002 (A5/1)
– Barkan+Biham+Keller, 2003 (A5/2)+

Bu saldırılar sonucunda algoritmaların temelini oluşturan bir öz alma fonksiyonu olan COMP128 algoritması ile A5/2 tamamen kırılmıştır ve A5/1’in zayıf olduğu ispatlanmıştır.

GSM şebekelerinde asıllama esnasında belirtildiği gibi sadece abone şebekeye asıllanmaktadır. Burada ciddi bir eksiklik vardır. Şebeke aboneye asıllanmamaktadır. Bu da saldırganlara baz istasyonun yerine geçilebileceği fikrini vermektedir. Böylelikle GSM şebekelerine karşı ortadaki adam saldırısı mümkün hale gelmektedir. GSM şebekelerinde ortadaki adam saldırısını gerçekleştiren sahta baz istasyonu şebekenin iki açığından yararlanır:
– MS-BS arası her zaman şifreleme yoktur (A5/0)
– Sadece abone asıllanır, BS asıllanmaz.

Şekil 7de ortadaki adam saldırısı görülmektedir. Sahte baz istasyonu gerçek baz istasyonu ile abonenin arasına girer ve aboneye karşı baz istasyonu, baz istasyonuna karşı abone gibi davranır. Böylece ikisi ile de geçerli birer oturum açar ve tüm haberleşmeyi izleyebilir.
Şekil 7


GSM şebekelerine karşı gerçekleştirilebilecek bir diğer saldırı da tekrarlama saldırısıdır. Yine bir kötü niyetli baz istasyonu (RAND,SRES,Kc) üçlüsünü saklar ve bir süre sonra abone ile oturum açma işlemlerini gerçekleştirirse geçerli bir Kc üreterek geçerli bir oturum açabilir. GSM güvenlik alt yapısında tekrarlama saldırılarına karşı herhangi bir korunma bulunmamaktadır. Bir rastgele sayı ve ya zaman damgası ile oturumların taze (fresh) olduğu anlaşılarak bu problem ortadan kaldırılabilir.

GSM şebekelerine karşı düzenlenebilecek diğer bir saldırı türü ise SIM saldırılarıdır. SIM saldırıları ile Ki gizli anahtarı kolaylıkla ele geçirilebilmektedir. Fakat bu saldırılar için SIM kartı ele geçirilmelidir. Nisan 1998’de gerçekleştirilen bir saldırı ile COMP128 algoritmasının Ki gizli anahtarını sızdırdığı ortaya çıkarılmıştır. Bunun için ortalama 50.000 tane RAND rasgele sayısı kullanılmıştır. SIMe yapılabilecek diğer saldırılar ise güç tüketimi analizi ve zamanlama saldırılarıdır.

Diğer bir saldırı da “GSM Klonlama” olarak bilinen bir saldırıdır. Bu saldırı fikri David Wagner ve Ian Goldberg tarafından ortaya atılmıştır. Saldırı bir seçilmiş rasgele sayı saldırısıdır. (“chosen challange attack”) Trafik analizi ile belirli kurallar çerçevesinde seçilen RAND rasgele sayıları SIM kartına uygulanır. SIM kart ise bu RAND sayısını Ki gizli anahtarı ile birlikte COMP128 algoritmasının gerçeklendiği A3 algoritmasına uygular ve SRES imzalı yanıtını geri döner. Araştırmacılar bu SRES imzalı yanıtlarını analiz ederek 8 saat gibi bir sürede Ki anahtarının elde edilebileceğini göstermişlerdir.

Son olarak GSM şebekelerine karşı gerçekleştirebilecek saldırılardan biri de hizmeti engelleme (“denial of service” ve ya kısaca DOS) saldırılarıdır. GSM şebekelerine radyo kaynakları BSCye (Baz istasyonu denetçisi) yapılan istekler sonucu elde edilerek kullanılmaktadır. Radyo kaynağı istek ve cevabı süreci Şekil 8de görülmektedir:


Şekil 8



Görüldüğü gibi ilk olarak mobil istasyon baz istasyonuna bir kanal isteğinde bulunmuştur. Bunun üzerine baz istasyonu benzer bir kanal isteğini baz istasyonu denetçisine göndermiştir. BSC ise kullanılabilir olan kanallardan birini baz istasyonuna atamıştır ve baz istasyonu bu atamayı mobil istasyona bildirmiştir.Buradaki temel problem baz istasyonunun herhangi bir asıllama yapmadan kanal isteğini direkt olarak BSCye yönlendirmesi ve BSCnin de herhangi bir asıllama yapmadan bu kanalı baz istasyonuna ve sonuçta mobil istasyona atamasıdır. Değerli bir kaynak olan radyo kanalları herhangi bir asıllama yapılmaksızın isteyen her şahsa verilmektedir. Bu da DOS saldırılarını mümkün hale getirmektedir. Kötü niyetli bir mobil istasyon sürekli kanal isteğinde bulunarak kulnılabilir haldeki radyo kanallarını tüketerek iyi niyetli kullanıcıların kanal isteklerinin karşılanamamasına neden olabilirler. Bunun için Valer Bocan ve Vladimir Creiu “Threats and Countermeasures in GSM Networks” adlı makalelerinde bir çözüm önermektedir. Çözüm Şekil 9 da görünmektedir:

Şekil 9

Önerilen çözümde baz istasyonu kanal isteğinden hemen önce bir önasıllama gerçekleştirerek isteği yapan mobil istasyonu asıllar. Eğer istasyon asıllanamazsa kanal isteği geri çevirilir. Asıllama başarılı ise kanal isteği BSCye iletilir ve kullanılabilir kanal varsa isteği karşılanır. Bu önasıllama sırasında 128 bitlik tek kullanımlık bir rasgele sayı kullanılır.

Sonuç olarak GSM şebekelerine pek çok saldırı önerilmiştir. Algoritmaların gizli tutulmasının sistemin güvenliğini artırmayacağı bir kez daha ortaya çıkmıştır. Abone sayısının her geçen gün artması GSM şebekelerinde güvenlik problemlerinin önemini günden güne artırmaktadır. Bu nedenle uzmanlar bu konu üzerinde daha fazla araştırma yapmakta ve çözümler üretmektedir.













4.Kaynaklar

§ Threats and Countermeasures in GSM Networks ,Valer BOCAN & Vladimir CRElU
§ Principles And Applications Of GSM Vijay Garg & Joseph Wilkes
§ http://www.gsm-security.net/faq/gsm-authentication-key-generation.shtml
§ http://en.wikipedia.org/wiki/Global_System_for_Mobile_Communications
§ http://www.cs.berkeley.edu/~daw/talks/SAC02.ppt (about cell phone security)
§ GSM and UMTS Security - Peter Howard, Vodafone Group R&D
§ http://www.cs.iastate.edu/~cs610jw/class-1.ppt
§ Overview of the GSM system and protocol architecture Moe Rahnema,IEEE Communication magazine, pp 92-100, April 1993
§ http://www.nada.kth.se/kurser/kth/2D1449/04-05/kth_crypto_2004.ppt
§ GSM protocol architecture: radio subsystem signaling M. Mouly, M. B. Pautet, Proceedings of the IEEE, vol. 86, Issue 7, July 1998


Giriş
GSM Tarihçesi

GSM "Devinimli İletişim için Küresel Dizge" anlamına gelen ve bugün Dünya’da çok yaygın bir şekilde kullanılan roaming durumunda bile kesintisiz olarak hücresel haberleşme yapılmasını sağlayan standardın adıdır. GSM ilk olarak 1982’de Conference of European Posts and Telegraphs (CEPT) kuruluşunun kurduğu Groupe Spécial Mobile (GSM) adındaki bir çalışma grubu olarak faaliyetine başladı. 1989’da ise GSM sorumluluğu European Telecommunication Standards Institute (ETSI)’ye verildi ve hemen ardından 1990’da ilk GSM sepesifikasyonu yayımlandı.

GSM 2G olarak adlandırılan ikinci nesil sistemlerden biridir. 2G sistemlerde 1Gnin aksine sayısal veri akışı yapılmaya başlanmıştır. GSM haberleşmesi için şu anda 800-900 MHz bandını kullanmaktadır GSM standartlarının belirli amaçları vardı. Bu amaçlarını şu şekilde sıralayabiliriz:
– Yüksek ses iletişimi kalitesi
– Operatörün maliyetlerini düşürmek
– Roaming desteği (kesintisiz hizmet)
– Kolayca yeni servisler eklemek

Aralık 1947’de Bell Labs mühendisleri D. H. Ring ve W. Rae Young gezgin telefonlar için altıgen hücreleri önerdiler. Böylece belirli bir alanda kapsamayı artırmak ve frekansları tekrar kullanmak mümkün hale gelmiştir

.
Şekil 1


Şekil 1’de görüldüğü gibi şebeke hücrelere bölünmüştür ve her bir hücre altıgen şeklindedir. (Aslında yer yüzü şekilleri bu hücrelerin mükemmel bir altıgen olmalarını önler)
Farklı renklerdeki hücreler farklı frekansları göstermektedir. Görüldüğü gibi farklı hücreler aynı renkte olabilmektedir. Yani aynı frekansı kullanan hücreler şebekede mevcuttur. Bu özellik sayesinde frekans tekrar kullanılabilmektedir. Hücrelerin altıgen olması sayesinde ise tekrar kullanılan bu frekansları kullanan kullanıcıların iletişimlerinin karışması önlenmektedir.

Hücresel şebekelerde yüksek güçlü bir verici büyük bir alana hizmet verir. Düşük güçlü vericiler ise şekilde görünen hücrelere hizmet vermektedir. Az önce belirtildiği gibi farklı hücrelerde aynı frekans kullanılabilir. Farklı frekansları kullanan hücreler bir “küme” oluştururlar. Şekilde bir küme yedi hücreden oluşmaktadır. Tüm şebeke ise bu kümelerin tekrarlanmasından oluşur. Yani bir şebekede pek çok küme bulunmaktadır.

1.1 GSM Mimarisi

GSM şebekesinin mimarisine bakılacak olursa pek çok ara yüz ve teknik terimle karşılaşılır. GSM mimarisi Şekil 2’de gösterilmiştir.

Şekil 2


Um MS (mobil istasyon) ile BTS (Baz İstasyonu) arasındaki “hava” ara yüzüdür. Bu ara yüzün amacı şebekeden aboneye hücre ve paket anahtarlamalı veri akışını radyo haberleşmesi vasıtasıyla sağlamaktır. Abis ara yüzü BTS (Baz İstasyonu) ile BSC (Baz İstasyonu Denetçisi) arasındaki ara yüzdür.BTS ve BSC Abis ara yüzü üzerinden haberleşirler. A ara yüzü ise BSCler ile MSC (Mobil Anahtarlama Merkezi) arasındaki haberleşmeyi sağlar. GSM şebekesinin işlevlerini yerine getirmesini sağlayan ve bu ara yüzler üzerinden haberleşen pek çok donanım bulunmaktadır. Bu donanımlar ve işlevleri şu şekildedir:
Ø BTS (Base Tranceiver Station): Hücrenin alıcı-vericilerini içerir. Sistem bileşenleri arasındaki iletişimi sağlar. GSM için radyo hattı protokolleri BTS ile mobil cihaz arasında çalışır. GSM ara yüzünde TDMA radyo protokolleri kullanılır.
Ø BSC (Base Station Controller): Radyo kaynaklarının yönetimi ile görevlidir. Ayrıca MSC (Mobile Switching Center) ile mobil cihaz arasındaki ara yüzdür.
Ø MSC – Mobile Switching Center (Anahtarlama Merkezi): Sistemin merkezi kısmıdır. Anahtarlamanın yanında mobil abonenin tüm ihtiyaçlarını karşılar: kayıt olma, asıllama, handover, çağrı yönlendirme, sabit telefon hattına (PSTN) bağlanma v.s. Ayrıca bir çok hücreden sorumludur.

Bu donanımların yanında GSM şebekelerinde abonelere ilişkin pek çok detayların tutulduğu veritabanları bulunmaktadır. Bu veritabanları ve işlevleri ise şu şekildedir:

Ø HLR – tüm kullanıcıların bilgilerini ve konumlarını saklar (şebeke başına bir tane)
Ø VLR – Roaming halindeki kullanıcıların geçici profilllerini saklar
Ø Cihazlarla ilgili bilgileri tutar (siyah, gri ve beyaz listeler - IMEIler)
Ø AuC – Kullanıcıların gizli anahtarlarını saklar

GSM şebekelerinin abone sayısı her geçen gün artmaktadır ve şu anda 1.5 milyar civarında abonesi bulunmaktadır. Bu denli çok tercih edilen bir sistemin güvenlik probleminin de ne kadar ciddi bir boyutta olduğu aşikardır. GSM’de güvenlik probleminin birden çok boyutu vardır. Operatör açısından bakılacak olursa, bir operatör şebekesini kullanan abonenin asıllanmasını ister. Böylece o anda hangi abone şebeke kaynaklarını kullanmaktadır sorusunun cevabını elde etmiş olur. Bu bilgi ücretlendirme ve gizlilik açısından önemlidir. Ayrıca bir operatör kullanıcılarının hizmetlere erişimlerini denetlemelidir. Bu tarz yetkilendirmeler için erişim denetleme listeleri (ACL-Access Control List) kullanılmaktadır. Böylece aboneler yetkilerini aşamamaktadır. Probleme bir de abone açısından bakılabilir. Bir abone mutlaka iletişiminin gizli tutulmasını ve başkaları tarafından ele geçirilmemesini ister. Ayrıca ne zaman, nasıl ve ne kadar süreyle şebekeyi kullandığının da operatör dışında kimse tarafından bilinmemesini ister.(Anonimlik) GSM’de operatör ve abonenin memnun olmasını sağlamak için bu problemlerin etkin bir şekilde çözülmesi gerekmektedir. Burada “etkin” kelimesinden kasıt, gerçeklenecek çözümlerin uygulanabilir olmasıdır. Yani şebekenin kalitesini düşürecek ve ya maliyetini yükseltecek güvenlik çözümleri aboneler açısından uygulanabilir çözümler olarak kabul edilemezler.


1. GSM Şebekelerinde Güvenlik
2.1 GSM’de Güvenliğin Özellikleri

GSM şebekelerinde güvenliğin belirli özellikleri bulunmaktadır. Bu özellikleri şu şekilde özetleyebiliriz:

Ø Anahtar yönetimi cihazdan (mobil telefon) bağımsızdır. Böylece aboneler
Mobil telefonlarını diledikleri gibi değiştirebileceklerdir.
Ø Abonenin kimliği korunmalıdır. Havadaki veriyi pasif olarak dinleyerek kullanıcının
kimliği saptanamamaktadır.
Ø Şüpheli cihazların saptanabilmektedir. EIR’deki siyah, beyaz ve gri listelerin amacı
şüpheli ve şüpheli olmayan cihazların ayırt edilmesini sağlamaktır.
Ø Abonenin asıllanması sağlanmaktadır.
Ø Şebekedeki işaretler ve abonenin verisi korunmaktadır.


GSM şebekelerinde güvenliğin sağlanması aşamalarında SIM kartın da büyük rolü olmaktadır. SIM kart abonenin tanımlayıcılarını, anahtarları ve algoritmaları taşıyan akıllı karttır. SIMde bulunan tanımlayıcılar şu şekildedir:

– Ki – Abonenin Asıllanması Sırasında Kullanılan Anahtarı
– IMSI – International Mobile Subscriber Identity
– TMSI – Temporary Mobile Subscriber Identity
– MSISDN – Mobile Station International Service Digital Network
– PIN – Personal Identity Number
– LAI – Location area identity

Bu tanımlayıcılardan TMSI’nin rolü önemlidir. TMSI asıllama prosedürlerinden sonra geçici olarak aboneye atanır.Ve her bir konum güncellemesinde (yeni MSC) aboneye tekrar yeni bir TMSI atanır. TMSI IMSI yerine kullanılır ve anonimliği sağlar. Ayrıca yerine geçmeyi engeller. Örneğin eğer hep IMSI kullanılsaydı SIMi kopyalanan bir abonenin yerine kolayca geçilebilinirdi. TMSI MS ile şebekenin birbirleri ile haberleşmeleri sırasında kullanılmaktadır.

2.2 GSM’de Asılama ve Şifreleme

GSM şebekelerinde asılama sırasında pek çok şebeke elemanı devreye girer. Daha önce bahsedilen veritabanları asılama aşamasında kullanılacak verileri de tutmaktadır. Bunlardan AuC (Authentication Center) asılama ve şifreleme algoritmaları için gerekli verileri sağlar. (RAND, SRES, Kc) HLR (Home Location Register) ise MSC’ye (RAND, SRES, Kc) üçlüsünü sağlar. VLR (Visitor Location Register) ise abone ev alanında değilken HLR’ın görevini üstlenir ve MSC’ye (RAND, SRES, Kc) üçlüsünü sağlar

Asılama sırasında kullanılan algoritma A3 algoritmasıdır. Bu algoritmanın amacı MSC tarafından aboneye gönderilen bir rasgele sayı olan RAND sayısının kullanılarak imzalı bir yanıt (SRES – signed response) oluşturmaktır. Algoritmanın blok diyagramı Şekil 3te görülmektedir.
Şekil 3
Şekilden de görüldüğü gibi algoritmaya giriş parametreleri olarak SIM kartta bulunan 128 bitlik Ki gizli anahtarı ile MSCden aboneye gönderilen yine 128 bitlik RAND rasgele sayısı verilmektedir ve çıkışta 32 bitlik bir imzalı yanıt elde edilmektedir. Bu yanıt tekrar MSC’ye yollanmaktadır. MSC de kullanıcıdaki Ki gizli anahtarını AuC veritabanından alır ve Ki ile RAND ı A3 algoritmasına parametre olarak vererek bir SRES değeri elde eder. Ve ardından aboneden gelen SRES değeri ile kendi elde ettiği SRES değerini karşılaştırır. Eğer bu iki değer eşit ise kullanıcı asılanmış olur. Fakat eşit değil ise bir güvenlik probleminin mevcut olduğu anlaşılır.

GSM’de güvenliği sağlanması için A3 algoritmasından sonra A8 algoritması devreye girer. Bu algoritma ses güvenliği için bir Kc oturum anahtarı üretme algoritmasıdır. Kc anahtarı GSM spesifikasyonunda “confidentiality key” yani gizlilik anahtarı olarak geçmektedir ve bu nedenle Kc ile gösterilmektedir. Bu algoritmanın giriş parametreleri A3 ile aynıdır. Yani 128 bitlik RAND rasgele sayısı ile Ki gizli anahtarını alır ve çıkış olarak 64 bitlik bir Kc oturum anahtarı üretir. Burada ilginç olan nokta Kc nin son 10 bitinin 0 olması yani aslında anahtarın 54 bit olmasıdır. Şekil 4te A8 algoritmasının blok diyagramı görünmektedir.

Şekil 4

A8 algoritması ile Kc oturum anahtarı elde edildikten sonra artık şebeke ile abone haberleşmeye hazırdır. Haberleşmede gizliliği sağlayan algoritma A5 şifrele algoritmasıdır. A5 şifreleyicisi bir akış şifreleyicisidir. Bu algoritma donanımla gerçeklendiğinde çok iyi performans göstermektedir. A5 GSM spesifikasyonu ile halka yayımlanmamıştır fakat sonraları tersine mühendislik ile algoritmanın detayları öğrenilmiştir. A5 algoritması SIM kartta gerçeklenmiştir ve bu algoritmanın bazı çeşitleri bulunmaktadır:

Ø A5/0 – şifreleme yok
Ø A5/1 – daha güvenli
Ø A5/2 – az güvenli
Ø A5/3 – 3G şebekelerde kullanılması planlanıyor

A5 algoritmasının blok diyagramı Şekil 5 ile verilmiştir.


Şekil 5

Şekilden de görüleceği gibi A5 algoritması hem abone tarafında hem de BTS’te gerçeklenmektedir. Algoritma giriş parametresi olarak A8 tarafından üretilmiş olan 64bitlik Kc oturum anahtarını ve 22 bitlik Fn çerçeve numarasını almaktadır. Çıkışında ise 114 bitlik bir anahtar akışı (“key stream”) üretmektedir. Bu anahtar akışı ve açık metin (abonenin ses verisi) XOR kapısından geçirilerek 114 bitlik şifreli metin elde edilir. BTS ise aynı parametreleri A5 algoritmasına uygular ve aynı anahtar akışını elde eder. Bu anahtar akışını ve şifreli metini XOR kapısından geçirerek açık metini elde eder.

Tüm algoritmaları gözden geçirdikten sonra bütün bu adımları içeren Şekil 6 GSM’de güvenliğin nasıl sağlandığını güzel bir şekilde özetlemektedir.


Şekil 6


GSM güvenliğin adımlarını özetleyecek olursak:

Ø İlk olarak A3 algoritması ile abone kendini şebekeye asıllar. Bu algoritma Ki gizli anahtarını ve şebeke tarafından gönderilen RAND rasgele sayısını kullanarak bir SRES imzalı yanıtını oluşturur. Şebeke de aynı adımlardan geçerek bir SRES yanıtı oluşturur ve aboneden gelen SRES ile karşılaştırarak aboneyi asıllar.
Ø A3ün ardından A8 anahtar üretme algoritması devreye girer ve RAND rasgele sayısı ile Ki gizli anahtarını parametre alarak Kc oturum anahtarını üretir.
Ø A8 algoritmasının ardından haberleşme esnasında A5 algoritması devreye girer. A5 bir akış şifreleme algoritmasıdır ve A8in ürettiği Kc oturum anahtarını kullanarak abonenin verisini şifreleyerek baz istasyonuna yollar.


3.GSM Şebekelerine Karşı Gerçekleştirilen Saldırılar

GSM şebekelerinde güvenliğin sağlanması için geliştirilen algoritmalar (A3, A5 ve A8) başlangıçta gizli tutulmuştur. Halbuki bu durum Kerkchoff’un prensiplerine ters düşmektedir. Kerckhoff’a göre algoritmalar gizli tutulmamalıdır ve sistemin güvenliği algoritmaların ve anahtarların gücünde olmalıdır. Sonraları bu algoritmaların nasıl çalıştıklarının detayları tersine mühendislik çalışmaları sonucunda öğrenilmiştir ve sisteme yönelik pek çok saldırılar önerilmiştir.Bu saldırılardan en önemlileri şunlardır:

– Golic, 1997 (A5/1)
– Goldberg+Wagner, 1998 (COMP128)
– Goldberg+Wagner+Briceno, 1999 (A5/2)
– Biryukov+Shamir+Wagner, 2000 (A5/1)
– Biham +Dunkelman, 2000 (A5/1)
– Ekdahl+Johansson, 2002 (A5/1)
– Barkan+Biham+Keller, 2003 (A5/2)+

Bu saldırılar sonucunda algoritmaların temelini oluşturan bir öz alma fonksiyonu olan COMP128 algoritması ile A5/2 tamamen kırılmıştır ve A5/1’in zayıf olduğu ispatlanmıştır.

GSM şebekelerinde asıllama esnasında belirtildiği gibi sadece abone şebekeye asıllanmaktadır. Burada ciddi bir eksiklik vardır. Şebeke aboneye asıllanmamaktadır. Bu da saldırganlara baz istasyonun yerine geçilebileceği fikrini vermektedir. Böylelikle GSM şebekelerine karşı ortadaki adam saldırısı mümkün hale gelmektedir. GSM şebekelerinde ortadaki adam saldırısını gerçekleştiren sahta baz istasyonu şebekenin iki açığından yararlanır:
– MS-BS arası her zaman şifreleme yoktur (A5/0)
– Sadece abone asıllanır, BS asıllanmaz.

Şekil 7de ortadaki adam saldırısı görülmektedir. Sahte baz istasyonu gerçek baz istasyonu ile abonenin arasına girer ve aboneye karşı baz istasyonu, baz istasyonuna karşı abone gibi davranır. Böylece ikisi ile de geçerli birer oturum açar ve tüm haberleşmeyi izleyebilir.
Şekil 7


GSM şebekelerine karşı gerçekleştirilebilecek bir diğer saldırı da tekrarlama saldırısıdır. Yine bir kötü niyetli baz istasyonu (RAND,SRES,Kc) üçlüsünü saklar ve bir süre sonra abone ile oturum açma işlemlerini gerçekleştirirse geçerli bir Kc üreterek geçerli bir oturum açabilir. GSM güvenlik alt yapısında tekrarlama saldırılarına karşı herhangi bir korunma bulunmamaktadır. Bir rastgele sayı ve ya zaman damgası ile oturumların taze (fresh) olduğu anlaşılarak bu problem ortadan kaldırılabilir.

GSM şebekelerine karşı düzenlenebilecek diğer bir saldırı türü ise SIM saldırılarıdır. SIM saldırıları ile Ki gizli anahtarı kolaylıkla ele geçirilebilmektedir. Fakat bu saldırılar için SIM kartı ele geçirilmelidir. Nisan 1998’de gerçekleştirilen bir saldırı ile COMP128 algoritmasının Ki gizli anahtarını sızdırdığı ortaya çıkarılmıştır. Bunun için ortalama 50.000 tane RAND rasgele sayısı kullanılmıştır. SIMe yapılabilecek diğer saldırılar ise güç tüketimi analizi ve zamanlama saldırılarıdır.

Diğer bir saldırı da “GSM Klonlama” olarak bilinen bir saldırıdır. Bu saldırı fikri David Wagner ve Ian Goldberg tarafından ortaya atılmıştır. Saldırı bir seçilmiş rasgele sayı saldırısıdır. (“chosen challange attack”) Trafik analizi ile belirli kurallar çerçevesinde seçilen RAND rasgele sayıları SIM kartına uygulanır. SIM kart ise bu RAND sayısını Ki gizli anahtarı ile birlikte COMP128 algoritmasının gerçeklendiği A3 algoritmasına uygular ve SRES imzalı yanıtını geri döner. Araştırmacılar bu SRES imzalı yanıtlarını analiz ederek 8 saat gibi bir sürede Ki anahtarının elde edilebileceğini göstermişlerdir.

Son olarak GSM şebekelerine karşı gerçekleştirebilecek saldırılardan biri de hizmeti engelleme (“denial of service” ve ya kısaca DOS) saldırılarıdır. GSM şebekelerine radyo kaynakları BSCye (Baz istasyonu denetçisi) yapılan istekler sonucu elde edilerek kullanılmaktadır. Radyo kaynağı istek ve cevabı süreci Şekil 8de görülmektedir:


Şekil 8



Görüldüğü gibi ilk olarak mobil istasyon baz istasyonuna bir kanal isteğinde bulunmuştur. Bunun üzerine baz istasyonu benzer bir kanal isteğini baz istasyonu denetçisine göndermiştir. BSC ise kullanılabilir olan kanallardan birini baz istasyonuna atamıştır ve baz istasyonu bu atamayı mobil istasyona bildirmiştir.Buradaki temel problem baz istasyonunun herhangi bir asıllama yapmadan kanal isteğini direkt olarak BSCye yönlendirmesi ve BSCnin de herhangi bir asıllama yapmadan bu kanalı baz istasyonuna ve sonuçta mobil istasyona atamasıdır. Değerli bir kaynak olan radyo kanalları herhangi bir asıllama yapılmaksızın isteyen her şahsa verilmektedir. Bu da DOS saldırılarını mümkün hale getirmektedir. Kötü niyetli bir mobil istasyon sürekli kanal isteğinde bulunarak kulnılabilir haldeki radyo kanallarını tüketerek iyi niyetli kullanıcıların kanal isteklerinin karşılanamamasına neden olabilirler. Bunun için Valer Bocan ve Vladimir Creiu “Threats and Countermeasures in GSM Networks” adlı makalelerinde bir çözüm önermektedir. Çözüm Şekil 9 da görünmektedir:

Şekil 9

Önerilen çözümde baz istasyonu kanal isteğinden hemen önce bir önasıllama gerçekleştirerek isteği yapan mobil istasyonu asıllar. Eğer istasyon asıllanamazsa kanal isteği geri çevirilir. Asıllama başarılı ise kanal isteği BSCye iletilir ve kullanılabilir kanal varsa isteği karşılanır. Bu önasıllama sırasında 128 bitlik tek kullanımlık bir rasgele sayı kullanılır.

Sonuç olarak GSM şebekelerine pek çok saldırı önerilmiştir. Algoritmaların gizli tutulmasının sistemin güvenliğini artırmayacağı bir kez daha ortaya çıkmıştır. Abone sayısının her geçen gün artması GSM şebekelerinde güvenlik problemlerinin önemini günden güne artırmaktadır. Bu nedenle uzmanlar bu konu üzerinde daha fazla araştırma yapmakta ve çözümler üretmektedir.













4.Kaynaklar

§ Threats and Countermeasures in GSM Networks ,Valer BOCAN & Vladimir CRElU
§ Principles And Applications Of GSM Vijay Garg & Joseph Wilkes
§ http://www.gsm-security.net/faq/gsm-authentication-key-generation.shtml
§ http://en.wikipedia.org/wiki/Global_System_for_Mobile_Communications
§ http://www.cs.berkeley.edu/~daw/talks/SAC02.ppt (about cell phone security)
§ GSM and UMTS Security - Peter Howard, Vodafone Group R&D
§ http://www.cs.iastate.edu/~cs610jw/class-1.ppt
§ Overview of the GSM system and protocol architecture Moe Rahnema,IEEE Communication magazine, pp 92-100, April 1993
§ http://www.nada.kth.se/kurser/kth/2D1449/04-05/kth_crypto_2004.ppt
§ GSM protocol architecture: radio subsystem signaling M. Mouly, M. B. Pautet, Proceedings of the IEEE, vol. 86, Issue 7, July 1998

1 yorum:

Before The Dawn dedi ki...

Merhaba bu paylaştığınız kaynağın dökümanı elinizde varsa bana iletebilir misiniz acaba haberleşme mühendisliği tasarım dersi için çok yardımcı olacakyrua