2. @BGASecurity
BGA Bilgi Güvenliği A.Ş
BGA Security Hakkında
Siber güvenlik dünyasına yönelik, yenilikçi
profesyonel çözümleri ile katkıda bulunmak
amacı ile 2008 yılında kurulan BGA Bilgi
Güvenliği A.Ş. stratejik siber güvenlik
danışmanlığı ve güvenlik eğitimleri konularında
büyük ölçekli çok sayıda kuruma hizmet
vermektedir.
Gerçekleştirdiği vizyoner danışmanlık projeleri
ve nitelikli eğitimleri ile sektörde saygın bir yer
kazanan BGA Bilgi Güvenliği, kurulduğu günden
bugüne kadar alanında lider finans, enerji,
telekom ve kamu kuruluşları ile 1.000'den fazla
eğitim ve danışmanlık projelerine imza
atmıştır.
ARGE
EĞİTİM
MSSP
PENTEST
SOME / SOC
SECOPS
BGA | Hakkında
4. BGA | CEH
@BGASecurity
Amaç
Şifrelemenin güvenlikteki yeri ve algoritma çeşitlerinin
öğrenilmesi
Günümüzde yoğun kullanılan şifreleme algoritmalarının
çalışma mantığı
PKI, sayısal sertifika, zaman damgası gibi kavramların
arkaplanı
5. BGA | CEH
@BGASecurity
İçerik
Şifreleme ve Şifre Çözme
Şifreleme Algoritmaları
Şifreleme Çeşitleri
Tek yönlü şifreleme fonksiyonları
Encoding/Decoding
Şifreleme Encoding farkları
Disk Şifreleme/Stenografi
Windows/Linux/Cisco parola güvenliği
7. BGA | CEH
@BGASecurity
Şifre Bilim (Cryptography)
Düz okunabilir/binary dosyaları başlarının
anlayamacağı şekle sokma sanatı(şifreleme)
Tabanı matematiksel algoritmalara dayanır
Şifreyi çözme için bir ya da birden fazla anahtar
gerekebilir
8. BGA | CEH
@BGASecurity
Şifreleme
Plain Text= Şifrelenmemiş veri
CipherText Şifrelenmiş veri
Şifreleme ve şifreyi çözmek için anahtar
kullanılır. Bu anahtar aynı olabileceği gibi
farklı da olabilir
9. BGA | CEH
@BGASecurity
Şifre Çözme
Şifrelenmiş veriden orjinal veriyi elde etme yöntemi
Şifrelenmiş veri anahtar kullanılarak orjinali elde
edilir.
10. BGA | CEH
@BGASecurity
Şifreleme Algoritmaları
Simetrik Şifreleme
Açık/Gizli Anahtar Altyapısı(Asimetrik şifreleme)
Tek yönlü şifreleme(Hash fonksiyonları)
Şifrelemenin güvenlik derecesi?
Hangi şifreleme daha güvenlidir? Neden?
Şifrelemede Performans/hızın önemi
11. BGA | CEH
@BGASecurity
Şifrelemenin Kuvveti
Şifrelemenin sağlamlığını ölçme
Anahtarı kırma(kaba kuvvet)
Anahtarı matematiksel olarak elde etme
yollarıyla yapılır
Anahtar uzunluğu bit ile ölçülür
Anahtar uzunluğu sabit ya da değişken olabilir(DES vs
RC5)
DES(56 bit) 2^56 olası değer = 72 quadrilyon
12. BGA | CEH
@BGASecurity
Simetrik Şifreleme
Şifreleme ve çözme için eş anahtar kullanımı
İlk şifreleme yöntemlerinden
Anahtar gizli tutulmalı ve gizli yollardan paylaşılmalı
DES
13. BGA | CEH
@BGASecurity
DES (Data Encryption Standart)
Simetrik şifreleme için kullanılan defakto algoritma
DES kırıldığı(‘88) için 3DES kullanılır
Block size 64 bitdir, bunun 8 biti hata yakalama için
kullanılır. Gerçek block size 56 bit.
Günümüzde DES yerine daha hızlı ve güvenilir olan
AES kullanılmaktadır
14. BGA | CEH
@BGASecurity
OpenSSL DES Uygulaması
Şifreli dosya
içeriğinin text
olması istenirse –a
eklenir.
Şifrelenmiş dosyayı openssl ile açmak için –d parametresi kullanılır
15. BGA | CEH
@BGASecurity
AES (Advanced Encryption Standart)
DES yerine kullanılmaktadır
Anahtar uzunlukları: 128, 192 ve 256 bit olabilmektedir.
Matematiksel algoritma olarak Rjindael kullanmaktadır
17. BGA | CEH
@BGASecurity
Diffie Hellman
Nedir?
Anahtar değişim algoritmasıdır
Neden kullanılır?
Simetrik şifreleme kullanılan ortamlarda gizli anahtarın iki taraf arasında
başkaları ele geçiremeyecek şekilde paylaşılması
Matematiksel ifadesi
İki taraf anahtarı paylaşırken ortadaki adam saldırılarından etkilenmemesi
gerekir
19. BGA | CEH
@BGASecurity
Simetrik Algoritma Değerlendirme
Avantajları:
Matematiksel olarak hızlı hesaplanabilme özelliği
Kullanım kolaylığı
Daha az kaynak tüketimi
Dezavantajları
Anahtar gizliliği ve dağıtım zorluğu
Onlarca insanın erişmesi gereken bir veriye sadece tek bir
“ortak” anahtarla erişme zorunluluğu.
20. BGA | CEH
@BGASecurity
Açık Anahtarlı Şifreleme
(PKI: Public Key Infrastructure)
Veriyi şifrelemek ve çözmek için farklı anahtarlar kullanılır.
Matematiksel olarak açık anahtardan gizli anahtar elde
edilemez.
Açık anahtar kullanılarak şifrelenen veri gizli anahtar
kullanarak açılabilir.
Priv. Key kullanarak imzalanan veri pub key kullanarak
kontrol edilebilir.
En bilineni RSA’dir.
21. BGA | CEH
@BGASecurity
Anahtarlar
Gizli anahtar:
Gizlenmeli ve sadece sahibi tarafından bilinmeli
Mümkünse Token/smartcard gibi güvenilir ortamlarda
saklanmalı.
Açık anahtar:
Herkese açık, ulaşılabilir yerlerde bulunmalı.
İletişimde bulunacak iki kişinin mutlaka açık anahtarlarını
biliyor olması gerekir.
22. BGA | CEH
@BGASecurity
RSA
Ron Rivest, Adi Shamir ve Lenoard Adleman tarafından
bulunmuş ve aynı isimde şirket kurulmuştur.
Günümüzde en sık kullanılan açık anahtarlı şifreleme
altyapısı.
Güvenliği, tam sayıları çarpanlarına ayırmanın
algoritmik zorluğuna dayanır.
Şifreleme ve sayısal imza amaçlı kullanılabilir.
24. BGA | CEH
@BGASecurity
Açık/Gizli Şifreleme Değerlendirme
Avantajları:
Anahtar dağıtımı kolay
Anahtar gizliliği sağlanmakta ve her birey kendi
anahtarıyla veriyi şifreleme/çözme yapabilmekte.
Dezavantajları
Daha fazla kaynak gereksinimi.
Şifrelenen verinin boyutunun artması.
25. BGA | CEH
@BGASecurity
Tek yönlü şifreleme (Hash fonksiyonları)
Matematiksel olarak tek yönlü hesaplanan algoritmalardır.
Bütünlük doğrulama için kullanılır.(Integrity)
Verilen bir text/verinin özetini alır ve verinin boyutundan bağımsız
olarak aynı uzunlukta çıktı üretir.
Şifreleme için kullanılmazlar(Gizlilik sağlamaz).
Sayısal imzalama (Digital signature) için kullanılır, Message
Authentication Code(MAC)
“Message digest”, “One way hash” olarak da adlandırılır.
29. BGA | CEH
@BGASecurity
Sayısal İmza Kavramı
Sayısal imza;
Mesajın kimden geldiğinin doğrulanmasını,
Mesajın içeriğinin değiştirilmediğini,
İmzalanan mesajın red edilememesini sağlar.
30. BGA | CEH
@BGASecurity
Teknik Olarak Sayısal İmza
Sayısal imza: Bir verinin hash değerinin gizli anahtarla
şifrelenmesi.
Sayısal imzalı veri imzalayanın açık anahtarı elde edilerek
kontrol edilir.
32. BGA | CEH
@BGASecurity
Sayısal Zaman Damgası
5651 sayılı kanunla hayatımıza giren tanım…
Internet logları* çeşitli sistemlerden alınıp zaman damgası
eklenerek saklanmalı
Amaç?
Sayısal olarak yapılan bir işin X zamanında yapıldığı ve o
tarihten sonra değiştirilmediğini belirlemek.
Nasıl Çalışır? ->
34. BGA | CEH
@BGASecurity
Openssl ile Zaman Damgası
http://blog.lifeoverip.net/2008/11/10/565
1-sayili-kanun-gereksinimleri-icin-loglari-
imzalamak/
35. BGA | CEH
@BGASecurity
Encoding/Decoding
Bir veriyi başka formatlarda gösterme işlemidir
Geriye çevrilebilir algoritmalardır.
Encoding algoritması ek bir gizlilik sağlamaz.
Base64 encoding, url encoding, hex encoding en sık
karşılaşılan çeşitlerdir.
40. BGA | CEH
@BGASecurity
Kimlik Doğrulama ve Çeşitleri
Kimlik doğrulama nedir?
Günümüzde nerelerde kullanılır
Kimlik doğrulama çeşitleri:
Basic Authetication.
Digest Authentication.
Windows Integrated Authentication.
Negotiate Authentication (Kerberos).
Sertifika Kullanımı.
Form Based Authentication.
Bio Authentication
41. BGA | CEH
@BGASecurity
Kimlik Doğrulama
Bir sisteme girişte kimlik tespiti
Bir sonraki adım authorization
Sistemlere yapılacak yetkisiz girişleri engelleme amaçlıdır
Ortama göre çeşitleri vardır
Pin, otp, sms, iris, parmak izi
42. BGA | CEH
@BGASecurity
Basic Authentication
En düşük seviye güvenlik doğrulamasıdır.
Kullanıcı adı ve parola bilgisi sadece base64 ile şifrelenir.
Kullanım sebebi: Bir çok platform tarafından destekleniyor olması.
Kullanıcı ağını dinleyen saldırgan rahatlıkla kullanıcı adı ve parola
bilgilerini elde edebilir.
SSL/TLS kullanımı ile güvenli hale getirilebilir.
44. BGA | CEH
@BGASecurity
Digest Authentication
Kullanıcı adı ve şifre ağ üzerinden taşınmaz.
Sadece bu ikilinin hash değeri taşınır.
45. BGA | CEH
@BGASecurity
Digest Authentication-II
Basic Authentication ‘dan daha güvenlidir.
Active Directory ile beraber çalır.
IE 5.0 ve üzerin platformlarda çalışır.
LDAP ,IMAP, POP3 ve SMTP protokolleri ile sıkça kullanılır.
Tek yönlü(Simetrik) şifreleme kullanır, şifrelenmiş bilgiler Active
Directory veritabanında tutulur(NTDS.DIT)
46. BGA | CEH
@BGASecurity
Windows Integrated Authentication
Kullanıcı sisteme sadece bir defa giriş yapması yeterlidir.
En sık kullanıma örnek Active Directory ve Domain yapılarıdır.Sadece
MS platformları tarafından desteklenir.
Erişeceği kaynaklar için tekrardan kullanıcı adı veya parola girmez.
Güvenilir kimlik doğrulama yöntemlerindendir.
47. BGA | CEH
@BGASecurity
Windows authetication işlemlerinde NTLM veya
Kerberos kullanır.
Sistemlerin yapısına göre NTLM ve Kerberos kullanılır.
Sunucu ile istemcinin hangi tip authentication
mekanızması ile konuşacağını Negotiate belirler.
Negotiate Authentication (Kerberos)
50. BGA | CEH
@BGASecurity
Form Based Authentication-II
Ağ üzerinden celartext gider
SSL ile kullanılmalıdır
51. BGA | CEH
@BGASecurity
Güvenli Parola Saklama Yöntemleri
Parola nasıl ve nerede saklanmalı.
Parola saklama araçları ve kullanımları.
PGP
True Crypt
Keepass
52. BGA | CEH
@BGASecurity
Distributed Password Recovery Teknolojisi
Çalışma mantığı nedir.
5 karekterliler 1. makine, 6. karekterliler 2. makine...
Paralel şifre kırma teknolojileri
Cuda Kullanımı
Pyrit
Botnet kullanımı
Elcomsoft aracının kullanımı
53. BGA | CEH
@BGASecurity
Cisco Cihazlarda Parola Güvenliği
Cisco cihazlara erişim türleri.
Konsol erişimi: Fiziksel olarak konsol kablosu(rollover)
yardımı ile olan erişimidir.
Aux Erişimi : Dial-Up erişim.
Telnet erişimi: Telnet protokolü kullanılarak yapılan erişim.
SSH erişimi: SSH protokolü kullanılarak yapılan erişim.
54. BGA | CEH
@BGASecurity
Cisco Ağ Cihazlarında Parola Güvenliği
Cisco cihazların parola kavramları.
Telnet,SSH,Console,Enable Vs.
Cisco parola bilgisini nasıl saklar.
Cisco şifreleri nasıl kırılır.
Alınabilecek önlemler ve iyileştirmeler.
Telnet yerine SSH kullanımı.
55. BGA | CEH
@BGASecurity
Linux Sistemlerde Parola Güvenliği
/etc/passwd ve /etc/shadow önemlidir
/etc/passwd kullanıcı bilgileri
/etc/shadow kullanıcı parolalarını içerir
Shadow dosyası sadece root tarafından okunabilir
Shadow dosyasındaki parolalar hashlenmis ve MD5,
sha1, des, blowfish gibi algoritmalarla şifrelenmiştir.
Test için John aracı kullanılabilir
56. BGA | CEH
@BGASecurity
Stegenography (Stegonafi)
Steganografi, eski Yunanca'da "gizlenmiş yazı"
anlamına gelir ve bilgiyi gizleme (şifreleme değil)
bilimine verilen addır. vikipedia
57. BGA | CEH
@BGASecurity
Resim Dosyalarında Veri Saklama
Resim dosyasında çıplak gözle anlaşılacak bir değişiklik olmaz
Boyut ve hash değişikliği
Özel yazılımlar kullanılarak saklanan veri şifrelenebilir
Veriyi geri getirmek için anahtar kullanılır
Anahtara yönelik bruteforce saldırıları düzenlenebilir
60. BGA | CEH
@BGASecurity
Steganografi Algılama
Herhangi bir imajın içerisinde başka dosya saklımı bulmaya yarar.
stegdetect
$ stegbreak -tj dscf0002.jpg
Loaded 1 files... dscf0002.jpg : jsteg(wonderland)
Processed 1 files, found 1 embeddings.
Time: 36 seconds: Cracks: 324123, 8915 c/s
61. BGA | CEH
@BGASecurity
Dosya/Disk Şifreleme
Truecrypt, masaüstünde kullandığım program
Disk şifreleme çeşitleri
Tam(Full) disk şifreleme
Dosya şifreleme
Partition şifreleme
Gizli alan oluşturarak şifreleme
Disk üzerinde şifreleme olduğunu saklama
Gizli servislerin kullandığı yöntem
62. BGA | CEH
@BGASecurity
TrueCrypt
Ücretsiz Disk şifreleme programı
Linux, Windows üzerinde çalışma özelliği
Sertifika, parola kullanımı
64. BGA | CEH
@BGASecurity
TruCrypt Anahtar Desteği
Disk şifreleme için kullanılacak anahtar:
Parola olabilir(12€dfdf_*0$ gibi)
Anahtar dosyası olabilir
65. BGA | CEH
@BGASecurity
BruteForce Saldırıları
Disk şifreleme yazılımlarının temel zaafiyeti parola
kullanılmasıdır
Sertifika kullanıldığı durumlarda çok daha zorlaşır
Kullanılan anahtarı bulmak için şifreleme algoritmasına özel
programlar yazılarak anahtar elde edilmeye çalışılır
66. BGA | CEH
@BGASecurity
OTP – One Time Password
Tek kullanımlık şifre
Şifreleme özelliği değildir, şifrenin tek seferlik kullanılmasını sağlar
Şifrelemeyi başka katmanlar(SSL/TLS) sağlamalıdır
Donanımsal ya da yazılımsal olabilir
Türkiye online bankacılık sistemi SMS üzerinden OTP’e geçiş
yaptı
69. BGA | CEH
@BGASecurity
Bölüm İçeriği
Temel Kavramlar
Parola Güvenliğinin Önemi
Parola Saldırı Çeşitleri
Windows/Linux/IOS Parola Güvenliği
Parola Kırma Araçları ve Örnekler
70
70. BGA | CEH
@BGASecurity
Encyption - Şifreleme
Bir verinin sadece gizli anahtarı bilen yetkili kişilerce
okunabilmesi amaçlı gerçekleştirilen format değişikliği olarak
tanımlanabilir.
Şifrelemenin kodlamadan temel farkı sadece ilgili anahtarı
bilen kişiler tarafından orjinaline döndürülebilmesidir.
RSA, AES en sık kullanılan şifreleme algoritmalarındandır.
71
71. BGA | CEH
@BGASecurity
Encoding - Kodlama
Verinin farklı sistem ve ortamlarda dolaşabilmesi için bir
formattan başka bir formata dönüştürülmesi işlemidir.
Kodlama gizlilik sağlamak için kullanılmaz.
En fazla bilinen kodlama örneği Base64 olup aşağıdaki gibi bir
formata sahiptir.
72
Bilgi GuvenligiAKADEMISI QmlsZ2kgR3V2ZW5saWdpIEFLQURFTUlTSQo=
#echo QmlsZ2kgR3V2ZW5saWdpIEFLQURFTUlTSQo=|base64 -dBilgi Guvenligi AKADEMISI
72. BGA | CEH
@BGASecurity
Hashing - Hash Fonksiyonu
Hash fonksiyonları doğrulama amaçlı kullanılır ve matematiksel
olarak geri döndürülemez özelliğe sahiptirler.
Genellikle bir verinin içeriğinin değişmediğinin garantisi olarak
kullanılır veya bir parolanın veritabanında açık bir şekilde
tutulmasını engellemek ve başkaları tarafından (işin sahibi
dahil) bilinmesi istenmediği zaman tercih edilir.
MD5, SHA1 en fazla bilinen hash tipine örnektir.
73
73. BGA | CEH
@BGASecurity
Şifreleme ve Kodlama
Şifreleme ile karıştırılan en önemli konulardan birisi encode ve decoding
Kodlama ve çözümlemede eğer parola elimizde ise ve parolanın kodlanma
şeklini biliyorsak çözülmesi çok kolay olacaktır.
Kodlanmış parola kullanan uygulamalara örnekler:
Base64: en sık kullanılan kodlama şeklidir.
Cisco tye-7 parolaları.
VNC Parolaları
74
74. BGA | CEH
@BGASecurity
Parola Kavramı
Günümüz dünyasının güvenlik altyapısının dayandığı zayıf nokta
Twitter.com ->whois->xzy@twitter.com->webmail->Username->Password
Çoklu Kimlik doğrulama ile bu güvensizlik aşılmaya çalışılmaktadır
Parola mı Şifre mi?
75. BGA | CEH
@BGASecurity
Parola ve Şifre Karmaşası
Parola ve şifre sık sık birbiri yerine kullanılan ve karıştırılan iki farklı kavramdır.
Parola: Sadece sizin tarafınızdan bilinen ve özel bilgilere erişim için kullanılan gizli
karekterler dizgisidir
Şifre: Herhangi bir bilginin çeşitli algoritmalar kullanılarak anahtarı bilmeyenler
tarafından okunamaycak, çözülemeyecek hale getirilmiş halidir.
Parola ve şifre arasındaki temel farklar:
Parolalar genellikle anlamlı, okunabilir karekterlerden oluşur
Şifreler genellikle ikili dosya türünde saklanır
Şifre sayısal, parola sözel anlam içerir
Sistemlere bağlanırkn kullandığımız anahtarlar parola olmaktadır.
76. BGA | CEH
@BGASecurity
Parola Çeşitleri
Tek Tip karekter içeren Parolalar
Asfendi
12390823
#$%&/
Karmaşık Parola Tipleri
Asfe123di45
12%+&alibaba
3m3ls4y1n
Passphrase
Ben senin beni s3v3b1lme 1ht1malini
77
77. BGA | CEH
@BGASecurity
Parola Ele Geçirme Denemeleri
Parolayı ele geçirme amaçlı kullanılan 4 farklı yöntem vardır.
Bunlar aşağıdaki gibi listelenebilir.
Aktif Çevrimiçi Saldırılar
Pasif Çevrimiçi Saldırılar
Çevrimdışı Saldırılar
Teknik olmayan saldırılar
78. BGA | CEH
@BGASecurity
Pasif Online Ataklar
Man-in-the-middle tarzı atakta ortam ve hedef bilgisayarlardaki trafik dinlenir ve
parola yakalanmaya çalışılır.
Bu saldırı türünde sniffing araçları da kullanılır.
Sniffing tarzı atak ise aynı ağ üzerinde bağlı olunması ve sistemde hub gibi bir
network aracı kullanılması durumunda etkilidir.
Çünkü hub bir paketi bütün portlara gönderir bu sayede tüm LAN, paketi görebilir.
Switch, bridge gibi araçlar kullanılıyorsa, bu araçlar sadece hedef porta
gönderilecek şekilde filtreleme yapar ve sniffing burada etkili olmaz.
ARP poisining hedefe, sistemi gateway gibi gösterip araya girilebilir.
79
79. BGA | CEH
@BGASecurity
Aktif Online Ataklar
Web sunuculara, mail sunuculara yönelik ataklar
Saldırgan hedef bulur
Hedef parola denemelerine başlar
Avantajı
Kötü parola politikalarında işe yarar
Dezavantajı
İyi seçilmiş parolalarda işe yaramaz
Hesap kitleme riski
Hedef sisteme DoS etkisi oluşturma (çok fazla deneme sonrası)
Yavaş bağlantılarda parola deneme süreleri de uzar
80
80. BGA | CEH
@BGASecurity
Aktif Online Parola Saldırı Öncesi
Aktif online parola saldırısı
gerçekleştirebilmek için
öncelikle hedef sistemin ilgili
portunun açık olması gerekir
telnet, ftp, ssh, smtp, pop3, www
v.s
Nmap kullanarak portun açık olup
olmadığı test edilmelidir.
81. BGA | CEH
@BGASecurity
Aktif Online Parola Kırma Araçları
Açık kaynak kodlu ve ticari çeşitli araçlar
Windows/Linux desteği
Medusa
Hydra
Brutessh
Brutus
Bruter
Webslayer
Ncrack
Metasploit Aux Module
82
87. BGA | CEH
@BGASecurity
HTML Form Brute Force
HTML form kimlik doğrulama testleri
klasik protokol testlerinden biraz daha
farklıdır.
Bunun temel nedeni her html form
alanındaki değerlerin farklı olarak
seçilebilmesidir.
Bruter yazılımı kullanılarak değişken
html form auth. Sitelerine yönelik
parola denemeleri gerçekleştirilebilir.
88
90. BGA | CEH
@BGASecurity
Metasploit Aux – Brut Force
Metasploit Aux modülleri kullanılarak da aktif online parola
testleri gerçekleştirilebilir.
Bunun için metasploit üzerinde Aux yardımcı modülleri
search özelliği kullanılarak çağrılabilir.
91. BGA | CEH
@BGASecurity
Offline Ataklar
Öncelikle parolanın şifreli/hasli hali ele geçirilmelidir
Kablosuz ağlarda paket kaydederek
MITM saldırısında paket kaydederek
SQL injectionda veritabanından
Windows bellek üzerinden
Sonra çeşitli programlarla offline denemeler yapılır
WEP/WPA Kırma
UNIX/Linux/Windows sistemlerin elde edilmiş parolalarının kırılması
Ağ ve güvenlik cihazlarının tuzlu hashli parolaları.
92. BGA | CEH
@BGASecurity
Hash/Şifreleme Tipinin Belirlenmesi
Belirlemenin kesin yollar bulunmamakla birlikte bazı tanımlamalar
yaparak(hash uzunluğu, kullanılan karekter dizgisi vs) tahmin edilebilir.
Hash tipini otomatik belirlemek için https://hash-
identifier.googlecode.com/files/Hash_ID_v1.1.py
Adresinden elde edilecek script kullanılabilir.
94. BGA | CEH
@BGASecurity
Internet Üzerinden Hash Arama
Elde edilen hash değeri kırma çalışmalarından önce Google ve benzeri
arama motorları kullanılarak parolanın açık hali bulunmaya çalışılır.
Eğer daha önce birileri tarafından kullanıldıysa ve bir forum/site üzerinde
paylaşıldıysa Google rahatlıkla parolanın hash halini bulacaktır.
Bunun için findmyhash programı kullanılabilir.
95. BGA | CEH
@BGASecurity
Offline Atak Tipleri
Sözlük
saldırıları
Brute force
saldırılar
Hibrid
saldırılar
Rainbow
tablo
kullanımıyla
yapılan
saldırılar
96. BGA | CEH
@BGASecurity
Sözlük Saldırıları
Ortak parola kullanımından kaynaklanır
Sözlüklerden oluşan bir parola veritabanı oluşturulur
Her bir sözcük parola olarak denenir
Avantajı
Parola basitse çözüme hızlı ulaşılır
Dezavantajı
Kendi dilinde sözlük oluşturma zorluğu
Parola basit değilse bulunamaz
97. BGA | CEH
@BGASecurity
Sözlük Oluşturma
Her ülkenin, dilin, kültürün ortak kullandığı sözcükler farklıdır
Kendi sözlüğümüzü nasıl oluşturabiliriz?
Legal olmayan yol
Internet üzerinden yayınlanmış Türk sitelerine ait
veritabanlarından(300.000 user/pass bilgisi)
Legal Yoldan
Arama motorları, vikipedia gibi yerlerden
http://www.skullsecurity.org/wiki/index.php/Passwords
100. BGA | CEH
@BGASecurity
İstenilen Özelliklerde Wordlist Oluşturma
İstenilen özelliklerde sözlük listesi (wordlist- denenecek parola
listesi)dosyası oluşturmak amaçlı Crunch yazılımı kullanılabilir.
101. BGA | CEH
@BGASecurity
Brute Force Ataklar
Belirli bir aralıktaki tüm olasılıkların denenmesi
Çok başarılı bir atak türü değildir
Brute force yerine rainbowtable atakları tercih
edilmeli.
102. BGA | CEH
@BGASecurity
Rainbow Table Atakları
Pre computed hash mantığı
Bazı parolalar hash olarak yakalanabilir
/etc/shadow, Windows parolaları vs
Bu tip offline ataklarda yapılacak klasik işlem
Sözlük saldırısı için
İlk sözcüğü al
Md5/sha1 hesapla
Parola olarak dene, yanlışsa bir sonrakine geç
Bunun yerine önceden hash değerleri alınmış sözlükler ya da tüm
olasılık değerleri kullanılabilir.
107. BGA | CEH
@BGASecurity
John The Ripper
UNIX tabanlı en gelişmiş parola kırma aracı
Windows versiyonu da mevcuttur
Linux parola+hash tipini tanıyıp kırabilen iki üç araçtan biri
Dağıtık yapıda çalıştırılabilir
40’dan fazla hash ve şifre tipini tanır
“support for over 40 of additional hash and cipher types (including
popular ones such as NTLM, raw MD5, etc.), ”
112. BGA | CEH
@BGASecurity
HtAccess Parolalarını Kırma
Htaccess:Apache kullanılan web sunucularda dizin koruma
Htaccess
Htpasswd ile username/password oluşturulur
Parola uzunluğu max 8 karakter!
8 karakterden uzun parolalar kesilir.
root@cybosec# john /tmp/htpasswd -w:/root/bt4-password.txt
Loaded 1 password hash (Traditional DES [128/128 BS SSE2])
zorparol (bga)
guesses: 1 time: 0:00:00:01 100.00% (ETA: Sun Nov 28 11:25:04 2010) c/s:
1301K trying: zzttdai - zorparol
113. BGA | CEH
@BGASecurity
İşletim Sistemleri Parola Güvenliği
Günümüz modern işletim sistemlerinin hepsi
güçlü(!) parola saklama özelliğine sahiptir.
115. BGA | CEH
@BGASecurity
Windows Parola Resetleme
Amaç varolan parolayı bulma değil, sisteme giriş için
yeni parola belirlemedir.
Araçlar : UBCD4Win, Winntpasswd
116. BGA | CEH
@BGASecurity
Windows Parola Kırma Araçları:OphCrack
Ücretsiz
Rainbow tabanlı
LM ve NTLM hashlerini kırabilir
Linux/Windows/Mac Os X (Linux Live CD)
Brute force desteği
117. BGA | CEH
@BGASecurity
Parola Hash Değeri ile Sistemlere Erişim
Pass The Hash kullanarak hedef sisteme ait parolanin
hash değeri biliniyorsa parola bilgisine ihtiyaç
duyulmadan login olunabilir..
120
120. BGA | CEH
@BGASecurity
Linux Sistemler Parola Güvenliği
UNIX/Linux sistemlerde kullanıcıların parola bilgileri
/etc/shadow ya da /etc/master.passwd gibi dosyalarda
şifrelenmiş olarak saklanır
Şifreleme için genelde kullanılan yöntem Md5 olmakla
birlikte bazı dağıtımlar SHA256/512 kullanır.
Parola saldırılarını zorlaştırma için “salt” kullanılır
msf> cat /etc/shadow
root:$6$30vMO3ft$hnetlEm6s5Dthxo.kJ9TLPuU781lDVlwtnl1TUX23Kd4S7I01aMODYBk
4k.MsP48gBYTQsKmmjL/b4qlxZ9WF0:16170:0:99999:7:::
daemon:*:15772:0:99999:7:::
bin:*:15772:0:99999:7:::
sys:*:15772:0:99999:7:::
122. BGA | CEH
@BGASecurity
/etc/shadow tipi parola olusturma
/etc/shadow dosyasinda sifreli bir sekilde saklanan kullanici
parolasının oluşturulması adımları;
kullanıcı parolayı girer
bu parola bir salt değerle karıştırılır ve tek yönlü olacak şekilde
şifrelenir(Linux sistemler genelde md5 kullanır)
-bu şifreli değer /etc/shadow dosyasına yazılır.
123. BGA | CEH
@BGASecurity
/etc/shadow tipi parola olusturma-II
shadow dosyasi içeriği
huzeyfe:$1$47JagHAu$6HvvYMo4maDHzlTGdB6WT/:13465:0:9
9999:7::
kullanici isminden sonraki ilk alan şifrelenmiş(?) parolayi
gösteriyor.
Bu alandaki 2. ve 3. $ isaretleri arasindaki alan salt degeri
belirtir.
# openssl passwd -1 -salt 47JagHAu test123
$1$47JagHAu$6HvvYMo4maDHzlTGdB6WT/
128. BGA | CEH
@BGASecurity
Cisco Enable Parolası
Cisco enable parolası kaydedilirken Linux sistemlerdekine benzer mantık
işler
Bunun sebebi Cisco IOS’un FreeBSD şifreleme kütüphanesini
kullanmasıdır
Router(config)#enable secret HL_R12
Router#sh run | include enable secret
5 $1$RK5L$05G045n5XVlENtyo04PBT1
Router#sh run | include enable secret
Router#sh run | include password (Cisco Type 7)
John the ripper kullanarak kırılabilir
129. BGA | CEH
@BGASecurity
Cain & Abel
Windows tabanlı parola kırma ve network güvenliği test aracı
Parola Güvenliği Testleri için;
Rainbow table desteği
Dictionary Password crack desteği
Bruteforce
Kriptoanaliz
WEP/WPA Crack desteği
130. BGA | CEH
@BGASecurity
Cain Tarafından Desteklenen Şifreleme Tipleri
Sık kullanılan
şifreleme
yöntemlerini
destekler...
132. BGA | CEH
@BGASecurity
Keylogger Kavramı
Nedir ?
Nasıl çalışır ?
Çeşitleri ?
Yazılım tabalı.
Donanım tabanlı.
Engelleme yöntemleri ?
Antilogger yazılımları
133. BGA | CEH
@BGASecurity
Yazılım Tabanlı Keylogger’ lar
Nedir ?
Nasıl çalışır ?
Hangi bilgilere erişebilir
Tüm klavye girişlerini kaydetme.
Ekran görüntüsü yakalama.
Alınan bilgileri mail yolu ile sahibine iletebilme.
Nasıl tespit edilir ?
135. BGA | CEH
@BGASecurity
Donanım Tabanlı Keylogger’ lar
Nedir ?
Nasıl çalışır ?
Hangi bilgilere erişebilir
Tüm klavye girişlerini kaydetme.
Ekran görüntüsü yakalama.
Alınan bilgileri mail yolu ile sahibine iletebilme.
136. BGA | CEH
@BGASecurity
Keylogger’ lara Karşı Alınacak Önlemler
Etkin içerik ve sınır güvenliği.
Etkin client güvenlik politikaları.
Antivirus yazılımları
Uygula ve İşletim sistemi patch yönetimi.
Yerel ağ güvenliği
Anormal trafik tiplerinin tespiti.
Yabancı kullanıcıların ve kurum çalışanların bir güvenli şekilde
yerel ağa dahil edilmesi ve erişimi
(NAC çözümleri)
140. BGA | CEH
@BGASecurity
Fiziksel Zafiyetler
Kurbanın klavye hareketlerini gözlemlere parola tahmini.
Alınabilecek önlemler
Biometrik kimlik doğrulama
sistemleri.
▪ Parmak izi tanıma.
▪ Retina tanıma.
▪ Yüz tanıma sistemleri vs.
Kullanıcıları bilgi güvenliği konusunda bilinçlendirme.
Vs vs.
142. BGA | CEH
@BGASecurity
Bilgi Güvenliği Bileşenleri
Erişilebilirlik olmadan güvenlikten söz edilemez!
En güvenli sistem fişi çekilmiş sistemdir!
AvailabilityIntegrity
Confidentiality
Integrity Availability
143. BGA | CEH
@BGASecurity
Bilinmesi Gerekenler
Gelen DDOS saldırısı sizin sahip olduğunuz bantgenişliğinden fazlaysa
yapılabilecek çok şey yok!
DDOS saldırılarının büyük çoğunluğu bantgenişliği taşırma şeklinde
gerçekleşmez!
Bazı saldırı tiplerinde karşı tarafın gönderim hızı düşürülebilir
Gürcistan DDOS saldırısı
200-800 Mbps arası
144. BGA | CEH
@BGASecurity
Genel Kavramlar
DOS(Denial Of Service)
DDOS(Distributed Denial Of Service)
Zombi
BotNet(Robot Networks)
IP Spoofing
FastFlux networks
SYN, FIN, ACK, PUSH ...
Flood
RBN(Russian Business Network)
DOS/DDOS
145. BGA | CEH
@BGASecurity
DOS
DOS(Denial Of Service) = sistemleri çalışamaz hale getirmek için yapılan
saldırı tipi
Sadece internet üzerinden gerçekleştirilmez
Yerel ağlarda DoS
Kablosuz ağlarda DoS
Genellikle bir ya da birkaç farklı kaynaktan gerçekleştirilir
Bazı saldırılar özünde DoS, sonuçlarına göre DDoS’tur
Tek bir sistemden yapılan spoof edilmiş IP kullanılan SYN flood saldırıları gibi
DoS saldırılarını engellemek DDoS saldırılarına göre daha kolaydır
146. BGA | CEH
@BGASecurity
DDoS
DDOS(Distrubuted Denial of Service ) =Dağıtık Servis
Engelleme
Sonuçları DoS saldırı tipine göre daha etkilidir
Binlerce, yüz binlerce köle(zombi) sistem kullanılarak
gerçekleştirilir
Genellikle sahte IP adresleri kullanılır
BotNet’ler kullanılır
Saldırgan kendini gizler
148. BGA | CEH
@BGASecurity
DrDoS
• Bant genişliği
yüksek olan
sistemler reflektor
olarak kullanılarak
DDoS saldırısı
gerçekleştirilebilir.
• Bu saldırı tipine en
iyi örnek Amplified
DNS DoS
saldırısıdır.
149. BGA | CEH
@BGASecurity
Malware
Kötücül yazılım
Bilişim sistemlerine yüklenerek sistemi kötü amaçlı kullanımını
sağlayan yazılım türü
Malware bulaşan sistem zombi haline dönüşerek sahibinin
isteklerini yerine getirmek için çalışır
Spam gönderimi, ddos saldırısı, reklam
tıklamaları vs gibi amaçlarla kullanılırlar.
150. BGA | CEH
@BGASecurity
Exploit
Bir zaafiyeti kötüye kullanarak sisteme izinsiz erişim yetkisi veren
program/scriptlerdir
Sistemlerdeki zaafiyetler exploit edilerek zararlı yazılımlar yüklenebilir
Sistemlerdeki zaafiyetler exploit edilerek DoS yapılabilir
154. BGA | CEH
@BGASecurity
Zombi/(ro)BOT
Zombi: Emir kulu
Çeşitli açıklıklardan faydalanılarak sistemlerine sızılmış ve arka kapı
yerleştirilmiş sistemler
Temel sebebi: Windows yamalarının eksikliği
roBOT = Uzaktan yönlendirilebilir sistemler
Zombi
Dünyada milyonlarca vardır
Internet üzerinde bazı illegal sitelerde BotNet satış işlemleri
gerçekleştirilmektedir.
156. BGA | CEH
@BGASecurity
Türkiye BotNet Piyasası
Asıl piyasaya
internet
üzerinden
ulaşmak pek
mümkün değil.
Türkiye dünya
BotNet
piyasasında
önemli yere
sahiptir.
157. BGA | CEH
@BGASecurity
Zombi Olmamak İçin Antivirüs Yeterli midir?
Internette satışa sunulan
Exploit kitleri (Botnet
oluşturma araçları) için
kullanılan sistemler antivirüs
programları tarafından
tanınmaz.
Antivirüs sistemleri güncel
olmalı ama tek başlarına
yeterli değildir.
158. BGA | CEH
@BGASecurity
FUD (Fully Undetectable)
Geliştirilen kötücül yazılımların antivirüs programları
tarafından yakalanmaması anlamına gelir.
159. BGA | CEH
@BGASecurity
(ro)BOTNET(works)
Zombi ve roBOTlardan oluşan yıkım orduları!
Uzaktan yönetilebilirler
Çeşitli amaçlarla kullanılırlar
Genellikle yaması geçilmemiş Windows sistemler ve güncel
antivirüs kullanmayan son kullanıcı bilgisayarlarından oluşur
Merkezi olarak yönetilirler
160. BGA | CEH
@BGASecurity
BotNet Kullanım Amaçları
Yeraltı siber ekonomisinin en güçlü
kazanç kapısı
SPAM amaçlı kullanılır
Google reklamlarından para kazanma
amaçlı
Google Adword’de öne çıkma veya bir
firmayı geri düşürme amaçlı kullanılabilir
Anket manipülasyonu
DDoS yapmak için kullanılabilir
Bilgi çalma amaçlı kullanılabilir
Yeni malware yayma amaçlı
161. BGA | CEH
@BGASecurity
BotNet Yönetim Sistemleri
2007 yılına kadar BotNet sistemlerin yönetimi büyük çoğunlukla IRC üzerinden
gerçekleştirilirdi
2007 itibariyle IRC yerine HTTP, HTTPS, P2P üzerinden yönetilen BotNet’lere sık
rastlanılmaktadır
Neden?
IRC üzerinden yönetilen BotNet
kolaylıkla farkedilip devre
dışı bırakılabilir.
Kurumsal şirketlerde IRC portuna
erişim güvenlik sistemleri tarafından engellenmiştir.
Twitter üzerinden yönetilen Botnett örrneği
163. BGA | CEH
@BGASecurity
BotNet’e Üye Sistemleri Belirleme
Bir sistemin BotNet’e üye olduğu(zombi) nasıl anlaşılır?
Anormal trafik davranışları
SPAM
DDoS
Belirli DNS adreslerine gönderilen istekler
Zeus Tracker
Suç amaçlı kullanılan botnet yönetim IP adreslerine yapılan
bağlantılar
Russian Business Network
164. BGA | CEH
@BGASecurity
DDoS Saldırılarında Amaç
Sistemlere sızma girişimi değildir!!
Bilgisayar sistemlerini ve bunlara ulaşım yollarını işlevsiz
kılmak
Web sitelerinin ,
E-postaların, telefon
sistemlerinin çalışmaması
Para kazancı
167. BGA | CEH
@BGASecurity
Eski Yöntemler
DDoS saldırıları en çok 2000’li yıllarda medyanın dikkatini çekmiştir
Amazon
Ebay
Yahoo
Root Dns saldırıları
Günümüzdeki DDoS kaynaklarının çoğu eski tip DDoS ataklarını ve
araçlarını anlatır
Günümüzde eski tip yöntem, araç kullanan DDoS saldırılarına rastlamak
çok zor
168. BGA | CEH
@BGASecurity
Smurf atağı
Tek bir paket gönderilerek milyonlarca cevap dönülmesi sağlanabilir(di)
ICMP ve UDP Paketleri Broadcast olarak gönderilebilir
169. BGA | CEH
@BGASecurity
Smurf Atağı Artık Çalışmaz. Neden ?
Tüm router ve işletim sistemleri default olarak
broadcaste gelen ICMP paketlerine cevap vermez!
root@seclabs:~# sysctl net.ipv4.icmp_echo_ignore_broadcasts
net.ipv4.icmp_echo_ignore_broadcasts = 1
170. BGA | CEH
@BGASecurity
“Tear Drop” DoS Saldırı Yöntemi
Saldırgan parçalanmış paket gönderir ve paketlerin offset
değerleriyle oynar
Paketi alan hedef sistem birleştirme işlemini düzgün
yapamadığı için reboot eder
Günümüzde işlemez bir yöntemdir!
Tüm işletim sistemleri gerekli yamaları çıkarmıştır
171. BGA | CEH
@BGASecurity
“Land Attack” DoS Saldırı Yöntemi
Hedef sisteme kaynak IP ve hedef IP adresi aynı olan paketler(hedef
sistemin IP adresi kayna, hedef sistemin IP adresi hedef) gönderilerek
sistemin çakılması sağlanır
Günümüzde çalışmaz!
Tüm işletim sistemleri gerekli yamaları geçmiştir.
173. BGA | CEH
@BGASecurity
Günümüzde Tercih Edilen Yöntemler
Eski araçlarla gerçekleştirilecek DDoS saldırıları
günümüzde çalışmaz!
Yeni Yöntemler
HTTP Get / Flood , DNS DOS, Dns Flood
Amplification DOS saldırıları
BGP Protokolü kullanarak DOS
175. BGA | CEH
@BGASecurity
Yerel Ağlarda DoS
İkinci katman protokollerinden ARP kullanılarak gerçekleştirilir
Tüm sistemler farklı ağlara bağlanmak için gateway’e ihtiyaç duyar
Yerel ağlarda bilgisayarlar arası haberleşme IP adresleri üzerinden
değil MAC adresleri üzerinden gerçekleşir
ARP cacheleri uzaktan değiştirilebilir
Dinamik arp kayıtları için geçerlidir!
ARP cache’i zehirlenerek gateway’e ait MAC adresi farklı
girilebilirse hedef sistemin internet bağlantısı kesilir
176. BGA | CEH
@BGASecurity
ARP DOS
Kurban Olarak bir Host/Network Seçilir
Gateway IP Adresi Öğrenilir.
Host’a/Network’e bozuk ARP-REPLY paketleri
gönderilir.
Gateway 00:00:00:00:02:01 adresinde
Host/Network ile Gateway arasında tüm iletişim
durur!
179. BGA | CEH
@BGASecurity
DHCP DoS
DHCP broadcast çalışan UDP tabanlı bir protokoldür
Bir cümlede hem UDP hem de broadcast kelimeleri geçiyorsa
kesinlikle DoS vardır.
DHCP’de iki türlü DoS yapılır
Varolan DHCP sunucuya DHCP istekleri gönderilerek IP havusu bitirilir
Sahte DHCP sunucusu kurularak ağdaki makinelere gerçek olmayan IP
Adresleri atanır
184. BGA | CEH
@BGASecurity
Etki Seviyesine Göre TCP Flood Saldırıları
Günümüz işletim sistemleri ve ağ tabanlı güvenlik sistemleri
(Firewall/IPS/…) statefull yapıdadır
Stateful yapı: Bağlantı için gelen ilk paket SYN olmalı, gelen ilk
paket SYN ise oturum kurulumunu başlat ve bu oturuma ait diğer
paketlere de izin ver.
Bir sisteme gönderilecek FIN, ACK, PUSH bayraklı paketler(SYN
harici) hedef sistem tarafından kabul edilmeyecektir.
185. BGA | CEH
@BGASecurity
Uygulama|TCP Bayrakları ve Oturum
Hedef sisteme hping3 aracı kullanılarak SYN bayraklı paket gönderimi
Hedef sistemde netstat –ant komutuyla socket durumları incelenerek etkisi
görülmeli
Hedef sisteme hping3 aracı kullanılarak FIN bayraklı paket gönderimi
Hedef sistemde netstat –ant komutuyla socket durumları incelenerek etkisi
görülmeli
Hedef sisteme hping3 aracı kullanılarak ACK bayraklı paket gönderimi
Hedef sistemde netstat –ant komutuyla socket durumları incelenerek etkisi
görülmeli
186. BGA | CEH
@BGASecurity
FIN Flood Saldırıları
Hedef sisteme sahte ip adreslerinden FIN paketleri gönderme
Hedef sistem önünde Firewall/IPS gibi statefull çalışan bir
sistem varsa FIN paketlerine karşı cevap dönmeyecektir
Veya RST paketi dönecektir (açık port, kapalı port seçimine göre)
FIN
187. BGA | CEH
@BGASecurity
ACK Flood Saldırıları
Hedef sisteme sahte ip adreslerinden ACK paketleri gönderme
Hedef sistem önünde Firewall/IPS gibi statefull çalışan bir sistem
varsa ACK paketlerine karşı cevap dönmeyecektir
Veya RST paketi dönecektir (açık port, kapalı port seçimine göre)
188. BGA | CEH
@BGASecurity
Syn Flood DDoS Saldırıları
TCP flood saldırılarında en etkili saldırı tipidir
Hedef sistemin kaynaklarını tüketmek amaçlı gerçekleştirilir
Internet dünyasında en sık gerçekleştirilen DDoS saldırı tipi
Gerekli önlemler alınmamışsa 2Mb hat ile 100Mb hatta sahip olan
sistemler devre dışı bırakılabilir.
Saldırı yapması kadar korunması da kolaydır.
Genellikle sahte IP adresleri kullanılarak gerçekleştirilir.
189. BGA | CEH
@BGASecurity
Syn Flood Sorunu Kaynağı
Problem:
SYN paketini alan sistemin SYN-ACK paketi gönderdikten sonra paketi
gönderenin gerçek olup olmadığını onaylamadan sistemden kaynak
ayırması.
Çözüm:
Paketi gönderen IP adresinin gerçek olduğu belirlenmeden sistemden
kaynak ayırılmamalı!
190. BGA | CEH
@BGASecurity
SYN
TCP’e ait bir özelliktir
8 TCP bayrağından biri
TCP oturumlarını başlatmak için kullanılan TCP bayrağı
Sadece oturumun başlangıç aşamasında görülür
SYN paketleri veri taşıyamaz
İstisna durumlar anormallik olarak adlandırılır
Hping –p 8 0-S localhost –d 100 –E data komutuyla SYN bayraklı TCP
paketine veri taşıttırılabilir.
191. BGA | CEH
@BGASecurity
TCP SYN Paketi
Ortalama 60 byte
Gönderilen her SYN paketi için hedef sistemACK-SYN
paketi üretecektir.
193. BGA | CEH
@BGASecurity
SYN Flood Saldırısında SYN Paketleri
Bir SYN paketi ortalama 65 Byte
8Mb hat sahibi bir kullanıcı saniyede 16.000 SYN paketi üretebilir.
Hat kapasitesinde upload hızı önemlidir
120 saniye bekler
194. BGA | CEH
@BGASecurity
SynFlood
Hedef sisteme kapasitesinin üzerinde SYN paketi göndererek yeni paket
alamamasını sağlamaktır
En sık yapılan DDoS saldırı tipidir
İlk olarak 1994 yılında “Firewalls and Internet Security “ kitabında teorik
olarak bahsi geçmiştir
İlk Synflood DDoS saldırısı 1996 yılında gerçekleştirilmiştir
2011 yılında henüz bu saldırıya %100 engel olacak standart bir çözüm
geliştirilememiştir.
195. BGA | CEH
@BGASecurity
Nasıl Gerçekleştirilir?
Syn Flood saldırısı basitce açık bir porta hedef sistemin
kapasitesinden fazla gönderilecek SYN paketleriyle
gerçekleştirilir.
Buradaki “kapasite” tanımı önemlidir.
Teknik olarak bu kapasiteye Backlog Queue denilmektedir.
İşletim sistemlerinde Backlog queue değeri değiştirilebilir
Arttırılabilir, azaltılabilir
Saldırıyı yapan kendini gizlemek için gerçek IP adresi kullanmaz
196. BGA | CEH
@BGASecurity
Syn Flood Ne Kadar Kolaydır?
Tahmin edildiğinden daha çok!
Örnek:
Backlog queue değeri 1000 olan sisteme 1000 adet SYN paketi
göndererek servis veremez duruma getirilebilir.
1000 adet SYN paketi=1000*60byte=60.000 byte=468Kpbs
Bu değer günümüzde çoğu ADSL kullanıcısının sahip olduğu hat
kapasitesine yakındır.
197. BGA | CEH
@BGASecurity
Syn Flood Araçları
Netstress
Juno
Hping
Windows tabanlı araçlar
BotNet yönetim sistemleri
198. BGA | CEH
@BGASecurity
SynFlood Örneği
Amaç:Hedef sisteme tamamlanmamış binlerce TCP
SYN paketi gönderip servis verememesinin
sağlanması
Kullanılan araç: Hping
199. BGA | CEH
@BGASecurity
Syn Flood:Gerçek IP Adresleri Kullanarak
Gerçek ip adresinden gerçekleştirilecek syn flood
saldırıları:
Tek bir ip adresinden
▪ Rahatlıkla engellenebilir
Botnet’e dahil tüm ip adreslerinden
SYN
200. BGA | CEH
@BGASecurity
Gerçek IP Syn Flood Analizi
Gerçek ip adresleri kullanılarak gerçekleştirilecek SYN flood
saldırısının etki seviyesi düşük olacaktır.
Neden?
Gönderilen her gerçek SYN paketi sonrası gelecek SYN/ACK cevabına
işletim sistemi kızarak(kendisi göndermedi, özel bir araç kullanılarak
gönderildi SYN paketi) RST paketi dönecektir.
Syn flood yapılan sistemde RST paketi alındığında oturum tablosundan
ilgili ip adresine ait bağlantılar silinecektir.
201. BGA | CEH
@BGASecurity
Syn Flood:Sahte IP Adresleri Kullanarak
Kaynak IP adresi seçilen makine açıksa gelen SYN+ACK paketine
RST cevabı dönecektir
Ciddi saldırılarda kaynak ip adresleri canlı olmayan sistemler
seçilmeli!
Sahte IP adresi
202. BGA | CEH
@BGASecurity
SynFlood DDoS Saldırıları Nasıl Anlaşılır?
Temel mantık:
Normalin üzerinden SYN paketi geliyorsa veya normalin üzerinde SYN_RECV
durumu gözüküyorsa SYN Flood olma ihtimali vardır
Linux/Windows sistemlerde netstat komutuyla SYN flood saldırısı
anlaşılabilir
Linux için netstat komutu:
Netstat –antgrep SYN_
Windows için netstat komutu:
Netstat –an –p tcp |find “SYN_RCVD”
205. BGA | CEH
@BGASecurity
SynFlood Saldırılarını Engelleme
Syn Flood Saldırısı gerçekleştirme çok kolaydır
Syn flood saldırılarını engellemek kolaydır
Syn flood saldırıları için tüm dünya iki temel çözümü kullanır
Syn cookie
Syn proxy
Bu iki çözüm haricinde endüstri standartı haline gelmiş başka
çözüm bulunmamaktadır
Farklı adlandırmalar kullanılabilir(syn authentication gibi)
206. BGA | CEH
@BGASecurity
Klasik TCP Bağlantısı
Normal TCP bağlantılarında gelen SYN bayraklı pakete karşılık ACK
paketi ve SYN paketi gönderilir.
Gönderilen ikinci(sunucunun gönderdiği) SYN paketinde ISN değeri
random olarak atanır ve son gelecek ACK paketindeki sıra
numarasının bizim gönderdiğimizden bir fazla olması beklenir.
Son paket gelene kadar da sistemden bu bağlantı için bir kaynak
ayrılır(backlog queue)
Eğer SYN paketine dönen ACK cevabı ilk syn paketininin ISN+1 değilse paket
kabul edilmez.
207. BGA | CEH
@BGASecurity
SynCookie Aktifken TCP Bağlantısı
Syncookie aktif edilmiş bir sistemde gelen SYN paketi için
sistemden bir kaynak ayrılmaz
SYN paketine dönecek cevaptaki ISN numarası özel olarak
hesaplanır (kaynak.ip+kaynak.port+.hedef.ip+hedef.port+x değeri)
ve hedefe gönderilir
Hedef son paket olan ACK’i gönderdiğinde ISN hesaplama işlemi
tekrarlanır ve eğer ISN numarası uygunsa bağlantı kurulur
Değilse bağlantı iptal edilir
208. BGA | CEH
@BGASecurity
Syn Cookie Ek Bilgiler
Syncookie bazı sistemlerde belirli SYN paketi değerini aştıktan sonra devreye
girer.
Mesela saniyedeki SYN paketi sayısı
SYN cookie de aradaki güvenlik sistemi SYN/ACK paketinde cookie cevabı döner.
,
Bu cookie değeri ISN'dir.
Cookie değeri nasıl hesaplanır
MD5 hash (source address, port number, destination address, port number, ISN
değeri(SYN packet))
Karşı taraftan gelecek ACK paketindeli onay numarası cookie+1 değilse paketi
çöpe atar.
cookie+1 ise oturum kurulur
210. BGA | CEH
@BGASecurity
Syn Cookie-II
Böylece spoof edilmiş binlerce ip adresinden gelen SYN
paketleri için sistemde bellek tüketilmemiş olacaktır ki bu da
sistemin SYNflood saldırıları esnasında daha dayanıklı
olmasını sağlar.
Syncookie mekanizması backlog queue kullanmadığı için
sistem kaynaklarını daha az kullanır
Syncookie aktif iken hazırlanan özel ISN numarası cookie
olarak adlandırılır.
211. BGA | CEH
@BGASecurity
SynCookie Dezavantajları
Syncookie’de özel hazırlanacak ISN’ler için üretilen random değerler
sistemde matematiksel işlem gücü gerektirdiği için CPU harcar
Eğer saldırının boyutu yüksekse CPU performans problemlerinden
dolayı sistem yine darboğaz yaşar
DDOS Engelleme ürünleri(bazı IPS’ler de ) bu darboğazı aşmak için
sistemde Syncookie özelliği farklı CPU tarafından işletilir
212. BGA | CEH
@BGASecurity
SynCookie Dezavantajları-II
Syncookie özelliği sadece belirli bir sistem için açılamaz.
Ya açıktır ya kapalı
Bu özellik çeşitli IPS sistemlerinde probleme sebep olabilir.
Syncookie uygulamalarından bazıları TCP seçeneklerini
tutmadığı için bazı bağlantılarda sorun yaşatabilir.
213. BGA | CEH
@BGASecurity
SynProxy
SynProxy, adından da anlaşılacağı üzere SYN paketlerine karşı
proxylik yapmaya yarayan bir özelliktir.
Güvenlik duvarlarında ve Syncookie’nin kullanımının sıkıntılı olduğu
durumlarda rahatlıkla kullanılabilir.
Syncookie gibi arkasında korumaya aldığı sistemlere gelecek tüm
SYN paketlerini karşılar ve üçlü el sıkışma tamamlandıktan sonra
paketleri koruduğu sistemlere yönlendirir.
214. BGA | CEH
@BGASecurity
SynProxy Mantığı
Sadece oturum kurulmuş TCP bağlantılarını sunucuya geçir!
SynProxy
Web
site
SYN^30
SYN/ACK ^30
ACKs^5
215. BGA | CEH
@BGASecurity
SynProxy Dezavantajları
Synproxy’de proxylik yapan makine state bilgisi
tuttuğundan yoğun saldırılarda state tablosu şişebilir
Synproxy ya hep açıktır ya da kapalı
Belirli değerin üzerinde SYN paketi gelirse aktif et özelliği
yoktur
216. BGA | CEH
@BGASecurity
Stateless SynProxy
Syncookie ve synproxy özelliklerinin birleştirilmiş hali
Syncookie’nin avantajı olan state tutmama özelliği
Synproxy’nin esnekliği alınarak oluşturulmuştur
En ideal çözüm olarak bilinir.
218. BGA | CEH
@BGASecurity
Syn Flood Engelleme
Synflood engelleme standartı:Syncookie/SynProxy
Linux sistemlerde Syncookie ile yapılabilir
Syncookie STATE tutmaz, state tablosunu kullanmaz
OpenBSD PF Synproxy
En esnek çözüm: ip, port, paket özelliklerine göre aktif edebilme ya
da kapatabilme özelliği
pass in log(all) quick on $ext_if proto tcp to $web_servers port {80
443} flags S/SA synproxy state
(((Loglama sıkıntı çıkarabilir)))
219. BGA | CEH
@BGASecurity
SynFlood Engelleme-II
TCP timeout değerleriyle oynama
Default değerler yüksektir...
Saldırı anında dinamik olarak bu değerlerin 1/10’a düşürülmesi saldırı etkisini azaltacaktır.
Linux için sysctl ile (manuel)
OpenBSD PF için
set timeout {tcp.first 10, tcp.opening 10 tcp.closing 33, tcp.finwait
10, tcp.closed 20} gibi... Ya da
Packet Filter adaptive timeout özelliği!
State tablosu dolmaya başladıkca timeout değerlerini otomatik
azalt!
220. BGA | CEH
@BGASecurity
SynFlood engelleme-III
Rate limiting(bir ip adresinden 500’den fazla istek geldiyse
engellenecekler listesine ekle ve o ip adresine ait oturum
tablosunu boşalt)
OpenBSD Packet Filter
... flags S/SA synproxy state (max-src-conn 500, max-src-conn-rate 100/1,
overload <ddos_host> flush global)
Linux iptables modülleri
-m limit, recent vs
221. BGA | CEH
@BGASecurity
SynFlood engelleme-IV
Beyaz liste, kara liste uygulaması
Daha önce state oluşturmuş, legal trafik geçirmiş ip adresleri
Ülkelerin IP bloklarına göre erişim izni verme
Saldırı anında sadece Türkiye IP’lerine erişim açma
(((IP spoofing kullanıldığı için çoğu zaman işe yaramaz)))
DNS round-robin & TTL değerleriyle oynayarak engelleme
222. BGA | CEH
@BGASecurity
Linux Syncookie dezavantajları
Donanım iyiyse yeterli koruma sağlar
Syncookie CPU’ya yüklendiği için CPU %100’lere vurabilir
Ethernet kartının üreteceği IRQ’lar sistemi zora sokabilir
Sadece kendisine syncookie koruması sağlar
1/0 . Aç - kapa özelliğindedir, çeşitli uygulamalarda
SYNcookie sıkıntı çıkartabilir.
Bir port/host için kapama özelliği yoktur
223. BGA | CEH
@BGASecurity
SynProxy Dezavantajları
SynProxy=State=Ram gereksinimi
State tablosu ciddi saldırılarda çok çabuk dolar
100Mb~=200.000 SYN=200.000 State
▪ 40 saniyede 8.000.000 state = ~5GB ram ...
Tcp timeout değerlerini olabildiğince düşürmek bir çözüm
olabilir
▪ Timeout süresi 5 saniye olursa ?
(((Genel Çözüm: Stateless SynProxy çözümü)))
224. BGA | CEH
@BGASecurity
Rate Limiting Dezavantajları
Akıllı saldırganın en sevdiği koruma yöntemidir
Paket gönderen IP adresinin gerçek olup olmadığı belirlenmeden
gerçekleştirilecek rate limiting ciddi sıkıntılara sebep olabilir
Saldırgan istediği IP adresini rate limiting yapan sisteme engellettirebilir.
Nasıl belirlenir?
Hedef sisteme belirli sayının üzerinde SYN paketi gönderilir
Bir müddet beklendikten sonra bağlantı kurulmaya çalışılır
▪ Hedef sistem cevap dönmüyorsa rate limiting özelliği devreye girmiş ve paket
gönderen tarafı engellemiştir.
225. BGA | CEH
@BGASecurity
ACK, FIN, PUSH Flood Saldırıları
SynFlood’a karşı önlem alınan sistemlerde denenir.
Hedef sisteme ACK, FIN, PUSH bayraklı TCP paketleri
göndererek güvenlik cihazlarının kapasitesiniz zorlama
Diğer saldırı tiplerine göre engellemesi oldukça kolaydır
Etki düzeyi düşüktür
226. BGA | CEH
@BGASecurity
ACK,FIN,PUSH Saldırıları Engelleme
Gelen ilk paketin SYN paketi olma zorunluluğu, oturum
kurulmamış paketleri düşürme
OpenBSD Packet Filter
scrub all
Linux
iptables kuralları