1. ÖZET
Bu ödevde VOIP teknolojisinin temelleri, çalışma mantığı, kullanım kolaylıkları ve bu kullanım kolaylıklarının getirdiği zafiyetlerin incelenmesi, ortaya çıkan güvenlik açıklarının ortadan kaldırılması veya kaldırılamıyorsa kabul edilebilir seviyeye indirgenmesi konuları işlenmektedir. VOIP güvenlik protokollerinin, yeterince güvenlik sağlayıp sağlamadığı konularının yanı sıra, VOIP Güvenliğinin, fiziksel güvenlikten, ağ güvenliğine kadar birçok güvenlik önlemini de beraberinde getirdiği uygulamalarla anlatılmıştır.
2. VOIP Terimleri
2.1. SIP (Session Initiation Protocol)
VOIP Cihazlarda oturumun başlatıldığı protokoldür ve katman olarak da uygulama katmanında yer almaktadır. Internet telefon haberleşme işlemlerinin sinyal değişimi / sinyal iletişimi için kullanılmaktadır. SIP, ses/görüntü konferansı veya etkileşimli oyunlar için oturum açar. IP ağlarında arama aktarma özelliği getirerek, IP telefonculuk yapan servis sağlayıcıların web, elektronik posta veya çevirim içi yazışma servisleri ile bu özelliği birleştirmesini sağlar. Ek olarak, kullanıcı tanımlama, yönlendirme ve kayıt olma servisleri sağlar. SIP geleneksel telefonculuk özelliklerini de desteklemektedir, örneğin; kişisel dolaşım, günün saatine göre arama yönlendirme, coğrafi duruma göre arama yönlendirme işlemleri yapılmaktadır.
SIP yani Session Initiation Protocol (Oturum Başlatma Protokolü) VOIP telefon aramalarını oluşturmak, ayarlamak ve bitirmek için kullanılan bir IP telefonculuğu işaretleşme protokolüdür. SIP, IETF (İnternet Mühendislik Görev Gücü) tarafından geliştirilmiş ve RFC 3261 olarak yayınlanmıştır.
SIP, bir telefon konuşması oluşturmak için gerekli olan iletişimi tanımlar. SIP, VOIP dünyasında çok hızlı bir şekilde yaygınlık kazanmıştır. HTTP protokolüne benzeyen bu protokol, metin tabanlı, oldukça açık ve esnektir. Bu yüzden büyük ölçüde H323 standardının yerini almıştır. [1]
2.2. RTP (Real-Time Transport Protocol)
IP ağlarında kullanılmaktadır. Uçtan uca gerçek zamanlı veri transferi yapılabilmesi için kullanılmaktadır. Genelde ses/görüntü gibi süreklilik gerektiren verilerin anlık bazda taşınması için tasarlanmış ve VoIP’te de ses iletişimini sağlamak için kullanılmaktadır.
RTP genellikle RTCP (RTP Control Protocol – RTP Kontrol Protokolü) ile beraber kullanılır. RTCP bir telefon görüşmesindeki taraflara kontrol paketleri göndermek için kullanılırken, verinin kendisi RTP tarafından iletilir. RTCP’nin temel fonksiyonu, RTP tarafından sağlanan hizmetin kalitesi hakkında geri bildirimde bulunmaktır. Bu protokollerin her ikisi beraber kullanıldığı zaman RTP portunun bir çift sayıya denk gelmesi gerekir. RTCP portu ise o oturuma ait RTP portundan sonraki elverişli olan ilk tek port numarasıdır. RTP ve RTCP genellikle 1024-65535 arası portları kullanır. [2]
2.3. MGCP (Media Gateway Control Protocol)
H.323 ve SIP protokollerinin tamamlayan protokoldür. Gateway gibi control elemanlarının Media Gateway’leri control etmesi için tasarlanmıştır. Gateway Location Protocol (GLP – Gateway Lokasyon Protokolü) ile birlikte çalışır. PSTN tarafından gelen aramayı, gerekli noktaya ulaşması için ara iletişim kanalını açar. MGCP, yeni paket üzerinden ses taşıma standartları getirerek sistemi kolaylaştırmış, complex ihtiyaçları elimine etmiş, kaynak kullanımını azaltmış ve uçlardaki terminallerin fiyatlarını azaltmıştır.
2.4. H.225
RAS, RTP/RTCP, Q.931 arama sinyalleşmesi protokolleri ve H323 mesaj formatı için kullanılan protokoldür.
2.5. H.245
Karşılıklı uygunluk iletişimini, medya akışı için açık ve kapalı kanalların mesajlarını ve benzeri iletişimi sağlayan protokoldür. (örneğin; medya sinyalleşmesi)
2.6. H.323
Paket tabanlı, çoklu medya iletişim sistemlerini tanımlayan ITU-T ‘Şemsiye’ standardıdır. Bu standart değişik çoklu medya uç noktalarını bir nevi çoklu medya sistemine (uç noktalar, Gateway ler, MCU(Multipoint Conferencing Units – Çok noktalı konferans cihazı) ve Gatekeeper lar) çevirmeye ve iletişim kurmalarına yarar. BU standart birçok IP üzerinden ses taşıyan uygulamada kullanılır. Ve diğer standartlara (H.225, H.245) göre özellikle gereklidir.
Eski bir protokoldür. Günümüzde SIP protokolü, H.323 protokolünün yerini almıştır. Aralarında yalnızca ses iletimi anlamında değil, teknoloji ve taşıma kapasiteleri anlamında da ciddi farklılıklar bulunmaktadır. [3]
2.7. PSTN [Public Switched Telephone Network]
PSTN, Genel Aktarmalı telefon şebekesidir. Dünya genelinde kullanılan devre aktarmalı telefon ağıdır. Türkiye’de ise, eski bakır ağlar üzerinden iletimi yapılan ses protokolü olarak kabul edilmektedir. Dış hattan gelen aramaları, IP ağına çevirmek için ise ATA (Analog Telephone Adapter) kullanılmaktadır. Günümüzde VOIP güvenliğini konuşurken, VOIP öncesindeki PSTN ağların güvenliği de göz ardı edilmektedir. [4][5]
3. VoIP Protokolleri
IP üzerinden ses transfer işlemleri 2 farklı protokol ile gerçekleştirilmektedir. 2 protokolün de birbirine kıyasla belirli avantajları ve dezavantajları bulunmaktadır. Protokolleri inceleyerek, hangi protokolde, nasıl güvenlik açıkları olduğu ve nasıl önlem alınabileceğini görebiliriz.
3.1.SIP (Session Initation Protocol)
SIP, IETF tarafından RFC 3261,3262, 3263, 3264 ve 3265’te tanımlanmış bir protokoldür. SIP, uygulama katmanında çalışan HTTP benzeri, metin içerikli bir protokoldür. Sunucu/istemci mantığı ile çalışır. Çoklu ortam ya da ses oturumlarının başlatılması, değiştirilmesi ve sonlandırılması için kullanılır.
SIP bileşenleri, User Agent ve SIP proxy’den oluşur. User Agent, kullanıcıyı temsil eden uç birimdir. İki şekilde çalışabilir; SIP isteğinde bulunan birim UAC (User Agent Client) ve SIP isteklerini dinleyip cevaplayan birim UAS (User Agent Server) . SIP proxy de farklı bileşenlerden oluşur. Bu bileşenler aşağıdaki gibidir:
- Registration/Location Server: SIP kullanıcılarından kayıt olma isteklerini alıp asıllamayı yapar ve kullanıcıların o anki yer bilgisini günceller.
- Proxy Server: SIP isteklerini alıp bir ilgili sunucuya iletir.
- Redirect Server: UAC’dan gelen bilgileri yorumlar
Bir SIP isteği alındığında bu istek için next-hop’u belirler ve kullanıcıya bildirir. SIP sinyalleşmesi sırasında kullanılan SIP mesajları aşağıdaki gibidir:
- INVITE: Oturum Daveti Oluştur
- ACK: Geçerli İşlemi Onayla
- BYE: Oturum Bitirme
- CANCEL: İsteği İptal Et
- OPTIONS: Özellikler
- REGISTER: Server Kaydı
- INFO: Oturum Durumu Bilgilendirme
- SUBSCRIBE: Bir tablo/liste aboneliği
- NOTIFY: Abone Bilgilendirme Mesajı
SIP mesajlaşmasında kullanılan cevap kodları, aşağıdaki gibi gruplara ayrılmıştır.
- 1xx – Bilgilendirme (Ör. 180 RINGING)
- 2xx – Başarılı İstek (Ör. 200 OK)
- 3xx – Yönlendirilmiş İstek (Ör. 305 USE PROXY)
- 4xx – Başarısız İstek (Ör. 400 NOT FOUND)
- 5xx – Sistemsel Hata (Ör. 500 INTERNAL SERVER ERROR)
- 6xx – Global Arızalar (Ör. 603 DECLINE)
[6]
Bir oturumun başlatılabilmesi için istemcilerin REGİSTER mesajı göndererek VoIP sunucusu üzerine başarılı bir şekilde kayıt olması gerekmektedir. Sonrasında iki kullanıcı arasında, yukarda görüntülenen tablo üzerindeki gibi oturum sağlanabilir. [7]
SIP Protokolünde bir görüşmenin başlayabilmesi için aşağıdaki adımlar gerçekleşmektedir.
A kullanıcısı telefonu kaldırarak, numara tuşlayarak B kullanıcısını aramak ister. Numara girildiğinde, A kullanıcısı sunucuya bir INVITE gönderir. INVITE içerisinde aramak istediği kullanıcının bilgisi, kendi kullanıcı adı (varsa şifresi), kullandığı ve B kullanıcısının geri dönüş sağlayacağı kanal (IP adresi), ses iletişiminin hangi şifreleme yöntemi ile şifreleneceği veya sıkıştırılacağı bilgileri B kullanıcısına iletir.
B kullanıcısının telefonu çalmaya başladığı anda, A kullanıcısına 1xx ile başlayan bilgilendirme mesajı gider. Telefonun çalma sinyalini RİNGİNG mesajı iletir. B telefonu açarak, iletişimin başlamasını onayladığı anda A kullanıcısına 200 OK bilgilendirmesi giderek görüşmenin başlaması beklenir. 200 OK cevabını alan A kullanıcısı görüşmeyi onaylamak için son kez ACK gönderdiğinde ve B onu aldığında, görüşme başlamaktadır. Görüşme gerçek zamanlı ses/video transferi olarak gerçekleşmektedir.
İletişimin başlamasından itibaren SIP sunucusu aradan çıkar ve kullanıcılar arasında iletişim devam eder. Oturumun sonlanması için, taraflardan birisinin BYE paketi göndermesi, diğer tarafın 200 OK mesajı göndererek, oturumun kapanma isteğini kabul ettiğini göndermesi ve en son diğer kullanıcının tekrardan ACK paketi göndermesiyle oturum kapatma işlemi de gerçekleşmektedir.
SIP protokolü üzerinde, birçok bilgi (IP, Port, Adresler, Sıkıştırma Teknolojileri /Codec) açık bir şekilde gidebilmektedir. Ağı dinleyen birisi, bu bilgilere ulaşabilmekte, hangi kullanıcıların, hangi kullanıcılara paket gönderdiğini elde edebilir. Elde edilen paketler üzerinden yorumlama yaparak da, bilgilere erişebilir. Hatta başka kullanıcıların bilgilerini kendisi gibi göstererek, başka kişi adına görüşme talebinde bulunabilir. [8]
3.2. RTP (Real-Time Transfer Protocol)
RTP Protokolü gerçek zamanlı veri iletimi için kullanılmaktadır. Tüm veri tipleri için kullanımı uygun olsa da, ses ve video iletimi konusunda standartlaşmıştır. Ulaşım katmanında UDP kullanır. G729 / G711 kodlayıcılarını desteklemektedir. RTP ’nin çalışma mantığı şu şekildedir. Tüm paketleri karışık sırayla alır, paketlerin üzerindeki zaman damgasıyla birlikte paketleri sıraya dizerek senkronik bir şekilde iletişimi sağlamaktadır. RTP Protokolü RFC 3550 ile tanımlanmaktadır. [9]
[10]
Yukarda belirtilen resimdeki, örnek bir RTP başlığı içerir. PT alanı ise, RTP’nin payload tipini belirtmektedir.
4. Saldırı Yöntemleri
SIP protokolünde, arama isteğini başlatan kullanıcı, sunucuda oturum açabilmek için INVATE isteğinde bilgilerini şifrelenmeden gönderdiği için, bu bilgiler arada dinleyiciler tarafından elde edilebilmektedir.
Bu güvenlik açıkları sebebiyle, birçok yöntemle saldırı düzenlenebilir, iletişim engellenebilir veya istenmeyen farklı durumların ortaya çıkmasına sebep olabilir.
VoIP sistemi, gerçek zamanlı iletişimi içerisinde barındırdığı için, yapılacak olan güvenlik önlemleri de tek sefere mahsus güvenlik önlemleri olmayacaktır. Sağlanacak güvenlik önlemleri, gerçek zamanlı olmalıdır.
SIP ya da VoIP saldırıları, diğer iletim methotlarında olduğundan çok daha farklı şekilde zarar görmektedir. Ses iletimi anlık yaşandığı için, bir yerde depolanmamaktadır veya tekrardan iletmek çok mümkün olmamaktadır. SIP trafiği paketler ile taşındığı için, paketlerin yanlış adrese yönlendirilmesi veya manüple edilerek ilgili adrese yönlendirmesi gibi durumlar ortaya çıkabilmektedir.
4.1. DoS ve DDoS Saldırıları (DoS and DDoS Attack)
DoS ya da DDoS ataklarında, mevcut SIP sunucusunun hizmetinin kesintiye uğratılması veya servis yanıltma amaçlanır. 2004 CSI/FBI raporuna göre hırsızlıktan bile daha fazla mali zarara neden olmaktadır [11]. Bu atakta, yeterli bilgileri ele geçirdikten sonra, sunucu savunmasız kalmaktadır. Aynı anda birden fazla saldırganın hedef sunucuyu etkisiz hale getirmek için yaptığı DDoS saldırıları ise SIP için en sık karşılaşılan ve en ağır sonuçlar doğuran saldırı çeşididir [12].
SIP için yapılan DDoS saldırıları, çok fazla sayıda REGISTER ya da INVITE paketinin sunucuya gönderilmesi, SIP paketlerinin yapısının değiştirilmesi ya da SIP durum kodları değiştirilmesi olarak karşımıza çıkabilir. Özellikle açık internet erişimi bulunan ve network dışından da çağrı kabul eden sunucular bu saldırılara karşı savunmasızlardır. Sunucu tarafından imzalanmış ya da şifrelenmiş ses paketleri dahi bu saldırıdan etkilenmektedir. Paket iletiminin gerçek zamanlı gerçekleştirildiği bu sistemlerde, zararlı yazılımlar DDoS saldırıları ile çoğalarak sistem trafiğini artırır ve sistemi yanıt veremez hale getirir. SIP paket tekrarlama saldırısı, SIP paket ekleme saldırısı, TLS bağlantı sıfırlama saldırısı, flood saldırıları, sahte mesaj saldırıları en bilinen DoS saldırılarındandır. Bu tür saldırılara karşı SIP destekli güvenlik duvarı kullanarak, ayrıca IDS ve IPS cihazlarına SIP odaklı kurallar ekleyerek detaylı ağ analizi yapılması sağlanabilir ve saldırılar önlenebilir.
Şekil: SIP Üzerinde “Cancel” DoS’u Yapılması
4.2. Telekulak Saldırıları (Wiretapping Attack)
Bu saldırıda ağa erişerek veri paketlerine erişim ve kişisel bilgilere ulaşılması amaçlanmaktadır. Saldırgan sistem üzerindeki zafiyet ve açıkları bulmak amacıyla da telekulak saldırısı gerçekleştirebilir. VoIP teknolojisinde, erişimin kolay olması nedeniyle IP ağına erişimi bulunan saldırgan iletilen paketleri görüntüleyebilir ve yakalayabilir [12]. Bazı paket yakalama programları ile bu saldırı rahatlıkla gerçekleştirilebilmektedir.
Örneğin, Wireshark gibi uygulamalarla ağı dinleyen bir saldırgan çok rahatlıkla sizin paketlerinizi yakalayabilir, paketleriniz üzerindeki bilgileri parçalayarak elde edebilir. Sonrasında da bu paketler üzerinde manipülasyon yaparak sizin adınıza başka kullanıcılara aktarabilir.
Şekil: Wireshark ile SIP paketlerini dinlemek
Bazı protokol analiz edici programlar, yalnızca VoIP trafiğini dinlemek ve daha sonraki analizler için saklamak üzere konfigüre edilebilir. VoIP kullanımı, geleneksel telefon sistemindeki tapping teknikleriyle karşılaştırıldığında; geleneksel telefon sistemindeki telekulak saldırısında, saldırısı ile bir telefon görüşmesine erişilebilirken VoIP ağına yapılan bir telekulak saldırısı ile birden fazla VoIP oturumuna (telefon konuşmasına) ulaşılabilir. Bu yönden VoIP ek riskler getirmiştir.
VoIP ağında telekulak saldırısını kolaylaştıran etkenlerin başında, sesin iletiminde kullanılan RTP protokolünde şifreleme ya da asıllama yapılmıyor olmasıdır. RTP başlığında PT (payload type) alanında kullanılan codec ile ilgili bilgi vardır. İnternette kolayca erişilebilen, RTP trafiğini kaydetmeye yarayan araçları kullanarak RTP trafiğini kesip kaydeden biri, codec bilgisi de elinde bulunduğundan, bu RTP trafiğini daha sonra decode edip dinleyebilir ya da tekrarlama saldırıları gibi birçok saldırı amacıyla kullanabilir.
4.3. Ortadaki Adam Saldırıları (Man in the Middle Attack)
Ortadaki adam saldırısı (man-in-the-middle attack), araya girenin, tarafların haberi olmadan iki taraf arasındaki mesajları okuyabilmesi ve değiştirebilmesi olarak tanımlanabilir. Ortadaki adam saldırısı, DoS ya da telekulak gibi diğer saldırı türlerini gerçekleştirmek için de kullanılabilir.
Call Hijack, saldırıda bulunanın, taraflardan birinin yerine geçmesi durumudur. Call Hijack saldırısında bulunan biri, şüpheleri arttırmamak için bunu MITM saldırısına dönüştürebilir.
Bu saldırılar, farklı şekillerde gerçekleştirilebilir:
- Kayıt bilgilerini değiştirmek (registration manipulation)
- 3xx cevap kodlarını kullanarak (call redirect)
4.4. Kayıt Bilgilerinin Değiştirilmesi (Change of Register Data)
Bu saldırı ile sistemdeki kullanıcıların kayıt bilgileri değiştirilerek, yapılan tüm isteklerin farklı bir sunucuya gitmesi sağlanarak istekler yönlendirilebilir. SIP mesaj içeriğinde bulunan, isteğin kimden yapıldığına dair bilgiler değiştirilerek sahte kullanıcı kayıtları yapılabilir. Kullanıcı veri bloğu iletişim kuralları (User Datagram Protocol – UDP) mesajlarının kontrolsüz olması sebebi ile saldırgan hem kendini sisteme kaydedebilir hem de sistemdeki aktif kullanıcıları kendine yönlendirebilir. Birçok SIP tabanlı sistemde herhangi bir yetkilendirme istenmediği için bu saldırı rahatlıkla gerçekleştirilebilmektedir. Bu saldırıyı başarıyla gerçekleştirdikten sonra ortadaki adam saldırısı gerçekleştirmek de daha kolay bir hal almaktadır. Yetkilendirme yapılarak söz konusu saldırının önüne geçilebilir.
Bu konuda önlem alınmaması durumunda, saldırgan kendisini SIP sunucusu olarak tanıtarak, bir recorder aracılığıyla kullanıcılar arasındaki görüşmeleri kaydedebilir veya dinleyebilir. [14]
4.5. Tekrarlama Saldırıları (Repeat Attack)
SIP mesajlarının ele geçirilmesi ve belli bir süre sonra aynı mesajların geri gönderilmesi ile gerçekleşir. Genelde yetkili bir kullanıcının bilgilerinin çalınması ve onun yerine geçilmesi ile gerçekleştirilir [15]. Bu saldırı ile tek bir arama için oturum başlatılacakken birden çok oturum başlatılması ile birden çok arama gerçekleştirilmiş olur bu da gerek sistemi meşgul etmesi gerekse maddi açıdan kayıp oluşturması nedeni ile önlem alınması gereken bir durumdur. Yine aynı şekilde yetkilendirme ve şifreleme senaryoları ile bu saldırı türü engellenebilir.
4.6. Oturum Bozma Saldırıları (Session Corruption Attack)
Var olan bir sinyalleşme ya da oturumu kesmek amacıyla gerçekleştirilir. İletişim halinde bulunan kullanıcılar arasına saldırganın girmesi ve aradaki bağlantıyı, BYE mesajı yollayarak bitirmesi ile sonuçlanır [16]. HTTP Digest Authentication kullanılmış olsa dahi saldırgan zararlı ACK ya da CANCEL istekleri ile oturumların düşmesine neden olabilir. Güvenli oturum kurulması sağlanarak ve gerekli yetkilendirmeler yapılarak oturuma dâhil olunması engellenebilir ve bu sayede de oturumun devamlılığı sağlanabilir.
4.7. Yanıltma (Spoofing)
Spoofing, IP paketlerinin, yanlış kaynak adresi kullanılarak gönderilmesidir. Saldırıda bulunan kişinin IP adresini gizlemesi; başka bir taraf ya da kişiyi saldırıyı yapan olarak göstermesi; güvenilir bir kullanıcı gibi görünmesi yanında network trafiğini dinleme ya da ele geçirme ve ortadaki adam saldırısı gibi saldırıları gerçekleştirmek için kullanılabilir.
Bu tür yanıltma saldırısındaki bir risk, kimlik hırsızlığıdır. Örneğin bir müşteri, sipariş vermek üzere bir yeri arayıp telefonda kredi kartı numarası gibi önemli bilgilerini verebilir. Ne yazık ki müşteri, satış departmanı yerine, onun yerine geçmiş olan saldırganla konuşmaktadır. Bu, klasik bir ‘man-in-the-middle spoofing’ saldırısıdır.
Bir başka yanıltma türü de arayan ID’si (Caller ID) ya da CLID (call line identification) değiştirilerek yapılabilir. Yalancı bir kullanıcının ya da varolan bir kullanıcının telefon numarası değiştirilebilir. Bu da; arayan numaraya göre asıllama yapan sistemlere zarar vermek için kullanılabilir. Bazı VoIP cihazları periyodik olarak belli bir sunucudan firmware yüklemek üzere konfigüre edilmiş olabilir. Spoofing ile cihaza yanlış bir firmware dosyası yüklenmesi sağlanabilir.
Örnek bir spoofing saldırısı, yukarıdaki şekilde görülmektedir. Alice ve Bob kullanıcıları, VoIP sistemi üzerinden konuşurken, araya giren saldırgan (Kevin), Bob’a Alice adına bir BYE mesajı göndererek, iki kullanıcı arasındaki oturumun sonlandırılmasına sebep olur. Bob, BYE mesajının Alice’den geldiğini zannetmektedir. Alice ise, oturumun sonlanma sebebinden haberdar değildir.
5. VoIP Güvenliği
VoIP teknolojisi yukarda gördüğümüz üzere, birçok açığı da beraberinde getiriyor. Protokol güvenliğinin sağlanması için bazı önlemlerin alınması gerekiyor. Bu önlemlerin alınmaması, görüşmelerin kesilmesi, sağlanamaması, yanlış kaynaklara yönlendirilmesi, dinlenebilmesi, kaydedilmesi, yanlış kaynaklardan veri alınması gibi birçok kritik konuyu da gündeme getiriyor.
Akıllı VoIP cihazlarında, eğer konfigürasyon menüsü gizlenmemişse, giriş yaparak aldığı IP numarasını, hangi porttan haberleştiğini görebilir, telefonun arkasındaki kabloyu doğrudan bilgisayara takarak, o IP üzerinden SIP sunucusuna istek gönderebilirsiniz. Sonrasında hayal gücünüzü zorlayarak, olası tehdit senaryoları oluşturabilirsiniz. Bunu sizin sorumlu olduğunuz alandaki herhangi bir telefona, herhangi bir saldırgan da yapabilir. [17]
Bu bölümde ise, yapılabilecek saldırıların nasıl engellenebileceğini veya nasıl minimize edileceğini göreceğiz.
5.1. Genel Önlemler
Burada sıralayacağımız öneriler, sadece VoIP’i ilgilendirmeyen, diğer sistemlerinizin de sağlıklı çalışabilmesi için gerekli güvenlik önlemlerini barındırmaktadır. Güvenli bir sisteme sahip olabilmek için, VoIP dışında da bu önlemleri almanız gerekmektedir.
Öncelikle, VoIP ağı diğer ağlardan farklı VLAN’lar ile ayrılmalıdır. Normal iletişim ve verilerinizin dolaştığı ve dosya trafiği oluşturacak VLAN’larda yaşanacak olan yavaşlama veya saldırı durumunda, izole edilmiş bir ağ ile bu sorunu yaşamayabilirsiniz. Bu VLAN’lara yetkisiz erişimleri engelleyerek de, ağı tamamen güvene alabilirsiniz.
VoIP sunucularına istenmeyen kişilerin erişimini engellemek için, ilgili sunucunun dışarıya açık olan portlarının taramasının yapılıp, kullanılmayan portların kapatılması sağlanmalıdır. Özellikle telnet portları kapalı durumda bırakılmalıdır.
VoIP güvenliği sağlamak için, doğru konfigüre edilmiş güvenlik duvarları da gerekmektedir.
SIP, sinyalleşme kısmında genelde TCP/UDP 5060 portunu kullanmaktadır. Telekulak gibi saldırılara karşı IP adresi NAT ile gizlenebilmektedir. Yalnız, NAT’ın üçüncü katmanda gizlediği IP adresi, SIP için beşinci katmanda kullanılacağı için uyumsuzluk oluşturacaktır. Oluşacak olan uyumsuzluğu ortadan kaldırmak için SBS(Session Border Controller) cihazları kullanılabilmektedir.
DoS saldırılarına karşı, yedekli hatlar kullanılmalı, olası saldırı durumunda, yedek ağ / yedek hatlar üzerinden iletişime devam edilebilmelidir.
Ses ve sinyalleşme için kullanılan paketler, ara yazılımlar tarafından görülemeyecek şekilde şifrelenmelidir. Telefondan çıkan paket şifrelenerek çıkmalı, sunucuya ulaştığında pritave key ile açılmalı, tekrardan telefona gelecek olan paket şifrelenmeli, o da telefon tarafından açılabilmelidir. Bu sayede, ortada yakalanan paket private key olmadığından anlamsız bir hal almaktadır.
5.2. IPSec (IP Security)
OSI ağ katmanında güvenlik sağlayan IPSEC, tüm IP iletişimini şifrelemek ve doğrulamak için kullanılan bir standarttır [18].
AH (authetication header) ve ESP (encapsulation security payload) protokollerini bulundurur, AH protokolü sadece doğrulama sağlamakta olup, ESP protokolü hem doğrulama hem de şifreleme sağlamaktadır. Ulaşım ve tünel kiplerine sahiptir. Ulaşım kipinde sadece veri şifrelenmektedir. Tünel kipinde ise hem paket başlığı hem de veri şifrelenir. Kullanıcılar arasında karşılıklı kimlik doğrulaması yapılır ve güvenlik anlaşması yapılır. Tüm veriler şifrelenerek kullanıcılar arasında iletilir. Kullanıcılar veri iletimine başlamadan önce veriyi nasıl koruyacaklarına dair bir anlaşma yaparlar. Bu anlaşmaya SA “Güvenlik Anlaşması” denir. IKE (Internet Key Exchange) bu anlaşmayı yönetir. Anahtar yönetimi manuel olarak da otomatik olarak da yapılabilir. Eğer çok fazla sayıda güvenlik anlaşması var ise ve yapı karmaşık ise otomatik olarak, küçük yapıda ise manuel olarak yapılması tercih edilir. Asıllama, mesaj bütünlüğü, gizlilik ve tekrarlama saldırılarına karşı koruma sağlamaktadır. Fakat tüm verinin hatta başlığında şifrelenmesi ekstra bir yük getirmekte olup, gerçek zamanlı çalışan ve bu da herhangi bir gecikmeye tolerans göstermeyen VoIP teknolojisinde sıkıntı yaratabilmektedir.
5.3. TLS (Transport Layer Security)
TLS, SIP mesajlarının ulaşım katmanında güvenliğinin sağlanması için kullanılır. TLS protokolü, RFC 2246’da tanımlanmaktadır. TLS, güvenli oturumların kurulmasında önemli bir rol oynamaktadır. Bu da SIP oturumunun kurulması için gerekli istemci/sunucu haberleşmesi için TLS veya SSL bağlantısı kurulması ile sağlanır.
TLS protokolünün iki katmanı vardır:
- TLS record protocol- simetrik anahtarlı şifreleme kullanır.
- TLS handshake protocol- sunucu ve istemci arasında asıllama ve şifreleme algoritmasına, kullanılacak anahtara karar verilmesi
SIP mesajındaki HTTPS benzeri SIPS URI uzantısı, TLS kullanır. Eğer SIPS URI isteğindeki route üzerinde TLS bağlantısı varsa, istek kabul edilir, aksi halde edilmez. TLS, bağlantılı bir ulaşım katmanı protokolünün kullanımını gerektirir Bu nedenle TCP ile kullanılır; UDP ile kullanılamaz.
5.4. SRTP ( Secure Real-Time Transport Protocol)
Güvenli Gerçek Zamanlı İletişim Protokolü olarak adlandırılmaktadır. RTP’nin doğrudan yaptığı iletişimi, güvenli olarak sağlamaktadır. [19]
Diğer güvenlik önlemleri, neredeyse tüm korunması gereken cihazlar için kullanılabilecek iletişim güvenliği önlemleriydi. SRTP ise, VoIP için geliştirilmiş bir protokol olup, medya paketlerinin güvenli olarak aktarılması için geliştirilmiştir.
SRTP, 2004 yılında IETF tarafından RFC 3711 ile yayınlanmıştır. Ses ve video gibi gerçek zamanlı verinin iletimi için kullanılan RTP protokolünün güvenliğini arttırmayı amaçlamaktadır. RTP paketlerine gizlilik, asıllama, tekrarlama saldırısına karşı koruma gibi özellikler eklemektedir. SRTP, şifreleme, asıllama gibi özellikleri ortak bir çatı altında toplarken, yüksek çıktı sağlamakta ve RTP paketlerine gelecek ek yükü de minimuma indirmektedir. SRTP, RTP stack implementasyonundan ve kullanılan anahtar yönetimi algoritmasından bağımsızdır. Farklı implementasyonlar ve protokoller ile çalışabilir; ancak Multimedia Internet Keying (MIKEY) 14 SRTP ile çalışmak üzere tasarlanmıştır. Bu nedenle anahtar yönetimi için genelde MIKEY kullanılır. SRTP’de şifreleme, asıllama gibi tüm özellikler isteğe bağlıdır. Eğer şifreleme kullanılıyorsa, şifreleme için öntanımlı olarak AES-CM (Advanced Encryption Standard- counter mode). Anahtar uzunluğu 128 bittir. Asıllama için öntanımlı olarak HMAC-SHA1 kullanılır. Asıllama anahtarı uzunluğu 160 bit ve asıllama etiketi uzunluğu 80 bittir.
SRTP’nin RTP ile karşılaştırıldığında sağladığı birçok avantaj vardır. Bunlar aşağıdaki gibi sıralanablir:
- RTP ve RTCP için payload şifrelenmesi ile sağlanan güvenilirlik
- Tekrarlama saldırısına karşı koruma ile birlikte, RTP ve RTCP için mesaj bütünlüğünün sağlanması
- Oturum anahtarlarını periyodik olarak yenileme imkânı ile belli bir anahtar tarafından üretilmiş şifreli metin miktarını azaltmak
- Güvenli bir oturum anahtarı üretme algoritması (her iki uçta pseudo-random fonksiyon ile)
- Unicast ve Multicast RTP uygulamaları için güvenlik
SRTP Akış Şeması
SRTP’de öncelikle, RTP mesajının sekans numarası ve ROC kullanılarak 48 bitlik index hesaplanır. Index ve master anahtar, anahtar elde etme ve yenileme fonksiyonundan geçirilerek biri şifreleme anahtarı ve diğeri asıllama anahtarı olmak üzere iki anahtar elde edilir. Şifreleme anahtarı kullanılarak RTP paketi şifrelenir. Şifrelenmiş olan metin, asıllama anahtarı kullanılarak asıllanmış SRTP paketi elde edilir.
SRTP Şifreleme
STRP şifrelemesi için, şifreleme türü olarak AES-CM kullanılmaktadır. Şifreleme akışı, yukardaki fotoğrafta özetlenmiştir. Şifre dönüşümü SRTP pack indexini ve 128 bitlik anahtarı pseudorandom bir stringte birleştirir. Her bir string, bir RTP paketini şifrelemek için kullanılır. Şifreleme işlemi 2 adımda gerçekleşir. Birinci adımda, ilgili pakete karşılık gelen bir anahtar akışı oluşturulur. İkinci adımda ise, anahtar ile RTP payloadın şifrelenmiş SRTP metini oluşturmak için bit bazlı şifrelenir.
6. Sonuç
VoIP, günümüzde çok sıkça kullanılmaya başlanan ve geliştirilmeye de devam edecek olan bir teknolojidir. VoIP güvenliği, son dönemlerde sıkça gündeme gelmekle beraber farkındalığın oluşmasıyla birlikte daha da artmaktadır.
Popülerliği artan her konunun güvenlik konusunda daha da sıkı takip edilmeye başlaması gibi, VoIP alanında da, popülerlik arttıkça saldırılar da artacaktır. Yeni geliştirilen saldırı yöntemlerine karşı, yeni nesil protokoller, yeni nesil önlemler alınarak bu konuda etkileşim sürekli olarak devam edecektir.
KAYNAKLAR
[1] https://www.3cx.com.tr/voip-sip/sip/ (17.11.2017)
[3] https://www.packetizer.com/ipmc/h323_vs_sip/
[4] https://www.packetizer.com/ipmc/h323_vs_sip/
[5] http://searchnetworking.techtarget.com/definition/PSTN
[7] K.K. Tan, H.L. Goh, “Session Initiation Protocol, Industrial Technology”, IEEE ICIT ’02. 2002 IEEE International Conference, IEEE ICIT’02, THAILAND, 2002, 2, pp. 1310 – 1314, 11-14 Dec. 2002.
[8] Q. QIU, Study of Digest Authentication for Session Initiation Protocol (SIP), Master’s Project Report, University of Ottawa, December, 2003.
[9] http://searchnetworking.techtarget.com/definition/Real-Time-Transport-Protocol
[10] https://www.cl.cam.ac.uk/~jac22/books/mm/book/img49.gif
[11] S. Ehlert, G. Zhang, D. Geneiatakis, G. Kambourakis, T. Dagiuklas, J. Markl, D. Sisalem, “Two layer Denial of Service prevention on SIP VOIP Infastructure”, Computer Communications, 31, 2443–2456, 2008.
[12] H. Y. Lam, C. P. Li, S. T. Chanson and D. Y. Yeung, “A Coordinated Detection and Response Scheme for Distributed Denial-of-Service Attacks,”2006 IEEE International Conference on Communications, 2006, İstanbul, pp. 2165-2170.
[13] T.Al-Kharobı, M.Al-Mendhar, “Comprehensive Comparison of VoIP SIP Protocol Problems and Cisco VoIP System”, International Journal of Network Security & Its Applications, 4(4), 137-152, 2012.
[14] https://tools.ietf.org/html/rfc3680
[15] A. B. Johnston, SIP: Understanding the Session Initiation Protocol, Artech House, 2009, Boston, 3rdEdition.
[16] Internet: M. Collier, Basic Vulnerability Issues for SIP Security, http://download.securelogix.com/library/SIP_Security030105.pdf, 17.11.2017
[17] Internet: J. Franks, P. Hallam-Baker, J. Hostetler, S. Lawrence, P. Leach, A. Luotonen, L.Stewart, HTTP Authentication: Basic and Digest Access Authentication, 1999,RFC-2617, http://www.rfc-base.org/txt/rfc-2617.txt, 01.02.2017.
[18] J. S. Tiller, A Technical Guide to IPSec Virtual Private Networks, New York, Auerbach Publications,December- 2000.
[19] http://whatis.techtarget.com/definition/SRTP-Secure-Real-Time-Transport-Protocol-or-Secure-RTP
Sunum: