You are on page 1of 113

TBML-3071-Bilgisayar

Güvenliği
1.Hafta - BİLGİSAYAR GÜVENLİĞİNE GİRİŞ
1. Tanımlar

Sayısal Tam
Fiziksel
(Dijital) Güvenlik

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 2
1. Tanımlar

Sayısal
Güvenlik
Bilgisayar (Son
Nokta) Güvenliği

Ağ (İletim Hattı)
Güvenliği

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 3
Güvenlik Neden Zordur?

•Bilişim Sektöründeki projelerde gereksinimler


Fonksiyonel(Functional) ve Fonksiyonel olmayan (Nonfunctional)
olarak ikiye ayrılır.
•Fonksiyonel gereksinimler projenin yapması gerekenleri ifade
eder.
•Fonksiyonel olmayan gereksinimler ise projenin başarılı olması için
gereken şartları ifade eder. Bunları proje başında bilmek ve doğru
tespit etmek zordur. Çünkü akıl yürütme ile değil deneyimlerle ve
olabilecek tüm olasılıkları görerek yapılmalıdır.
•Ticari kaygılar ve zaman kıstı firmaları öncelikli olarak fonksiyonel
gereksinimleri tamamlamaya iter.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 4
Bilgisayar Güvenliği Neden Özellikle Zordur?

•Kullanım kolaylığına odaklı teknolojik gelişme eğilimi


•Ağ üzerinde (İnternet – Bulut ) çalışan uygulamaların artması
•Altyapının karmaşıklığının artması (Protokol Yığını ??? )
•Güvenliğin merkezileştirilememesi
•Güvenlik zafiyetlerinin iş süreçlerine etkisi
•Kanuni zorunluluklar

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 5
Temel Güvenlik Önlem Türleri

•Üç ana güvenlik önlem türünden bahsedebiliriz:


•Engelleme (Prevention)
•Tespit Etme (Detection)
•Tepki verme (Reaction)

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 6
2. Güvenlik Hedefleri
Bilgisayar güvenliğinde üç ana hedef

Gizlilik Bütünlük
(Confidentiality- (Integrity)
Secrecy)

Siber saldırılar bu 3 maddeden


Erişilebilirlik bir veya birkaçını hedef alarak
(Availability) uygulanmaktadır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 7
Siber Saldırı Nedir? (Hacker?)

•Siber saldırı, dış veya iç tehditler saldırganlar tarafından, bir hedef


kuruluşun veya bireyin bilgi sistemlerinin gizliliğinden,
bütünlüğünden ve kullanılabilirliğinden yararlanmak için kullanılan
kasıtlı bir girişim biçimidir.
•Siber saldırganlar, hasarlara ve kesintilere neden olmak ya da
bilgisayarlara, aygıtlara, ağlara, uygulamalara ve veritabanlarına
yetkisiz erişim elde etmek için yasa dışı yöntemler, araçlar ve
yaklaşımlar kullanır.
•Hack terimi ise bir işin fevkalade yapabilmek için kullanılır. Hacker
terimi bundan türeyen bir işte uzman kişi manasında kullanılır. Ne
yazık ki siber saldırganlarla özdeşleştirilmiş bir şekilde
kullanılmaktadır.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 8
Siber Saldırı Çeşitleri

•Malware
•Ransomware
•Enjeksiyon saldırıları (ör. Siteler arası komut dosyası oluşturma , SQL enjeksiyonu ,
komut enjeksiyonu) (SQL Injection, XSS, CSRF)
•Oturum yönetimi ve Ortadaki Adam saldırıları (Man in the Middle)
•E-dolandırıcılık
•Servis dışı bırakma (Denial of Service – DoS , DDoS)
•Yetki yükseltmeleri
•Güvenlik açığı bulunan yazılım
•Uzaktan kod yürütme (Remote Code Execution)
•Kaba kuvvet (Brute Force)
•.......

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 9
Siber Saldırılara Karşı Elimizdeki Silahlar

•Bunlar 4A olarak da bilinen Authentication, Authorization,


Accounting ve Audit.
•Kimlik Doğrulama (Authentication)
• Varlık Kimlik Doğrulama
• Mesaj Kimlik Doğrulama
•Yetkilendirme (Authorization)
•Denetleme (Accounting)
•Takip Etme (Audit)

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 10
Gizlilik ve Mahremiyet

•Gizlilik (Secrecy): Bilginin yetkisiz kişilerin erişimine korumalı


olması
•Mahremiyet (Privacy): Paylaşılan kişisel veya kurumsal
bilgilerin 3.şahıslara ifşa edilmemesi. (KVKK/GDPR)

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 11
Siber Güvenlik Neden Önemli?

•Kişisel Veriler artık kıymetli ve erişilebilir (TC Kimlik No, Kredi


Kartı)
•Ticari Bilgiler tamamen çevrimiçi ortamda(Müşteri Pörtföyü,
Projeler, Fikirler, Şirket sırları)
•Kritik Alt Yapılar artık yazılımla yönetiliyor( Hastane, Elektirik
Santralleri, Sinyalizasyon sistemleri , Su Doğalgaz Şebekeleri v.b.)
•Kamu hizmetleri artık çevrimiçi (E-Turkiye, UYAP, Mernis, Eba,
Üniversiteler, Tüm bakanlıkların hizmetleri )
•Ve Siber Savaşlar yeni başladı ve bitmeyecek.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 12
Siber Saldırının Başarıya Ulaşmasını Engellemek

•Bir siber saldırının başarılı olma durumuna Güvenlik İhlali


denmektedir.
•Güvenlik İhlallerini engellemek için yapılabilecek siber güvenlik
tedbirlerini 10 madde olarak şöyle sıralayabiliriz.
1. Siber Güvenlik Eğitimleri ve Farkındalık Oluşturma
2. Risk Değerlendirmeleri Yapın
3. Güvenlik Açığı Yönetimi ve Yazılım Güncellemelerini Sağlama
4. En Az Ayrıcalık İlkesini Kullanın
5. Güvenli Şifre Depolaması ve Politikalarını Zorunlu Kılın
6. Periyodik Güvenlik Kontrolleri Yapın
7. Yedekleme Sistemleri
8. Beklemedeki ve Aktarılan Veriler için Şifre Kullanın
9. Güvenliği Göz Önünde Bulundurarak Yazılım ve Ağlar Tasarlayın
10. Güvenli Kodlamada Güçlü Girdi Doğrulaması ve Endüstri Standartlarının Uygulanması

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 13
3. Güvenlik Yönetimi ve Politikalar

•Bilgi Güvenliği Yönetimi (ISO 27001)


•Şirket Varlıklarını Korumak için
Oluşturulur
•İyi Bir Güvenlik Yönetimi Üst
Yönetim Tarafından Desteklenir.
•Bilgi Güvenliği Yönetimi Bir Nokta
Değil Bir Süreçtir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 14
TBİL 621 Bilgi
Güvenliği
2.Hafta Şifreleme Teknikleri ve Algoritmaları
1. Şifrelemeye Giriş

•Kriptoloji(Şifreleme)
• Matematiğin bir alt koludur
• Şifreleme ile Güvenlik aynı şey değildir. (Kapı Anahtarı v.s Kapının diğer unsurları)
• Kilit-Şifre: Girişe izin verme yada vermeme
•Şifreleme Bilimi:
•Kriptoloji= Kriptografi + Kriptanaliz
• Kriptografi: Bilginin veya verinin güvenli bir şekilde şifrelenmesi
• Kriptanaliz: (Şifre çözme) Şifrelenmiş mesajların eski haline getirilmesi (Şifre kırılması)

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Ders Öğretim Elemanı" tarafından hazırlanmıştır. 16
1. Şifrelemeye Giriş

düz metin(plaintext),
şifre metin (ciphertext) ve
değişimde kullanılankriptografik metot şifre (cipher)
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 17
1. Şifrelemeye Giriş – Matematiksel İfadesi
E: Şifreleme Fonksiyonu
D: Şifre Çözme Fonksiyonu

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için " Özgür Can TURNA " tarafından hazırlanmıştır. 18
1. Şifrelemeye Giriş –Şifreleme Anahtarı:

•şifreleme metodunun (işlevinin) bir parametresidir ve


genelde bir bit dizisi ile ifade edilir.
•Tek Anahtarlı Şifreleme
• Şifreleme ve Çözme Aynı Anahtarla
• Simetrik Şifreleme
• Gizli-Anahtar Şifreleme
•1977'de Diffie ve Hellman
• Açık-Anahtar Şifreleme
• Şifreleme ve Şifre Çözme birbirinden bağımsız Anahtarlarla
• Asimetrik Şifreleme

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için " Özgür Can TURNA " tarafından hazırlanmıştır. 19
1. Şifrelemeye Giriş – Kerckhoffs Prensibi

•Hollandalı profesör Auguste Kerckhoffs (1883)


•Askeri Kriptografi adlı makalede şifre tasarımına ilişkin altı tane
prensip tanıtmış
•İkinci Madde: "Bir sistemin tasarımı gizliliğe gerek duymamalı ve
sistemin ortaya çıkarılması tarafları sıkıntıya düşürmemelidir."
•Uygulamayan örnek: GSM hücresel şebekelerde kullanılan A5/1
algoritması 1999 yılında tersine mühendislikle kırıldı.
•Uygulayan örnek: AES (Advanced Encryption Standard - Gelişmiş
Şifreleme Standardı)

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 20
1. Şifrelemeye Giriş – Şifre Çözme Türleri

•Bilinen en eski kriptanaliz kitabı olan “Şifre Çözme Üzerine bir


İnceleme” MS 801 ve 873 arasında yaşamış El-Kindi’ye aittir.
• Kriptanaliz Metotları , Arapça Frekans Analizi
•Şifre Çözme Türleri:
• Sırf şifre metin saldırısı: Kriptanalist sadece şifre metin örneklerini ve düz metin ile ilgili bazı istatistiksel
özellikleri bilmektedir.
• Bilinen düz metin saldırısı: Kriptanalist şifre metin/düz metin çiftlerinin örneğini veya örneklerini elde
etmiştir.
• Seçili düz metin saldırısı: Kriptanalist bir kaç düz metin oluşturabilir ve bunların şifre metinlerini
üretebilir.
• Uyarlamalı seçili düz metin saldırısı: Kriptanalist bir kaç seçili düz metin saldırısı yapar ve elde ettiği
bilgileri yeni saldırılar için kullanır.
•Anahtar Uzayı (Alanı) anahtarın sahip olabileceği tüm muhtemel
değerleri ifade eder. Brute-Force(Kaba Kuvvet) ile çözülemeyecek kadar
geniş olmalı.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 21
2. Basit Şifreleme Algoritmaları

•Kaydırmalı Şifreleme (ShiftCipher):


•En eski şifreleme yöntemlerinden biri Sezar şifresidir. Julius Sezar'a ait
olduğu söylenmektedir.
C = EK(P) = P + K mod n
P = DK(C) = C – K mod n

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 22
2. Basit Şifreleme Algoritmaları
•Değiştirmeli Şifreleme (Substitution Cipher):
•P = C=Z29olsun. K, 29 sembolün (0, 1, ..., 28’in) tüm permütasyonları olsun. Tüm π K permütasyonları için,
•C = Eπ(P) olarak tanımlanabilir. C şifre metinden P düz metine dönüştürme işlemi de π K permütasyonunun
tersi olan π-1 ile yapılabilir.
•Örnek: Aşağıdaki permütasyon tablosu yardımıyla KRİPTO kelimesini şifreleyiniz.
•Çözüm: KRİPTO kelimesini oluşturan her bir harf için hangi harfin karşılık geldiğini yukarıdaki tablodan bulup
şifreleme işlemini her harf için tek tek yapabiliriz:
•K -- h, R -- p, İ -- o, P -- k, T -- f, O -- y
•Eπ(KRİPTO) = hpokfy

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 23
2. Basit Şifreleme Algoritmaları
•Vijener Şifreleme (VigenereCipher):
•P = C=K=(Z29)m olsun (m sabit bir pozitif tam sayı). Bu eşitlik P, C ve K'nin m uzunluğunda olduğunu
göstermektedir.
•K = (k1,k2, ..., km) gibi bir anahtar için,
•EK(x1,x2,...,xm)=(x1+k1,x2+k2,...,xm+km) ve
•DK(y1,y2,...,ym)=(y1-k1,y2-k2,...,ym-km)
•olarak tanımlanabilir (tüm işlemler ise Z29’da yapılmaktadır).
•Daha önce görmüş olduğumuz iki şifreleme yöntemi mono-alfabetiktir (düzmetindeki tüm harfler şifre metin
olarak her zaman aynı harfe dönüştürülür).
•VijenerŞifreleme poli-alfabetiktir (dönüşüm şekli – hangi harf ile yer değiştirileceği – metindeki harfin yerine
göre değişir).
•Poli-alfabetik özellik Vijener Şifresini frekans analizine karşı daha güçlü kılar. Fakat, Kasiski 1863’te Vijener
şifelemeyi kırmayı başarmıştır.
•ÖRNEK: https://www.youtube.com/watch?v=SkJcmCaHqS0

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 24
2. Basit Şifreleme Algoritmaları

•Permütasyon Şifreleme (PermutationCipher):


•Bu şifreleme yönteminde düz metin bir değişime tabi tutulmaz.
•Sadece, düz metindeki karakterlerin yerleri değiştirilir. Örneğin
KRİPTO kelimesi TİRKOP şekline getirilir.
•Genelde permütasyon işlemi tek başına kullanılmaz.

•Önemli Not: Değiştirme ve Permütasyon işlemleri şifrelemede


kullanılan iki ana öğedir ve modern kripto algoritmalarında da
karşımıza çıkacaktır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 25
3. Modern Şifreleme Algortimaları

•Modern Simetrik Şifreleme:


•1. Akış şifreleme (Streamcipher):
• Şifrelemede her bir sembol ayrı ayrı işlenir.
• Şifreleme kuralı düz metin içerisindeki sembolün yerine göre değişir.
• Örnek: Vijener, RC4, A5.
•2. Blok şifreleme (Blockcipher):
• Birden fazla düz metin sembolü tek bir blok olarak işlenir (şifrelenir).
• Örnek: DES, AES, Twofish, RC6.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 26
3. Modern Şifreleme Algortimaları
•DES (Data Encryption Standard - Veri
Şifreleme Standardı):
•64 bit uzunluğundaki bir düzmetin dizisi
(bloğu) 56 bitlik bir anahtar ile şifrelenir.
•Algoritma üç basamaklıdır:
•1. Başlangıç Permütasyonu (BP): x bloğuna
uygulanır ve xo elde edilir. xo, 32 bit
uzunluklarında L0 sol yarım bit dizisi veR0
sağ yarım bit dizilerinden oluşur.
xo= BP(x)=L0 R0
•2. 16 round: Daha sonra belli bir fonksiyon
16 kez kullanılarak şifreleme gerçekleştirilir.
•3. Ters Permütasyon: Son olarak 1.
adımdaki permütasyonun tersi uygulanır.
y = BP-1(R16L16)

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 27
3. Modern Şifreleme Algortimaları
•DES şifrelemenin bir roundu (döngüsü) Feistel
yapısı denilen işlem ile gerçekleştirilir.
•DES’in çalışmasındaki ana işlemi "f" fonksiyonu
belirlemektedir.
•Bu fonksiyon şu basamaklardan oluşur:
•1. Genişleme fonksiyonu olan E ile 32 bitlik girdi
değerinden 48 bit bir değer üretilir. Bu değerde
girdi değerindeki 16 bit iki kere kullanılır.
•2. B = E(A) + J değeri hesaplanır (J anahtardan
üretilen 48 bit uzunluğundaki bir değerdir).
Buradaki toplama olarak gösterilen işlem XOR
(exclusiveor - dışlamalı veya) işlemidir.
•3. 8 tane değiştirme kutusu (S-kutusu - S-box)
kullanılarak Cj=Sj(Bj) değerleri hesaplanır. (j
indeksi 1 ve 8 arası değerler alır).
•4. Sabit bir permütasyon olan P uygulanır. https://www.youtube.com/watch?v=Y61qn_SQl40

https://www.tutorialspoint.com/cryptography/data_encryption_standard.htm
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 28
3. Modern Şifreleme Algortimaları
•DES ile ilgili tartışmalar:
•1970’lerin başına kadar kriptografi alanında askeri alanın dışındaki çalışmalar sistematik değildi.
•İlk Ticari Şifreleme, IBM Lucifer şifresine dayanmaktadır.
•ABD devlet standardı olarak kabulü kriptografiye geniş bir ilgi doğurdu ve bu sayede günümüzde bilinen
anlamıyla kriptografi bilimi doğmuş oldu.
•Diğer taraftan, DES şu iki sebepten dolayı pek çok tartışmanın da konusu olmuştur.
•Lucifer’in yapısı ciddi biçimde değiştirilmişti ve DES’in tasarım kriterleri asla açıklanmamıştı.
•DES anahtar boyutu 128-bitten 56-bite düşürülmüştü.
•DES’i kaba kuvvet saldırısından daha hızlı bir şekilde kırabilecek üç önemli saldırı türü keşfedildi: diferansiyel
kriptanaliz, lineer kriptanaliz ve geliştirilmiş Davies saldırısı.
•İlginç bir durum ise DES’in tasarımcılarının diferansiyel kriptanaliz yönteminin akademik camia tarafından
keşfinden çok önce haberdar olmaları ve bu saldırıları dikkate alarak DES’i tasarlamış olmalarıydı.
•Şu anda DES’in kriptanalizine ilişkin en tehlikeli saldırı hala kaba kuvvet saldırısıdır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 29
3. Modern Şifreleme Algortimaları
•Kısa Anahtar Sorununun Çaresi:
• Üçlü-DES (3DES)
• DESX
• Bağımsız alt anahtarlar
• Yavaş anahtar planı
• Anahtara bağlı S-kutuları
•DES iki farklı anahtar ile (K1 ve K2) üçlü bir şifreleme (Şifrele-Şifre Çöz-Şifrele)yapmaktadır.
•Üç yerine iki anahtar kullanılmasının sebebi 112 bit anahtarların kaba kuvvet saldırılarına
dayanıklılık konusunda yeterli görülmesidir.
•K2'nin şifre çözme şeklinde kullanılmasının sebebi K1 = K2 durumunda 3DES'iDES’e eşit
kılmaktır.
•Bu sayede bu sistem DES sistemi ile uyumlu çalışabilmektedir.
•Örneğin bir 3DES donanımı ile şifrelenmiş bir mesajın DES donanımı ile çözülebilmesi için
3DES için anahtarları K1 = K2 eşitliğini sağlayacak şekilde seçmek yeterlidir.
•https://www.youtube.com/watch?v=2O4dsChgcg8

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 30
3. Modern Şifreleme Algortimaları

•AES (AdvancedEncryptionStandard - Gelişmiş Şifreleme Standardı):


•3DES’in problemi güvenlikten çok hızıdır.
•ABD’de bulunan NIST (NationalInstitute of StandardsandTechnology), 1997
yılında doğrudan yeni bir şifre tasarlamak veya tasarlatmak yerine kriptografi
dünyasından öneriler istedi ve bir yarışma düzenledi.
•Kriptografi dünyasında bir hayli uzun süren araştırmalar ve tartışmalardan
sonra, NIST 26 Kasım 2001 tarihinde Rijndael olarak bilinen algoritmayı seçti ve
AES olarak standartlaştırdı.
•AES’inDES’ten farklı bir yapısı vardır. Bir Feistel yapısı kullanmamaktadır.
•AES değiştirme ve permütasyon kullanan, 128-bit bloklu, farklı versiyonlarında
(AES-128, AES-192, AES-256)128/192/256 bitlik farklı anahtar boyutları
vesırasıyla 10/12/14 döngü içeren bir şifredir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 31
3. Modern Şifreleme Algortimaları

•AES’in şifreleme metodu:


•İlk işlem 16-baytlık düzmetini 16-baytlık döngü anahtarı ile
XOR’lamaktır (1 bayt = 8 bit).
•Daha sonra 16 bayttan her biri, 8-bit girdileri 8-bit çıktılara çeviren S-
kutularının birer indeksi olarak kullanılır.
•Bunu bayt konumlarının permütasyonlarının alınması izler.
•Son olarak, baytlar geri döndürülebilirler doğrusal bir fonksiyondan
geçirilirler.
https://www.tutorialspoint.com/cryptography/advanced_encryption_standard.htm

https://www.youtube.com/watch?v=WLm5_cxeywY

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 32
3. Modern Şifreleme Algortimaları

•AES’de, DES’teki fonksiyonel blokların bazılarını görebiliriz. (XOR işlemi veriye anahtar
bilgilerini ekler, S-kutuları dönüşümün doğrusal olmasını engeller, bayt karıştırma ve
doğrusal fonksiyon işlemleri dağılma - difüzyon sağlar).
•Dönüşümün doğrusal olmaması “doğrusal kriptanaliz” yöntemine karşın bir koruma
sağlar.
•Dağılma terimi ile kastedilen özellik düz metin ile şifre metin arasındaki ilişkinin
mümkün mertebe karmaşık hale getirilmesidir.
•Genelde dağılma kıstası düz metindeki 1 bit değişiklik sonucunda şifre metinde oluşan
değişiklik miktarı ile ölçülür ve idealde şifre metinin ortalamada yarısının değişmesi
beklenir.
•AES şifrenin her bölümü için farklı bir görev bulunduran temiz bir tasarıma sahiptir.
•AES’i doğru ve güvenilir bir şekilde gerçekleştirirseniz şifrelemeyi sizin kendinizin
tasarladığı bir algoritmaya nazaran çok daha güvenli hale getirmiş olursunuz (Kerckhoffs
Prensibini hatırlayalım).

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 33
TBİL-621-Bilgi
Güvenliği
3. Hafta Açık Anahtarlı Şifrelemeye Giriş
1. Açık- Anahtarlı Şifrelemeye Giriş

•Asimetrik Şifreleme
•Public Key (Açık/Ortak Anahtar) – Private Key (Gizli/Özel Anahtar)
•Veri göndermek isteyen karşı tarafın Public Key değerini bilmelidir.
•Şifre çözme algoritması DK bilinmediği taktirde çözülmesi zor(imkansız) bir
problem olmalıdır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 35
2. RSA Şifreleme Sistemi

•RSA (Rivest–Shamir–Adleman) 1978


•Bir sayının asal çarpanlarına ayrılması probleminin zorluğuna
dayanır.
•f(x) = xe mod n işleminde e,n bilinse de işlemin tersinin
hesaplanması zordur.
•RSA algoritması anahtar üretimi, şifreleme ve şifre çözme
olmak üzere 3 basamaktan oluşmaktadır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 36
3. RSA Şifreleme Sistemi – Anahtar Üretimi

1. İki adet birbirinden değişik asal sayı seçin, bunların adını da p


ve q koyalım.
Güvenlik amacıyla p ve q sayıları rastgele seçilmeli ve yakın
uzunlukta olmalıdırlar.
2. n=p.q hesaplanır. (n açık ve gizli anahtar için mod olur.)
3. Bu sayıların totient'ı hesaplanır. ϕ(n) = ( p – 1 ) ( q – 1 )
Totient bir tam sayının o sayıdan daha küçük ve o sayı ile aralarında
asal olan sayma sayı sayısını belirten fonksiyondur.
ϕ(10) = 4 , 10 dan küçük ve asal olan 1,3,7,9
p asal bir sayı ise ϕ(p) = p-1 ve iki asal sayının çarpımının totient'ı
ϕ(n) = ( p – 1 ) ( q – 1 )

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 37
3. RSA Şifreleme Sistemi – Anahtar Üretimi

4. 1 < e < ϕ(n) , şeklinde ϕ(n) ile aralarında asal bir e pozitif
tamsayı seçilir. gcd(e, ϕ(n)) = 1
e açık anahtarında kullanılır.
5. d.e ≡ (1 mod ϕ(n) ) olacak şekilde bir d seçilir.
Ör: d.e = 1 + x . ϕ(n) herhangi bir x tamsayısı varsa.
d = (1 + x. ϕ(n) )/e
d özel anahtar üssü olarak saklanır.
d değeri genellikle Genişletilmiş Öklid Algoritması kullanılarak
hesaplanır.
Açık anahtar n ve e den oluşur.
p, q, ve ϕ(n) değerleri gizili kalmalıdır. Çünkü d'yi hesaplamada
kullanılır.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 38
4. RSA Şifreleme Sistemi – Şifreleme

•Alice ortak anahtarı (n,e)’yi Bob’a gönderir, özel anahtarını


gizli tutar.
•Bob M mesajını Alice’e göndermek istediği zaman ilk olarak
M'yi ters çevrilebilir bir protokol ile (dolgu şeması) 0 < m < n
olacak şekilde bir m tamsayısına dönüştürür.
•Daha sonra şifrelenmiş mesaj c aşağıdaki gibi hesaplanır.
• c = me (mod n)
•Bob c'yi Alice'e iletir.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 39
5. RSA Şifreleme Sistemi – Şifre Çözme

•Alice m mesajını özel anahtarı olan d'yi kullanarak


şifreli mesaj c'den şu şekilde çözer.
• m = cd (mod n)
•Alice m'yi bulduktan sonra dolgu şemasının tersini alarak
orijinal mesaj M'yi elde eder.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 40
6. RSA Şifreleme Sistemi – Örnek

•İki farklı asal sayı seçelim. p=61 q = 53


•n = pq değerini hesapla 61x53 = 3233
•Totient değerini hesaplayalım. ϕ(3233) = (61-1)(53-1) = 3120
•1 ile 3120 arasında 3120 ile aralarında asal olan bir e değeri seçelim. e değerini asal
seçersek sadece 3120’nin böleni olup olmadığını kontrol etmemiz gerekir. e=17 olsun.
•d.e ≡ (1 mod ϕ(n) )
•d= 2753 , 17 x 2753 = 46801 = 1 + 15 x 3120
•Public key(Ortak Anahtar) (n=3233 , e =17)
•Private key(Gizli Anahtar) (n=3233 , d =2753)
•m=123 iken c = 12317 mod 3233 = 855
•m = 8552753 mod 3233 = 123

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 41
7. RSA Şifreleme Sistemi - Problemler

•Eğer bir saldırgan n değerini çarpanlarına ayırabilirse RSA sistemini


kırabilir. Çünkü n’nin çarpanlarına ayrılması (p-1)(q-1) çarpımının
hesaplanmasını sağlar. Daha sonra, açık değer e kullanılarak
genişletilmiş Öklid algoritması ile d elde edilebilir.

•1024-bit sayıların çarpanlarına ayırılmasının günümüzün en yeni


ve hızlı algoritmaları kullanılsa bile makul sürelerde kimse
tarafından başarılamayacağına inanılıyor. 2048-bit modüle sahip
şifreleme ise daha uzun süreli koruma sağlamak için tercih
edilebilir fakat performansı bir hayli düşüktür.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 42
TBİL-621
Bilgi Güvenliği
4. Hafta - Ayrık Logaritma Problemi ve Şifreleme
Uygulamaları
Ayrık Logaritma Problemi ve Şifreleme Uygulamaları

•RSA – Çarpanlara Ayırma probleminin zorluğu


•DiffieHellman, Elgamal ve DSS – Ayrık logaritmanın hesaplanmasının
zorluğu
•Ayrık Logaritma Problemi Tanımı:
•“Mod p’de bir İlkel kök(primitive root)” mod p’de üs alınarak sıfır
olmayan (1’den p-1’e kadar) tüm sayıların üretilebildiği bir g sayısıdır.
•Örnek: 5 sayısı mod 7’de bir ilkel köktür.
•Çünkü 1’den 6’ya tüm sayılar 5’in üsleri cinsinden ifade edilebilir.
•51=5, 52=4, 53=6, 54=2, 55=3, 56=1 (hepsi mod 7'de)
•Yani y = 5x mod 7 denklemini her zaman çözebiliriz.
Diffie-Hellman Anahtar Değişimi:

•Açık anahtar kriptografisini ilk öneren çalışma, 2 yıl sonra RSA


standartlaşıyor.
•Diffie-Hellman ayrıca açık kanaldan anahtar paylaşım problemini
de çözüm getirmiştir.
•Alice ve Bob simetrik şifreleme (ör:AES) ile haberleşmek istemekte
ama ortak anahtarı açık kanalda çaldırmadan nasıl paylaşacaklar?
•Diffie-Hellman algoritmasında bu ortak anahtarın ayrık logaritma
probleminin çözüm zorluğuna dayanan paylaşımı uygulanmaktadır.
•Adımlarına bakalım:

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 45
Diffie-Hellman Anahtar Değişimi:

•Başlangıçta herkes tarafından bilinmesinde bir problem olmayan büyük bir asal sayı p ve
mod p’de ilkel kök olan bir g seçilir.
•Hem Alice hem de Bob, birbirlerinden bağımsız bir şekilde, 1 ile p-2 arasında rasgele bir
sayı seçerler. Alice’in gizli sayısının Sa, Bob’un gizli sayısının Sb olduğunu varsayalım.
•Alice Ta = gSa mod p ‘yi hesaplar ve Bob’a Ta‘yı gönderir.
•Bob Tb = gSb mod p‘yi hesaplar ve Alice’e Tb‘yi gönderir.
•Alice (Tb)Sa mod p’yi hesaplar. Bob (Ta)Sb mod p’yi hesaplar.
•Hem Alice hem de Bob aynı sayıya (gSaSb) ulaşmışlardır ve bu sayı veya bu sayının özeti
ortak anahtar olarak kullanılabilir.
•Bu algoritma Ta veya Tb varken, Sa veya Sb’yi hesaplamanın işlemsel olarak güç olduğu
varsayımına (ayrık logaritmaları hesaplamanın zorluğu) dayanan güvenli bir anahtar
değiştirme algoritmasıdır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 46
Diffie-Hellman Anahtar Değişimi Örneği

•Alice ve Bob ortak p=23 ve g=5 için anlaşır. (5 mod23'de ilkel köktür.)
•Alice gizli bir tamsayı a=4 seçer ve Bob'a A = ga mod p gönderir.
A = 54 mod 23 = 4
•Bob gizli bir tamsayı b=3 seçer ve Alice'e B = gb mod p gönderir.
B = 53 mod 23 = 10
•Alice s = Ba mod p hesaplar. s = 104 mod 23 = 18
•Bob s = Ab mod p hesaplar. s = 43 mod 23 = 18
•Artık Alice ve Bob ortak paylaşabilecekleri 18 değerini üretmiştir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 47
Elgamal Şifreleme:

•İlk defa1984’de Taher Elgamal ayrık logaritma problemine


dayanarak açık anahtar şifreleme ve imza algoritması
tasarlamıştır.
•Alice (p, g, gSa) ‘yı açık anahtarı olarak seçer (ve Bob’a
güvenli bir şekilde ulaştırır) ve Sa‘yı özel anahtarı olarak
saklar.
•Mesaj M için, Bob gy mod p ve (gx)y.M mod p değerlerini
oluşturur ve iki değeri de Alice’e gönderir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 48
Elgamal Şifreleme:

•Pratikte, hem RSA hem de Elgamal şifrelemesi gizli anahtarlı


bir algoritmada anahtar olarak kullanılacak kısa mesajları
şifrelemede kullanılır.
•Sonrasında gizli anahtar algoritmalarından biri tercih edilir.
• Bu ikili kullanım melez şifreleme olarak adlandırılır ve
verimlilik amacıyla tercih edilir.
•Gizli anahtarlı şifreleme algoritmaları açık anahtarlı
algoritmalardan çok daha hızlıdırlar.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 49
Eliptik Eğri Kriptografisi (EllipticCurveCryptography):

•Şimdiye kadar ayrık logaritma problemini sonlu cisim Zp‘de


dikkate aldık (p’nin asal sayı olduğu mod p’de).
•Fakat problemi başka yapıda olan sonlu cisimlerde de
kullanabiliriz.
•Örneğin, önceki açık anahtar algoritmalarının tümünü (RSA hariç)
eliptik eğriler kullanarak da çalıştırabiliriz.
•Fikir temelde aynı olsa da uygulama biraz daha karmaşıktır.
•Eliptik eğrileri kullanmanın faydası aynı güvenlik seviyesi için daha
küçük anahtar boyutlarını kullanabilmektir.
•Bunun sebebi ayrık logaritma probleminin çözümünün eliptik
eğrilerde daha zor olmasıdır.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 50
Kriptografik Anahtar Büyüklüklerini Seçme:
•Genelde kripto algoritmalarının
güvenliği anahtar büyüklüğünün
artması ile artar.
•Öte yandan daha uzun anahtar
uzunluğu genelde daha yavaş
çalışma anlamına gelmektedir.
•Bu sebeple kripto algoritmalarının
anahtar boyutlarını seçmek
uygulamamız için istediğimiz
güvenlik seviyesini belirlememiz
için gereklidir.
•http://www.keylength.com/

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 51
https://www.keylength.com/en/compare/

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 52
TBİL-621
Bilgi Güvenliği
5. Hafta – Sayısal İmzalar
Giriş

•Sayısal İmza (Digital Signature):dijital mesajların veya belgelerin


gerçekliğini doğrulamak için imza ve matematiksel bir şemadır.
•Sayısal ve ıslak imzaların sağladığı üç önemli işlev:
1. Mesajın kimlik bilgisinin doğrulanması (Message Authentication)
2. Mesaj bütünlüğü (Message Integrity)
3. İnkar-edememezlik (Non-repudiation)
• Analoji ıslak imza ile kaleme alınan bir kira sözleşmesi
• Elektronik-İmza & Kriptografi Yöntemi
• Dijital verinin kolay kopyalanmasına karşı koruma
RSA İmzaları

•RSA'da şifreleme ve şifre çözme işlemleri değiştirilebilen


(commutative)'dir.
•(me)d mod n = (md)e mod n
•Bir mesaja (şifrelenmeden) RSA şifre çözümü işlemi uygulansa elde
edilen değer o mesaja ait bir sayısal imza oluşturur.
•imzam = mdmod n
•Eğer (imzam)e = m ise imzam doğrudur.
•İmza veya mesajda yapılan bir değişiklik veya farklı bir özel anahtar (d)
kullanımı sonrasında yukarıdaki doğrulamanın yapılamaz

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için " Özgür Can TURNA " tarafından hazırlanmıştır. 55
RSA İmzaları
•Bir açık anahtarlı şifreleme algoritmasının
şifreleme ve şifre çözme işlemlerinin yerini
değiştirerek sayısal imza algoritması elde
edilmesi sadece RSA algoritması için
geçerlidir. Örneğin Elgamal İmzalama
algoritması Elgamal şifrelemenin ters hali
değildir.
•İmzalama ve imza doğrulamanın
algoritma-bağımsız genel çalışma prensibi
gösterilmektedir.
•İmzalama işleminin mesajın kendisine
değil de mesajın özetine (özet fonksiyonu –
hash function kullanarak) uygulanmasının
sebebi imzalama algoritmaların belli bir
uzunluktan büyük mesajlara doğrudan
uygulanamamasıdır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için " Özgür Can TURNA " tarafından hazırlanmıştır. 56
Elgamal İmzaları

•Elgamal, ayrık logaritma problemine dayanan bir imzalama


algoritması inceleyeceğiz. (RSA'den daha karmaşık)
•Şifrelemede olduğu gibi, Alice(p, g, gSa) ‘yı açık anahtarı
olarak Bob’a iletir ve Sa ‘yı gizli anahtarı olarak saklar.
•Mesaj M’yi imzalamak istediğinde rastgele bir değer olarak
y’yi üretir ve gymod p’yi hesaplar.
•s imzasını üretmek için şu denklemi çözer:
s=(M – Sa.gy)/y mod p
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için " Özgür Can TURNA " tarafından hazırlanmıştır. 57
Elgamal İmzaları – Doğrulama İşlemi

•Bob’a mesaj M’yi, gy mod p değerini ve imza olarak da s’yi gönderir.


•Bob s’nin doğru olup olmadığını kontrol etmek için şu denklemin
doğruluğundan faydalanır.
Sa.gy+ys=M mod p
•ve bu denklemin doğruluğunun her iki tarafın g’nin üssü olduğu
durumda da korunduğu gerçeğinden hareketle imza kontrolünü yapar:
(gSa)^gy+(gy)s=gM mod p
•Hatırlarsak, buradaki tüm değerler açık anahtar veya imza ile birlikte
iletilen değerlerdir.
•Bu sebeple bu kontrolü Bob yapabildiği gibi açık anahtara sahip herkes
yapabilir. Dijital imza ve dosya ağ üzerinde iletilirken değiştirilebilir mi?
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için " Özgür Can TURNA " tarafından hazırlanmıştır. 58
TBİL-621
Bilgi Güvenliği
6. Hafta - Özet (Hash) Fonksiyonları / Cryptographic
Hashes
Giriş

• Özet fonksiyonları bir çok farklı amaç için kullanılır.


•En yaygın kullanımı veri bütünlüğü (integrity) kontrolüdür.
•Kriptoloji de CIA koşullarını sağlamak için bir çok araç
öğrendik.
•Bu üçgende; yedek alma, acil afet planlaması, yedek
donanım Avaliability(Erişebilirlik) için, şifreleme yöntemleri
Confidentiality(Gizlilik) için, Özet fonksiyonlar ise
Integrity(Bütünlük) için kullanılmaktadır.
Özet Fonksiyon Tanımlaması

•Özet Fonksiyonu özel bir algoritma olarak tanımlanmaktadır.


•H değişken boyuttaki herhangi bir veriye uygulanabilir.
•H sabit uzunlukta bir çıktı üretir.
•H(X) hesaplanması kolay bir fonksiyondur. Yazılımsal ve donanımsal olarak
gerçeklenebilir olmalıdır ve her X girdisi için çalışabilmelidir.
•Tek Yönlülük (One-Way) özelliği: H(x) = h denkleminde herhangi bir h için x
hesaplanamaz olmalıdır.
•Zayıf Çarpışma Direnci (Weak Collision Resistance) özelliği: Bir x değeri için
h(x)=h(x’) eşitliğini sağlayan bir x’ değerini bulmak zor olmalıdır.
•Çarpışma Direnci (Collision Resistance) özelliği: h(x)=h(y) eşitliğini sağlayan
herhangi bir x, y çiftini bulmak zor olmalıdır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 61
Merkle-Damgard

•Ralph Merkle 1979 Doktora çalışmasında ortaya attığı özetleme


yaklaşımı MD5, SHA-1, SHA-2 ve bir çok özet fonksiyonunda
kullanılmıştır.
•Fonksiyon çıktının belli bir boyutta olması için bir padding işlemi
ile başlar. Çıktı biti algoritmaya göre farklı olabilirken genel olarak
512-bit'tir.
•Mesajın bloklara ayrılarak işlenen her bir bloğun bir sonrakinin
işlenmesinde kullanılması sağlanır. Böylece tüm mesajı sıkıştırmış
gibi davranır.
•İşlem sonuna 64-bit orijinal mesaj uzunluğu işlenir.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 62
Özet Algoritmalarının Blok İşleme Görünümleri
MD5 algoritması
SHA1 algoritması

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 63
Özet Fonksiyonların Uygulama Alanları

•Bir dosyanın (veya tüm sistemin) bütünlük kontrolü


•Parola güvenliği
•Uzun mesajları imzalamak (Bir önceki konu)
•Mesaj doğrulama kodu üretmek için – Message
Authentication Code (MAC): MACK(M)=h(K,M)
•Özet Zincirleri: Bir özet fonksiyonunu ilk çekirdek değerden
(s) başlayarak n kez uygularsak n uzunluğunda bir özet zinciri
elde etmiş oluruz: hn(s) = h (hn-1(s))
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 64
Şifrelerin Hash ile Saklanmasının Güvenliği

•Eğer elimizde tüm hash değerleri olursa kullanıcı parolası elde edilebilir mi?
•Aşağıda Windows'un kullandığı NTLMv2 Hash algoritması için bir tablo verilmektedir.
•Bu tarz tablolara "Rainbow Table" denmektedir.
•https://crackstation.net/
•http://rainbowtables.it64.com/
•Rainbow saldırılarına karşı koruma yöntemi Salting (Tuzlama) kullanılır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 65
Bilinen Hash Algoritmaları

•İyi bir özet fonksiyonunun başta belirtilen 3 özelliği taşıması gerekmektedir.


•Bunlardan ABD'de ve Dünya genelinde en yaygın kullanım görenleri MD5 ve
SHA algoritmalarıdır.
•Checksums: Özet Toplamı
•MD5: 128-bit, RFC 1321 , MD4,MD5 (2004 Çarpışma Direncinin zayıflığı
gösterildi), 2008 MD6 (Performans problemi)
•SHA: Tüm versiyonların Çarpışma Direnci Yüksektir. SHA-1 160-bit National
Security Agency (NSA) tarafından Dijital İmza'da kullanıldı.
•SHA-2 (SHA-256 , SHA-512) (Kırpılmış sürümleri SHA-224 , SHA-384)
•SHA-3 Kasım 2012'de standartlaşmış son sürümüdür.
•SHA-1 en çok kullanımda olan özet fonksiyonudur. SHA-2 (FIPS PUB 180-2),
PGP, SSL, TLS, SSH, IPSec ve bir çok güvenlik protokolünde kullanımdadır.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 66
Bilinen Hash Algoritmaları

•RipeMD: RACE Integrity Primitives Evaluation Message Digest,


160-bit Hans Dobbertin, Antoon Bosselaers and Bart Preneel
tarafından geliştirilmiştir. 128,256 ve 320-bit versiyonları da vardır.
•Tiger: 192-bit, Ross Anderson ve Eli Biham, 1995
•HAVAL: Farklı bit uzunluklu özetler üretebilmektedir. 128, 160,
192, 224, 256, Yuliang Zheng, Josef Pieprzyk, Jennifer Seberry,
1992
•NTLM: NTLM v2 (New Technology Lan Manager version 2)
Windows İşletim sisteminin
•Whirlpool, Skein, FSB, Gost, BLAKE, Grøstl, SWIFFT
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 67
TBİL-621
Bilgi Güvenliği
7. Hafta – Diğer Kripto Araçları
Mesaj Doğrulama Kodu –
Message Authentication Code (MAC)
•Önceki gördüğümüz Hash algoritmaları veri bütünlüğü (Integrity)
sağlamaktadır.
•Eğer bir mesaj yol üzerinde değişime uğrarsa özet fonksiyonlar
bunu fark edebilir.
•Fakat bu değişim bilinçli bir saldırı ile yapılıyorsa özetin de
değişme ihtimali vardır.
•Bu senaryoda Hash algoritmaları güvenliği koruyamazlar.
•Mesaj Doğrulama Kodu (MAC) bu amaçla sayısal imzalar gibi
mesaja eklenen bir parçadır. Gizliliği amaçlamamaktadır.
•MAC, gizli anahtar kriptografisi kullanarak mesajın değişmeden
geldiğini doğrular.
Mesaj Doğrulama Kodu –
Message Authentication Code (MAC)
•Haberleşmek isteyen iki taraf aynı k gizli anahtarına sahiptir.
•Bütünlük kontrolü aşağıdaki 4 adım ile sağlanır.
1.Karşınızdaki kişi, göndereceği e-posta mesajı P için gizli anahtar k
ile bir MAC değeri hesaplar: M1k = MAC(M,k)
2.Daha sonra size hem P’yi hem de M1k değerini gönderir.
3.Siz P’yi aldığınızda elinizdeki k ile yeni bir MAC hesaplarsınız, bu
MAC’a M2k diyelim.
4.Eğer M2k ile M1k birbirine eşit ise mesaj istediğiniz kişiden
değişmeden gelmiştir. Eğer değil ise ya mesaj başkası tarafından
gönderilmiştir ya da size gelirken ağ üzerinde değişikliğe
uğratılmıştır.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 70
Mesaj Doğrulama Kodu –
Message Authentication Code (MAC)
•Dönüşsel artıklık denetimi (CRC – Cyclic Redundancy Check) ve benzeri yöntemlerle de
mesaja eklemeler yaparak mesajda oluşan istenmeyen fiziksel hatalar bulunmaya
çalışılır.
•Fakat MAC bu yöntemlerden çok önemli bir farkı vardır. MAC algoritması akıllı
düşmanlar karşısında bile veri bütünlüğünü koruyabilir.
•Hashing Message Authentication Code (HMAC) de diğer bir başarılı alternatiftir.
•Öte yandan CRC ve benzeri yöntemler kullanıldığında mesajda yapılan bir değişiklik ile
birlikte eklenen kısımda da değişiklik yapılabileceği için akıllı düşmanlara karşı etkisizdir.
• Bu sebeple bu yöntemlerin güvenlik (security) yöntemleri değil emniyet (safety)
yöntemleri olduğunu söyleyebiliriz.
•Bir diğer standart yol: Şifre Blok Zincirleme kipinde simetrik bir şifreleme algoritması
kullanarak karşı tarafa düz metin mesaj ile şifre metinin son bloğunu göndermektir.
• Ayrıca özel olarak mesaj doğrulama kodu üretmek için tasarlanmış algoritmalar da
vardır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 71
Rassal Sayı Üreteçleri

•Kripto algoritmaları anahtarlar, başlangıç vektörleri, vb. için,


kriptografik protokoller ise tek kullanımlık "nonce" ve "istek mesajı
(challenge)" gibi değerleri üretmek için başkaları tarafından tahmin
edilemeyecek rastgele bit dizileri üretmeye ihtiyaç duyarlar.
•Sayısal ortamlarda kullanılan bilgisayar ve benzeri teknolojiler son
derece deterministiktir (rassallık içermezler).
•Bu sebeple güvenli rastgele (rassal) sayı üretmek zor ve çoğu
zaman gözden kaçırılan önemli bir güvenlik problemidir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 72
Rassal Sayı Üreteçleri

•Rassallık (random) ve sözde-rassallık (pseudo-random) kavramları arasında


şöyle önemli bir fark vardır.
•Rassal sayı üreteçleri tamamen tahmin edilemez şekilde rassal sayı üretirler
ve özel donanım gerektirirler.
•Örneğin, birim zamanda ortamdaki radyoaktif atom sayısını sayan bir donanım
gibi.
•Fakat çoğu bilgisayar bu ve benzeri bir donanıma sahip değildir. Bu yüzden
çoğu kez sahip olunan tek seçenek sözde-rassal sayılar üretmektir.
•Sözde-rassal üreteçler deterministtik algoritmalar bulundurur. Oluşturacağı
tüm sayı dizisi ilk çekirdek değer tarafından belirlenir. Fakat eğer bu çekirdek
değer tahmin edilemez bir değer ise (rassal olarak üretilmiş ise) oluşturulan
sözde-rassal sayılar gerçek bir rassal sayı üreteci tarafından üretilen sayılardan
ayırt edilemez olabilirler.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 73
Rassal Sayı Üreteçleri
•h() özet fonksiyonu kullanılarak sözde-rassal bir sayı üreteci şu şekilde çalıştırılabilir:
R1= h(çekirdek)
R2 = h(çekirdek, R1)
...
Rn = h(çekirdek, Rn-1)

•Çekirdek, değer tüm dizinin rassallığı ve dolayısıyla güvenliği için çok önemlidir.
•Üretilen rassal sayının uzun olması eğer çekirdek değer kısa ise güvenliği sağlamak için yeterli
olmaz.
•Simetrik şifrelerin anahtar uzunlukları veya özet fonksiyonlarının çıktı uzunlukları gibi çekirdek
değerin seçildiği uzayın boyutu da kaba kuvvet saldırılarına karşı koymada çok kritik öneme
haizdir.
•Çekirdek değer üretmek için bazı alternatifler şöyledir.
• Kullanıcı davranışlarının yüksek-çözünürlükteki zaman bilgisi (mesela tuş vuruşları)
• Yüksek-çözünürlüklü zaman
• Yüksek-çözünürlükte disk arama zamanı

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 74
Bir Pseudo-random Sayı Üretici Özellikleri

•Uncorrelated sequences: İlişkisiz alt bit kümeleri olmalı. Bitlerin


bir kısmı diğeri ile alakasız olmalı
•Long period: Uzun Periyotlu olmalı. Tekrar eden bir desen
içermemelidir. Bu imkansız olsa da yeterince uzun olmalıdır.
•Uniformity: İçerdiği bir sıfır dağılımının uniform olmalı. Eğer belli
bir miktar denemede bir sıfır dağılımı eş gitmiyorsa uniform
değildir.
•Computational indistinguishability: PRNG belli bir alt küme
çıktısından yola çıkarak başka bir alt küme hesaplanamamalıdır.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 75
Rasgelelik Testi

•1-D Testi : Frekans testidir. Rastgeleliği ispatlamasa da 1-D


testini geçemeyen bir algoritma PRNG olarak kullanılamaz.
•0 ila 1 arasında değer alan bir üreteçte aşağıdaki gibi
aralıklara gelen denemeler belli bir aralıkta toplanmıyorsa 1-
D Testini geçmiştir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 76
Rasgelelik Testi

•Equidistribution: Üretilen değerlerin aritmetik ortalamasının


0-1 arası için 0.5'e yaklaşması beklenir.
•Runs Test:
•Test for Longest Run of 1s:
•Poker Test:
•Statistical Tests:

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 77
TBİL-621
Bilgi Güvenliği
8. Hafta – Kimlik Doğrulama
Giriş

•Kimlik Doğrulama (Authentication): Bir kişinin gerçekten belirtilen kişi


olup olmadığının belirlenmesidir.
•İki çeşit kimlik doğrulamadan bahsedebiliriz:
•Varlık Kimlik Doğrulama (Entity Authentication): Bir tarafa (onaylayan
taraf) diğer tarafın (talep eden taraf) kimliğinin beyan ettiği gibi
olduğunu gösterir. Bu şekilde bir kişinin başka bir kişiymiş gibi
davranmasının önüne geçilmiş olur.
•Mesaj Kimlik Doğrulama (Message Authentication): Mesajların kim
tarafından gönderildiğini doğrulamaya yarar (daha önce tartışılmıştı).

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 79
Varlık Kimlik Doğrulama (Entity Authentication)

•Bilgi Güvenliğindeki ana hedeflerden biri:


•Bazı erişim ayrıcalıkları sadece bazı kişiler tarafından kullanılmalıdır.
•Yetkilendirme - erişim denetimi
•Genelde yetkilendirme kimlik doğrulamayı takip eder.
•Bazen yetkilendirme için kimlik doğrulama yapılmaz veya mahremiyet
açısından yapılmaması tercih sebebidir.
•Bunun yerine örneğin bir güvenlik belgesinin (delilinin) ortaya konması
istenir.
•Bir belediye otobüsüne binmek için kimliğin doğrulanmasına gerek
yoktur, otobüs şoförüne otobüs biletini göstermek yeterlidir).

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 80
Varlık Kimlik Doğrulama (Entity Authentication)

•Varlık kimlik doğrulama kısaca kimlik doğrulama olarak da


isimlendirilir.
•Kimlik tanıma ve kimlik doğrulama arasındaki fark:
•Kimlik Tanıma (Identification): "Kimsin?" sorusunu sorar.
•Kimlik Doğrulama (Authentication): "İspatlar mısın?"
sorusunu yöneltir.
•Örneğin bir e-posta sistemine giriş yaparken kullanıcı
ismimizi girmemiz Kimlik Tanıma, parolamızı girmemiz ise
Kimlik Doğrulama amaçlıdır.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 81
Varlık Kimlik Doğrulama

•Genellikle, kimlik doğrulama üç farklı yol ilegerçekleştirilir:


•Akıllı Kartlar (Neye sahipsin?)
•Biyometri (Nesin?)
•Parolalar (Ne biliyorsun?)
•Bu yöntemler bazen güvenliği artırmak için beraber kullanılabilir.
Eğer ikisi birlikte kullanılırsa, buna iki-boyutlu (two-factor) kimlik
doğrulama denir. Üç-boyutlu kimlik doğrulama da mümkündür.
•Çok boyutlu kimlik doğrulamada, bazen yer - adres (neredesin?)
bilgisi ek bir unsur olarak kullanılabilir. Bu dördüncü yöntem
güvenlik nedeniyle nadir olarak tek başına kimlik doğrulamada
kullanıldığı için yukarıdaki listeye eklenmemiştir.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 82
Parolalar

•Parola tabanlı kimlik doğrulama terimi daha önce paylaşılan gizli bir veriyi
(parola) bildiğimizi ispatlamamızı içeren bir prosedürü kapsar.
•Tek başına kullanıldıklarında güvenliğin en düşük seviyede olduğu kimlik
doğrulama yöntemi denebilir.
•Yüksek güvenlik gerektirenlerde dahil olmak üzere bir çok uygulamada neden
bu yöntem tercih edilmektedir?
• Kullanıcı ismi - parola çifti kolayca uygulanabilir bir sistemdir.
• Kullanıcı perspektifinden de kullanımı kolay bir yöntemdir.
• Diğer kimlik doğrulama yöntemleri ile kıyaslandığında ucuz bir yöntemdir. Diğerleri özel
donanım araçlarına ihtiyaç duyarken, bu metot sadece yazılım teknikleri kullanılarak
gerçekleştirilebilir. Bundan dolayı bazen “yazılımsal kimlik doğrulaması” olarak da
adlandırılır.
•Password -> parola şifre

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 83
Unix Sisteminde Parolalar
•Yaygın olarak parolaların ilk kullanımı Unix işletim
sistemindedir.
•Unix işletim sistemi, zayıf kimlik doğrulama sağlayan
zamanla değişmeyen klasik parola yöntemini kullanır.
(değişmeyen : her seferinde farklı parola girilme durumu
olmayan)
•Bütün değişmeyen parola yöntemlerinde olduğu gibi, bu
sistem, sabit parolaları elde etme ve tekrarlama, etraflı
parola arama (kaba kuvvet saldırısı), tahmin etme ve sözlük
saldırılarını da içeren birçok saldırıya karşı yeterli koruma
sağlamamaktadır.
•Sabit parolalar, eğer şifrelenmeden açık metin olarak
gönderilirlerse ağ içerisinde ele geçirilebilirler.
•Tekrar kullanmak amacıyla parolaları elde etmenin diğer
bir yöntemi ise kullanıcıların parolalarını girmek için
kullandıkları güvenli olmayan istemci makinalarına klavye-
kaydediciler (keyboard-logger) kurmaktır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 84
Parola Tahmin Saldırıları

•Etkili parola tahminleri sözlük yardımı ile yapılabilir.


•Parola tahmin saldırılarını iki grupta toplayabiliriz:
çevrim içi (online) saldırılar ve çevrim dışı (offline) saldırılar.
•Çevrim içi saldırılar gerçek parola olabilecek parola adaylarını
kimlik doğrulama sunucusu üzerinde denemektir. Birçok parolanın
denenmesinin engellenmesi çevrim içi saldırıların etkinliğini azaltır.
•Çevrim dışı saldırılar daha etkili olabilir çünkü saldıran kişinin
sunucu ile etkileşimde bulunması gerekmez. Öte yandan bir çevrim
dışı saldırı yapabilmek için parola adaylarının doğruluğunu
deneyebileceğimiz başka bir imkân olmalıdır (parola özet dosyaları
sunucu sistemden elde edilirse bu imkanı sağlarlar).

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 85
Parola Tahmin Saldırıları
•Unix parola sisteminin sonraki pek çok sisteme de adapte edilmiş bazı önemli güvenlik özellikler şunlardır;
•Parolalar düz metin olarak sistemde saklanmaz. Bir tek-yön fonksiyonundan geçirilmiş hali ile saklanırlar (DES algoritması
şifreleme amaçlı değil, tek-yön fonksiyonu özelliği ile kullanılmaktadır).
•Sözlük saldırılarının etkisini azaltmak için her bir parola sistem saatinden üretilen 12 bitlik bir değer(tuz -salt) ile bitiştirildikten
sonra tek-yön fonksiyonuna sokulur. Bir diğer ifadeyle h() tek-yön fonksiyonu kullanılıyor ise sistem her kullanıcı için h(parola)
değeri yerine h(parola || tuz) ve tuz değerlerini saklar. Tuz değerinin sistemde açıkta saklanan bir değer olmasına rağmen sözlük
saldırılarına karşın nasıl bir koruma sağladığı şu şekilde açıklanabilir.
•Genellikle saldırganın bir parola sistemine saldırma amacı belirli bir kullanıcının parolasını kırmak yerine sistemdeki herhangi bir
kullanıcının parolasına ulaşmaktır. Eğer her kullanıcı için farklı bir tuz değerinin kullanıldığı bir önlem aktif değil ise saldırgan
parolaların tek yön fonksiyonundan geçirilmiş hallerini önceden hazırlayarak (veya hazırlatarak) sözlük saldırıları için bir ön hazırlık
yapabilir. Bu sayede parola dosyasını ele geçirdiği zaman tüm kullanıcıların parolalarını basit bir karşılaştırma işlemine tabi tutarak
bunlar içerisinde hangileri zayıf ise onları elde edebilir. Kullanıcıya mahsus bir tuz değeri kullanmak bu şekilde önceden hazırlanmış
tablolar yardımıyla yapılan bir saldırıyı engeller.
•DES tuz ile değiştirilmiş haliyle uygulanır. Böylece standart DES çiplerini kullanarak yapılmaya çalışılan saldırılar engellenir.
•Tek-yön fonksiyon işlemi yapmak amacıyla DES fonksiyonunu bir kere çalıştırmak yeterli iken bu işlemi 25 kere tekrarlamak
saldırıların yavaşlamasını sağlar. Çünkü her bir parola adayının sistemdeki bir parola ile aynı olup olmadığını kontrol etmek için
saldırganın 25 kat daha fazla hesaplama yapması gerekecektir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 86
Parola Belirleme Kuralları
•Sözlük saldırıları tahmin edilebilir parolalara karşı başarılı olduğu için, pek çok sistem “parola kuralları”
koyarak kullanıcıların zayıf şifreler kullanmasını engellemeye çalışmaktadır. Bu kurallardan bazıları şunlardır:
• Parola uzunluğu alt sınırı (örneğin 8 veya 12 karakter).
• Parolada bazı karakter kümelerinin her birinden en az bir karakter kullanma gereksinimi (örneğin büyük harf, sayısal karakter, özel
sembol, vb.).
• Parolaların kullanıcı hesabı ile ilgili bilgiler içermemesi(örneğin kullanıcı isminin parola içerisinde yer almaması).
• Belirli zaman aralıklarıyla parolaların değiştirilmesini şart koyma.
•Parola kurallarının çok yaygın kullanımı olmasına rağmen bu konunun iki tarafı keskin kılıç gibi olduğunun
bilinmesi gerekir.
•Bir taraftan kullanıcıların kolaya kaçarak “12345” benzeri çok basit parolaları seçememesi gerekir. Öte yandan
kullanıcıya parola seçimi konusunda çok fazla zorlamak onu başka güvensiz tercihlere itmekle sonuçlanabilir.
•Örneğin parolaların sıkça değiştirilmesi hiçbir parolanın ezberlenememesi ve belki de güvensiz şekilde bir
yerlere kaydedilmesi sonucunu doğurabilir.
•Önemli bir diğer nokta parolaların güvenli şekilde kullanılması için parola kurallarının tek önlem olmadığının
bilinmesi ve parola sisteminin gerçekleştirilmesi aşamasında atılması gereken pek çok adımın olduğunun
anlaşılmasıdır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 87
Parola Sistemlerine Saldırılar

•Güvenliği pek çok halkadan oluşan bir zincire


benzer. Parola güvenliği de böyle. Bir saldırgan
temel anlamda dört farklı ana yöntem ile saldırı
yaparak bir parola sistemini kırmaya çalışabilir.
Bu yöntemler:
• Kullanıcıya yönelik saldırılar (Sosyal Mühendislik Saldırıları)
• Ağ saldırıları (Pasif Dinleme ve/veya Aktif saldırılar)
• İstemci Makineye saldırılar.
• Sunucu Makineye saldırılar
•Eğer bir şekilde kullanıcı parolasını paylaşmak
için ikna edilebilirse, belki de bu dört yöntem
içindeki en kolay olanı sosyal mühendislik saldırısı
olur (güvenlik zincirinin en zayıf halkası insandır).
• Örneğin kendinizi telefonda sistem yöneticisi
olarak tanıtarak şirketinizdeki bazı kişilerden
parolasını isteyebilirsiniz.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 88
Parola Sistemlerine Saldırılar
•Parolanın şifrelenmiş (encrypted) kanallarda iletildiği sistemlerde bile eğer şifrelenmiş kanal iyi tasarlanmamış ise bu saldırı hala
olasıdır.
•Aktif ağ saldırılarında saldırgan sadece ağı dinlemez ayrıca kimlik doğrulama paketlerini gerçek zamanlı olarak silebilir,
değiştirebilir veya yeni paketler ekleyebilir.
•Örnek olarak “Ortadaki adam” (man-in-the-middle) saldırısı, “bağlantı ele geçirme” (hijackingconnection) saldırısı verilebilir.
•Aktif saldırıları engellemek için Secure Shell (SSH) (güvenli kabuk) gibi daha ileri seviye güvenlik protokolleri kullanılmalıdır.
•Parolanızın istemci makine üzerinden girilmesi esnasında gizlice ele geçirilmesi;
• yönetici hakları bulunan birisi kötü niyetli olarak bir gizli dinleme (wiretap) aygıtı sürücüsü yüklemesi.
• Bir uygulama programının sahtesini (truva atı –trojanhorse) yüklemesi.
• Dikkatsizce yazılım dağıtımının değiştirilmemiş sürümünü kullanması
• Değiştirilmiş kimlik doğrulama yazılımının içindeki klavye tuzağı (keyboardlogger)
•Parolaların sunucu sistemlerinde saklanmaları ciddi başka bir açığa neden olur.
• Sunucu yanlışlıkla veya kötü niyetli olarak bu sırrı üçüncü kişilere sızdırabilir.
• Örneğin eğer sunucu aynı zamanda web sunucusu ise saldırgan parola dosyasını çalmak için CGI açıklarından faydalanabilir.
• Parolaların, kullanıcıların tahmin edilmesi kolay seçim yapmaları sunucuya yapılan saldırılar sonrası başarılı şekilde çevrim dışı sözlük saldırılarının
uygulanabilmesi sonucunu doğurmaktadır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 89
TBİL-621
Bilgi Güvenliği
9. Hafta – Kimlik Doğrulama Protokolleri
Kimlik Doğrulama Protokolleri

•Gizli Dinleme Saldırısına Karşın Korunma Yöntemleri:


• Tek-kullanımlık parolalar (One-time passwords - OTP)
• İstek – Karşılık (Challenge-Response) Kimlik Doğrulama Protokolleri
• SSH Protokolü
• Dolaylı Kimlik Doğrulama

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 91
TBİL-621
Bilgi Güvenliği
10. Hafta – Ağ Güvenliği; İnternet Veri Güvenliği
Teknikleri
İnternet Protokollerinin Güvensizliği

•İnternetin Doğuşu
• 1969 ARPANET
• Üniversite-Enstitüler arası haberleşme
• Yalın Güvenlik Gereksinimleri Gözetilmeyen
Protokoller.
•İnternetin Yapısı (TCP /IP Katmanlı
Mimarisi)
• Uygulama Katmanı (HTTP- SMTP-FTP-SNMP-....)
• Taşıma Katmanı (TCP-UDP) – PORT Kavramı
• Ağ Katmanı (IP)
• Windows'ta ipconfig, netstat

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 93
İnternet Protokollerinin Güvensizliği

•IP ve TCP Dışında Kullanılan Protokoller: ARP, DNS, ICMP,


DHCP, vb
•Ortak Sıkıntıları Güvenlik Düşünülmeden Tasarlanmaları
•ARP (AddressResolution Protocol): Ethernet (LAN – Yerel Ağ)
Ağında bir IP'nin Ethernet Adresine Dönüştürülmesini
Gerçekleştirir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 94
ARP Çalışma Mantığı ve ARP Zehirlemesi

•Gatewat trafından çevrilmesi istenen IP adresi LAN'a Broadcast


yapılır.
•IP adresi sahibi IP/Ethernet bilgi çifti ile cevaplar.
•Ethernet bilgisi kullanılarak LAN'da IP'nin sahibi bilinir.
•Gateway bu bilgiliyi yeni ARP göndermemek için saklar.
•ARP Kimlik Doğrulama İçermez.
•Yerel Ağdaki herhangi bir makine ARP sorgusuna cevap verebilir.
•Bu şekilde aldatma ARP Zehirlemesinin bir çeşididir.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 95
DNS Çalışma Mantığı ve DNS Zehirlemesi

•IP adresleri 192.99.126.128 gibi her biri 0 ile 255 arasında değer
alan ve 8 bite karşılık gelen 4 sayıdan oluşur.
•DNS (Domain Name System) IP adreslerini – alfabetik makine
adına (hostname) eşleşmesi yapar.
•oys.yesevi.edu.tr için makine IP adresi DNS sorgusu ile öğrenilir.
•DNS hiyerarşik ve dağıtık bir veritabanı kullanır.
•Tüm eşleşmeler tek bir merkezde değildir.
•Ağ içerisine yanlış DNS cevapları enjekte edilmesi (DNS
zehirlenmesi) yanlış adres dönüştürme.
•Korunma Yöntemi Sayısal İmza Tabanlı DNSsec

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 96
SSL ve IPsec

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 97
SSL ve IPsec
•SSL (SecureSocketLayer) ağ katmanları sıralamasındaki
dördüncü katmanda (TCP’nin üzerinde) çalışmaktadır.
•SSL protokolünün tasarımındaki temel felsefe eğer işletim
sisteminin değiştirilmesi gerekmiyor ise bir protokolün
uygulamaya geçirilmesinin daha kolay olduğudur.
•Öte yandan üçüncü katmanda çalışan IPsec protokolünün
felsefesi ise eğer güvenlik işletim sistemi tarafından
gerçekleştirilmiş ise uygulamalarda bir değişiklik yapmaya
gerek kalmadan tüm uygulamaların güvenli hale getirilebilecek
olmasıdır.
•SSL protokolünün ilk adımı el sıkışma (handshake) alt
protokolü ile ve açık anahtar kriptografisi kullanarak sunucu
kimlik doğrulama ve isteğe bağlı olarak istemci kimlik
doğrulamasının yapılması ve karşılıklı paylaşılan bir gizli
anahtar üzerinde anlaşılmasıdır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 98
SSL ve IPsec

•SSL versiyon 2 Netscape firması tarafından 1995 yılında geliştirilmiştir.


•Microsoft, SSL’i biraz daha geliştirerek PCT isimli benzer bir protokol
önermiştir.
•Sonrasında Netscape SSL versiyon 3’ü çıkarmıştır.
•IETF (Internet EngineeringTask Force) endüstri için birbirinden farklı
benzer fakat birbiriyle uyumsuz üç protokole sahip olmanın kötü bir şey
olduğunu düşünerek dördüncü ve diğer üçüyle uyumsuz diğer bir
protokol önermiştir (TLS – Transport Layer Security - Protokolü).
•Bu paragraf SSL’in kısa bir tarihçesini sunmanın yanı sıra İnternet
dünyasında standartlaşma çalışmalarındaki bazı handikaplara da
parmak basmaktadır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 99
SSL ve IPsec

•İnternet Protokolü Güvenliği(IPsec), Internet Protokolü(IP) kullanılarak sağlanan


iletişimlerde her paket için doğrulama ve şifreleme kullanarak koruma sağlayan bir
protokol paketidir.
•IPsec kriptografik güvenlik servislerini kullanarak IP protokolü ile gerçekleştirilen
bağlantıları korumak için kullanılır. Ağ seviyesinde doğrulama, veri kaynağı
doğrulama,veri bütünlüğü, şifreleme ve replay saldırılarına karşı koruma görevlerini
üstlenir.
•IPsec iki ana kısımdan oluşur:
•AH ve ESP: IP protokolü ile kriptografi ile korunan verinin taşınabilmesi için IP paket
başlığındaki gerekli olan genişletmeleri tanımlar. AH (AuthenticationHeader) sadece
kimlik doğrulama amaçlıdır, ESP (Encapsulated Security Payload) hem kimlik doğrulama
hem de şifrelemeyi destekler.
•IKE: SSL el sıkışması nasıl ki hem kimlik doğrulama hem de SSL’in sonraki aşamasında
kullanılacak gizli anahtarın üretilmesinde kullanılır, benzer şekilde IKE (Internet Key
Exchange) protokolü bu işlevi fakat başka bir protokol vasıtasıyla yerine getirir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 100
Tek-kullanımlık Parolalar

•Amaç: bir parolayı sadece bir kere kullan ve bu sayede saldırganın ele geçirdiği
parolaları kullanmasını engelle
•Tek-kullanımlık parola (One-time password – OTP) listeleri üç şekilde oluşturulabilir:
1.Özet zinciri yöntemi: Lamport’un önerdiği özet zinciri yardımı ile sunucu ile istemci
arasında sadece bir değer (zincirin son elemanı) paylaşılarak
2.OTP paylaşım listeleri: Kayıt esnasında kullanıcı ve sunucu tek bir parola yerine parola
listesi ve kullanım sırası üzerinde anlaşırlar. Listedeki tüm parolalar bittiğinde kayıt
aşaması tekrarlanmalıdır.
3.Sıralı olarak güncellenen OTP: Başlangıçta yalnızca tek bir parola paylaşılır. Bu parola
kullanıldığında beraberinde kullanılacak sonraki parolanın özet değeri de sunucuya
gönderilir. Eğer parola doğru ise sunucu parola dosyasında bulunan kullanıcı ile ilgili
parola özet değerini günceller. Bu kullanım şekli ile sonsuz sayıda tek-kullanımlık parola
kullanılabilir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 101
Tek-kullanımlık parolalar çalışma kipleri

•Tek-kullanımlık parolalar için iki çalışma kipi mümkündür;


1. İş istasyonu ortamı: Kullanıcıların sadece tek bir parolaların
olduğu ve bu parola ile kendilerini istemci makineye
tanıtmaları sonrası bu makinede üretilen tek-kullanımlık
parolaların ağ üzerinden sunucuya gönderildiği çalışma kipidir.
“Kanalı dinle, parolayı çal ve kullan” saldırıları engellenebilir.
2. İnsan ve kağıt ortamı: Daha güçlü güvenlik isteyen
uygulamalar için sistemden yardım almadan kullanıcının tek-
kullanımlık parolaları girmesi ile sağlanır. Diğer kipin
özelliklerine ilave olarak istemci makinesinin güvensizliğinden
kaynaklı bazı diğer saldırılar da bu kip kullanılırsa engellenmiş
olur.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 102
İstek – Karşılık Kimlik Doğrulama Protokolleri

•Şekilde gösterilen protokol üç


adımdan oluşur.
1. Alice Bob'a kendini tanıtır.
2. Bob Alice’e rasgele bir sayı (istek) •Paylaşılan giz, isteği düz metin olarak alan ve bu
gönderir. metne karşılık gelen şifrelenmiş metini üreten bir
gizli anahtar şifreleme algoritmasının gizli anahtarı
3. Alice, Alice ve Bob tarafından olarak kullanılabilir.
F(Kalice-bob, R) = EKalice-bob(R)
paylaşılan giz K’yı kullanarak •Alternatif bir yöntem ise özet fonksiyonları yardımı
ile istek karşılığının aşağıdaki şekilde üretilmesidir.
kriptografik olarak hesaplanan istek F(Kalice-bob, R) = H(Kalice-bob|| R)

karşılığını Bob’a gönderir.


28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 103
İstek – Karşılık Kimlik Doğrulama Protokolleri

•Bu protokol, parolaların doğrudan sunucuya gönderildiği klasik parola yöntemine göre daha gelişmiş ve
güvenilirdir. Bununla birlikte bazı problemleri de söz konusudur. Bu problemler şunlardır:
•Kimlik Doğrulamanın tek yönlü olması
•Ortadaki adam saldırısı
•Bağlantının ele geçirilmesi
•Çevrim dışı parola tahmin saldırısı
•Veri tabanı okuma

•Bu protokolü daha verimli bir hale dönüştürmek ve onu istek / karşılık kullanmak yerine zaman bilgisi
yardımıyla tek bir tur (round) ile tamamlanan bir protokol haline getirmek mümkündür.
•İstek / karşılık protokollerinin güzel bir özelliği saldırganın karşılık mesajlarını ele geçirmesi durumunda bu
mesajları tekrar kullanmasının mümkün olmamasıdır. Çünkü eğer istek mesajları yeterince büyük bir uzaydan
seçilmişse, iki (rasgele seçilmiş) isteğin aynı olma olasılığı çok düşüktür. Bu sebeple karşılık mesajları da her
oturumda farklı olmalıdır.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 104
İstek – Karşılık Kimlik Doğrulama Protokolleri

•Zamanda geriye gitmek mümkün olmadığı için


eğer Bob ve Alice senkronize saatlere sahip iseler
o anki zaman bilgisi Bob’un sağladığı benzersiz
istek mesajı olarak kullanılabilir. Fakat saatler
mükemmel bir şekilde senkronize olsa bile Bob iki
taraf arasındaki değişken olabilir bir iletim
gecikmesinden dolayı kabul edilebilir bir
gecikmeyle iletilen zaman bilgisini kabul etmek
durumundadır. Bu kabul az bir süre için de olsa
saldırganın tekrarlama saldırılarını yapabilmesi
anlamına gelmektedir.
•Gördüğümüz bu iki protokolün açık anahtar
kriptografisi kullanan versiyonları da vardır.
Örneğin Şekilde sayısal imzalar kullanılarak
gerçekleştirilen istek/karşılık protokolünü
görebilirsiniz.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 105
Çift yönlü kimlik doğrulama

•Çift yönlü kimlik doğrulama yapabilmek için bir


önceki kimlik doğrulama adımlarını her iki yön için
de işletmeliyiz.
•Böyle bir protokol 6 round’dan oluşur.
•Verimlilik artırma adına Şekilde 3 round’a
indirgenmiş bir çift yönlü kimlik doğrulama
protokolü gösterilmektedir.
•Bu protokol reflection attack – saldırısına açıktır.
•Bu ve benzeri saldırılardan korunmak için
protokolün iki tarafının aynı şekilde karşılık
mesajını hesaplamaması gerektiğini söyleyen bir
prensip önerilmiştir. Örneğin, Alice F(Kalice-bob,
R, alice) şeklinde, Bob ise Alice’den farklı olarak
F(Kalice-bob, R, bob) şeklinde karşılık mesajlarını
oluştururlar ise yansıma saldırısı engellenmiş olur.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 106
•Çift yönlü kimlik doğrulama açık anahtar
kriptografisi ile de gerçekleştirilebilir.
•Şekilde açık anahtar şifreleme kullanılarak
üç mesaj ile nasıl çift yönlü doğrulamanın
yapılabileceği gösterilmektedir.
•Burada {R}Alice ifadesi R değerinin Alice’in
açık anahtarıyla şifrelenmesi anlamına
gelmektedir.
• Açık anahtar kriptografisi temeli kimlik
doğrulama için imzalamanın yanı sıra
şifreleme de kullanılabilir. Şifrelenmiş bir
mesajın doğru çözümlenmiş olması karşı
tarafta gerçekten o açık anahtarın sahibinin
olduğu anlamına gelir.
28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 107
Kimlik DoğrulamalıAnahtar Değişimi

•Oturumun kimlik doğrulamadan sonra devam ettiği uygulamalarda


bağlantının ele geçirilmesi probleminin oluştuğundan daha önce bahsetmiştik.
• Bu sebeple kimlik doğrulama ile birlikte iki taraf sadece kendilerinin bildiği bir
gizli anahtar üzerinde anlaşırlar. Sonrasında oturumun bütünlüğü (ve istenirse
gizliliği) bu anahtar yardımı ile korunur. Bu tür protokollere kimlik doğrulamalı
anahtar değişimi (authenticated key exchange) protokolü denir.

•Yukarıda incelediğimiz simetrik anahtar (paylaşılan giz) protokollerinde


oturum anahtarı olarak {R}Kalice-bob +1 kullanılabilir (R’nin Kalice-bob +1 ile
şifrelenmiş hali) . {R}Kalice-bob değerini oturum anahtarı olarak kullanmak
güvenli değildir çünkü bu değer Alice tarafından üçüncü mesaj olarak
gönderilmiştir ve diğer kişiler tarafından görülebilir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 108
SSH (Secure Shell - Güvenli Kabuk) Protokolü

•SSH (Secure Shell - Güvenli Kabuk) Protokolü


•Bazı durumlarda yalnızca tek taraf açık anahtar / özel anahtar çiftine sahiptir. Böyle durumlar için sunucunun
açık anahtarının olduğu ve istemcinin ise olmadığı varsayımı yapılan SSH protokolü idealdir. Sunucuların kimliği
açık anahtar kriptografisi kullanılarak doğrulanır ve oturum anahtarı oluşturulduktan sonra istemci şifrelenmiş
kanal kullanılarak aşağıda anlatılacağı şekilde farklı yöntemler ile doğrulanabilir.

•SSH protokolü şu şekilde çalışır:


•Istemci (İ) sunucuya bir bağlantı açar.
•Sunucu (S) açık RSA ana bilgisayar anahtarını ve sunucu anahtarını gönderir.
•İ rastgele üretilen bir sayıyı (oturum anahtarını) S’nin her iki anahtarı ile şifreler.
•S oturum anahtarını çözer ve İ’ye şifrelenmiş teyit gönderir.
•İ kimliğini doğrulatır (aşağıdaki yöntemlerden biri kullanılarak)
•Protokol sonrası her iki taraf birbirlerine eşzamanlı olmaya gerek kalmadan paket gönderimi yapabilir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 109
SSH (Secure Shell - Güvenli Kabuk) Protokolü

•SSH protokolünde istemci kimlik doğrulaması aşağıdaki yöntemlerden biri ile yapılabilir:
• Geleneksel parolalı kimlik doğrulaması
• RSA ile kimlik doğrulama
• RSA + adres tabanlı kimlik doğrulama
•Yukarıdaki listeye yeni yöntemlerin eklenmesi mümkündür. SSH protokolünde açık anahtar
kriptografisine dayanan tüm protokoller gibi açık anahtarların kimlere ait olduğunun güvenli bir
şekilde sağlandığı kabulü vardır. SSH protokolünü diğer protokollerden ayıran bir özellik eğer
sunucunun açık anahtarı ilk defa gönderilmişse ve bu anahtarın kime ait olduğu sertifika veya
benzeri bir yöntemle doğrulanabilir değil ise istemci bu anahtarı kaydeder ve bir sonraki
oturumda aynı sunucudan aynı anahtarın gelmesini bekler. Aksi halde bir uyarı mesajı ile
kullanıcıları uyarır. Bu şekilde ortadaki adam saldırıları engellenmeye çalışılır.
•SSH ve benzeri açık anahtar tabanlı protokollerin diğer bir dezavantajı ise şudur. Kendilerini
doğrulatırken gerekli olan özel anahtarı kullanıcılar akıllarında tutamayacakları için genel
uygulama özel anahtarın kullanıcıya verilmiş bir parola yardımı ile şifrelenmesidir. Kullanıcı
parolasını doğru girerse istemci makinede bulunan özel anahtar doğru olarak açılır ve kimlik
doğrulama gerçekleşir. Bu şekilde bir kullanımda parola kullanımı kaynaklı (sözlük saldırıları gibi)
bazı problemlerin tekrar gündeme geldiğini görmekteyiz.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 110
Dolaylı Kimlik Doğrulama

•Şu ana kadar görmüş olduğumuz tüm protokollerde ortak olan bir
özellik söz konusu idi. Giz paylaşımı için tüm kullanıcıların güvenli bir
kanala sahip olduğu veya tüm açık anahtarların güvenli bir şekilde tüm
kullanıcılara iletilebildiği varsayımı yapılmıştı. Eğer bu varsayım kullanıcı
sayısının fazla olması gibi bir sebepten ötürü gerçekçi bir varsayım değil
ise o zaman daha yönetilebilir bir çözüm olarak iki alternatif vardır:
•Anahtar Dağıtım Merkezi (ADM)
•Sertifika Yetkilileri (SY)
•Bu bölümde ADM (Authentication Server – AS) içeren çözümler
üzerinde durulacaktır. Birbirleriyle daha önce anahtar (giz) paylaşmamış
iki kullanıcı ADM’ye kayıtlı oldukları ve giz paylaştıkları takdirde dolaylı
olarak (ADM yardımı ile) iki yönlü kimlik doğrulaması yapabilirler.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 111
Dolaylı Kimlik Doğrulama
•ADM’li bir çözümün genel çalışma şekli üç aşamadan oluşur:
•İlk mesaj ile Alice Bob ile iletişim kurma isteğini belirtiyor.
•İkinci mesaj ile iki şifrelenmiş değer (A ve B) ADM tarafından
gönderiliyor:
•A: KAlice{Bob için KAB kullan}: Bu mesaj ADM ile Alice tarafın
Alicedan paylaşılan anahtar ile şifrelenmiş bir oturum anahtarını
içeriyor.
•B: KBob{Alice için KAB kullan}: Bu mesaj oturum anahtarının ADM
ile Bob tarafından paylaşılan anahtar ile şifrelenmesi ile
oluşturulmuştur. Bu mesaj her ne kadar Alice’e gönderilmişse de
esasında Bob’un açabileceği bir mesajdır. Bu sebeple “Bob için
bilet” olarak da isimlendirilir.
•Üçüncü mesaj ile Alice Bob’a bileti gönderiyor ve kendisini Alice
olarak tanıtıyor.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 112
Dolaylı Kimlik Doğrulama
•İlk üç mesajdan sonra dördüncü ve beşinci mesajlar yardımı ile
Alice ve Bob’un birbirlerine KAB değerini bildiklerini ispat
etmeleri gerekmektedir. Bu sayede hem Alice hem Bob karşılıklı
olarak kimlik doğrulaması yaparlar.

•ADM tabanlı pek çok kimlik doğrulama protokolü vardır. Bu tür


protokollerden bir tanesi Şekil’de gösterilen Needham-Schreoder
protokolüdür.
• Günümüzde yoğun olarak kullanılan Kerberos protokolü bu
protokolün bir varyasyonudur. Bu protokolde kullanılan NBo, NA
ve NB1 değerleri tek kullanımlık “nonce” değerleridir ve
tekrarlama (replay) saldırılarını engellemek için kullanılırlar.
•Tüm ADM tabanlı protokollerin ortak özelliği ADM’ye olan
güvendir. Sistemin tüm kullanıcılarının ADM’ye güvenmeleri
gerekir. ADM’ye yapılacak başarılı bir saldırı tüm kullanıcıların
kimlik bilgilerinin çalınması anlamına gelmektedir. Bu sebeple
terminolojide bu tür protokollerin “güvenilir üçüncü parti”
içerdiği söylenir.

28.11.2021 İlgili sunu Ahmet Yesevi Üniversitesi için "Özgür Can TURNA" tarafından hazırlanmıştır. 113

You might also like